将序言分离到另一个文件

将序言分离到另一个文件

将序言分离到专用文件的最佳做法是什么?

我见过两种变体:

  1. 包:preamble.sty 和\usepackage{preamble}
  2. .tex 文件:preamble.tex 和\input{preamble}

哪一个是优选的?

答案1

我的观点主要是:

添加前导命令功能文档(例如,定义宏)属于包(.sty文件)。

定义前导命令文档(纸张几何形状、页眉、字体选择)属于自定义文档类.cls文件)。您可以使用高级 LaTeX 命令从标准发行类派生自定义类,并将选项传递给它。

风格/课程教程举出两者的例子。


更新2022-03-27 用户 @tush 要求提供参考。我能找到的最接近的参考是适用于课程和包编写者的 LaTex2eLaTeX 项目团队写道:

2.3 它是一个类还是一个包?

当你想在文件中放入一些新的 LaTeX 命令时,要做的第一件事是决定它应该是文档类还是包。经验法则是:

如果命令可以与任何文档类一起使用,则将它们作为一个包;如果不能,则将它们作为一个类。

类有两种主要类型:一种是像articlereport或 这样letter的独立类;另一种是其他类的扩展或变体——例如,proc文档类,它建立在article 文档类之上。因此,一家公司可能有一个本地ownlet类,用于使用自己的带头便笺纸打印信件。这样的类将建立在现有类之上letter,但不能与任何其他文档类一起使用,所以我们有ownlet.cls而不是ownlet.sty

相比之下,该graphics包提供了将图像包含到 LaTeX 文档中的命令。由于这些命令可以用于任何文档类,因此我们有graphics.sty而不是graphics.cls

设置文档外观的命令(如纸张几何形状、页眉、字体选择)似乎更接近案例ownlet而不是graphics案例本身。这就是为什么我认为它们属于类而不是包。

相关内容