在讨论这个问题,我仔细研究了pkgindoc.sty
埋藏在ltclass.dtx
(docstrip 选项afterpreamble
)中的部分。虽然我理解它是如何工作的(在我看来,它的工作方式很丑陋),但我很好奇是否有人知道它最初的用途是什么(以及它是否在任何地方有文档记录)?(似乎pkgindoc.sty
在正常的 LaTeX 安装过程中不会生成它,而且我从未在任何地方听说过它,包括上述问题的前两个答案。)
以下是相关部分,ltclass.dtx
供参考:
71 序言之后
\@onlypreamble
最后,我们声明一个包,允许在之后使用 上面声明的所有命令\begin{document}
。⟨*afterpreamble⟩ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{pkgindoc} [1994/10/20 v1.1 Package Interface in Document (DPC)] \def\reserved@a#1\do\@classoptionslist#2\do\filec@ntents#3\relax{% \gdef\@preamblecmds{#1#3}} \expandafter\reserved@a\@preamblecmds\relax ⟨/afterpreamble⟩
答案1
它用于允许诸如\usepackage
在文档正文中执行类似操作。LaTeX 项目的成员似乎偶尔会使用它来编写文档(例如,参见这个文件由 Robin Fairbairns 撰写)。但是,我认为没有任何地方有关于它的记录。