抱歉,标题措辞不当,但我不知道该如何措辞。
我的问题是这样的:我的 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 将发出警告。