dtx 文件和历史记录

dtx 文件和历史记录

DTX文件的命令\changes用于记录变化。

\PrintChanges命令打印更改列表,按数字排序...除非数字大于 10。

为了了解问题所在,我建议您阅读软件包文档中的更改eledmac。您可以看到:

  • v0.1
  • v0.10
  • v0.11
  • ...
  • v0.18
  • v0.2

但是0.2版本应该在v0.1之后。

我尝试了一些技术@(如索引中所示),但无法解决这个问题。

答案1

Makeindex 还支持排序键。 或 的条目按\changes样式文件排序gglo.ist。 有actual char=

\changes{v0.1=v0.001}...
\changes{v0.2=v0.001}...
...
\changes{v0.10=v0.010}...
\changes{v0.123=v0.123}...

\changes如果在驱动程序文件中重新定义,这也可以实现自动化:

\makeatletter
\@ifdefinable{\org@changes@}{%
  \let\org@changes@\changes@
  \@ifdefinable{\my@changes}{%
    \def\my@changes v#1.#2\@nil{%
      \org@changes@{v#1.\six@digits{#2}=v#1.#2}%
    }%
    \newcommand*{\six@digits}[1]{%
      \ifnum#1<100000 0\fi
      \ifnum#1<10000 0\fi
      \ifnum#1<1000 0\fi
      \ifnum#1<100 0\fi
      \two@digits{#1}%
    }%
    \renewcommand*{\changes@}[1]{%
      \my@changes#1\@nil
    }%
  }%
}
\makeatother

然后你可以继续

\changes{v0.1}...
\changes{v0.2}...
\changes{v0.10}...
\changes{v0.123}...

\my@changes需要采用其他编号方案。

答案2

迄今为止最简单的方法是将您的次要版本编号(如有必要,可以回顾)为 v0.01......这意味着只要在下一个主要版本之前没有 100 个次要版本就可以了。

相关内容