我目前正在合作撰写论文,所以我需要处理一份我们所有人共享的 tex 手稿。问题是,由于论文很长,我很容易忽略我的合作者发表评论的地方。目前,我们正在使用或多或少传统的方式来做到这一点:(让合著者成为“X”)
\newcommand{\commentA}[1]{{\color{red} #1 --A}}
为我们完成这项工作。我是否可以在文档开头的某个地方创建一个列表,以追踪使用新定义的命令 \commentA 的所有位置?
答案1
我不确定这有多大用处,但你可以\commentA
在日志文件中列出出现的行号(或任何类似定义的命令)。
\documentclass{article}
\usepackage{xcolor}
\makeatletter
\newcommand{\roytrace}[1]{%
\immediate\write\@auxout{\string\roy@trace{#1}{\the\inputlineno}}%
}
\newcommand\roy@trace[2]{}
\AtEndDocument{%
\renewcommand\roy@trace[2]{\typeout{\expandafter\string\csname #1\endcsname\space used at line #2}}%
}
\newcommand{\commentA}[1]{\roytrace{commentA}\textcolor{red}{#1 --A}}
\begin{document}
Something
Something \commentA{else}
Again
Again \commentA{What?}
\end{document}
请注意,这需要通常的两次传递过程。
控制台将显示
(./royhan.aux
\commentA used at line 20
\commentA used at line 24
)
没有什么是无法通过搜索源头获得的东西。