创建“有效页面列表”

创建“有效页面列表”

我正在考虑学习 Latex,以便更轻松地维护我公司的大量手册。其中一个要求是在文档开头有一个“有效页面列表”,其中列出了文档中的每一页以及该页面的修订级别和日期。(请注意,这是我们监管监督的要求,因此不是可选的。)或者,我(真的)想将具有相同修订级别的页面合并为一行,如下例所示。

例如:

PAGE NUMBER      REVISION NUMBER     REVISION DATE
  i - ix              2                03/23/10
   1-1                2                03/23/10
1-2 - 1-10            1                06/15/09
2-1 - 2-19            0                01/31/09 

虽然我搜索过这个网站和 Google,但我还没有找到解决手册这一特定问题的方法。有人能指出如何完成有效页面列表吗?

编辑
为了提供更多背景信息并回应一些评论,这确实是航空业所需的手册。此外,我们通常使用特定于章节的页码来帮助最大限度地减少添加新页面的影响。(我已更新上述示例以反映这一点。)此外,目录、有效页面列表等都在文档的简介部分,并以罗马数字页码开头,以便添加额外的页面不会影响文档的其余部分。

我是一名程序员(在 SO 上非常活跃),所以当我说我正在考虑学习 Latex 时,我并不介意学习宏编程方面,并且很乐意将我的代码回馈给社区。我只是想确定在系统的限制下这是否可行,如果可行,我希望得到更有经验的人的指导,以便走上正确的道路。

答案1

听起来,在更新 TeXbook 时,你必须对分页符保持近乎一致的关注,就像 Knuth 对换行符的关注一样。

然而,由于你确实有事情要追踪,关于每一页,我认为你可能想要\pagerevision{<rev>}为每个分页符使用一个宏,并进行设置,这样页面就不会在没有警告的情况下在其他任何地方分页。你可能还想在那里包含日期,尽管那意味着重复,而且在那里包含完整的预期页码也不是一个糟糕的想法(这样你以后就可以将它与实际页码进行比较)。

你可能至少需要阅读以下这些内容:

  • TeX 如何构建页面:参见 TeXbook 第 15 章和第 23 章

  • LaTeX 的输出例程

  • \addcontentsline,它将向您展示如何存储下次传递文档所需的信息。

答案2

我认为最简单的解决方案是将 latex 文件的编译与外部程序结合起来。我会这样做:

  • 将文件分成不同的文件(您想单独跟踪多少个文件就分成多少个文件),然后将它们合并到主 tex 文件中(include 命令最适合章节,而 input 可以递归使用)。
  • 使用 fancyhdr 包获取包含章节编号的数字。
  • 获取“最后修改日期”,您可以运行外部脚本,或者在 Latex 本身中(看这里),但我认为最好从外部处理它,因为最终您可以从其他修订控制系统(如 git)获取信息。
  • 将日期注释添加到目录中(看这里)。

相关内容