当我查看包/类的“更改历史”时,我经常会遗漏更改日期的信息,因为在我看来,只有版本号是不够的:如果我记得我在某个日期之前已经使用过这个包/类(因此仔细查看自该日期以来的更改),我却记不住我上次使用的版本号。
由于\changes
用于更改记录的宏包含日期:
\changes{⟨version number⟩}{⟨date⟩}{⟨change⟩}
我猜除了命令提供的列表中的 ⟨version number⟩s 之外,显示 ⟨date⟩s 应该不是什么难事\PrintChanges
。但即使看过生成的文件后gglo.ist
,.glo
我也不知道该怎么做,所以我的问题是:如何在\PrintChanges
'更改' 中显示日期?
答案1
\changes
内部使用\changes@
定义为
\def\changes@#1#2#3{%
\protected@edef\@tempa{%
\noexpand\glossary{#1\levelchar
\ifx\saved@macroname\@empty
\space\actualchar\generalname
\else
\expandafter\@gobble\saved@macroname
\actualchar
\string\verb\quotechar*\verbatimchar\saved@macroname\verbatimchar
\fi
:\levelchar #3}}%
\@tempa
\endgroup
\@esphack
}
您只需使用#2
插入重新定义它即可\glossary
。例如:
\renewcommand*{\changes@}[3]{%
\protected@edef\@tempa{%
\noexpand\glossary{#1 (#2)\levelchar
\ifx\saved@macroname\@empty
\space\actualchar\generalname
\else
\expandafter\@gobble\saved@macroname
\actualchar
\string\verb\quotechar*\verbatimchar\saved@macroname\verbatimchar
\fi
:\levelchar #3}}%
\@tempa
\endgroup
\@esphack
}