将开始文档之前的所有内容合并到一个包中

将开始文档之前的所有内容合并到一个包中

抱歉,标题措辞不当,但我不知道该如何措辞。

我的问题是这样的:我的 latex 文件中之前有很多东西 \begin{document},大概有 180 行设置命令和使用包。

我想知道我是否可以将该行上方的所有代码放入\begin{document}一个包中并将其导入,这样我就可以节省代码。

谢谢

答案1

你可以写一个类:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{MyProject}[2018/03/10 v1.0 Class for my project]
\LoadClass[<options>]{<class name>}% former: \documentclass[...]{...}

\RequirePackage[<options>]{<package name>}% former: \usepackage[...]{...}

% other stuff from the preamble

\endinput

\documentclass\usepackage需要其他名称,请参见上文。此外,删除\makeatletter/\makeatother对,因为\makeatletter在类和包文件中自动处于活动状态。

然后使用该类:

\documentclass{MyProject}
\begin{document}
  ...
\end{document}

类或包比简单的有优势\input

  • 可以添加选项。
  • LaTeX 支持的一些版本:

    \documentclass{<class>}[2018/03/10]
    \usepackage{<package>}[2018/03/10]
    

    然后,如果类或包比指定的旧,LaTeX 将发出警告。

相关内容