我想从 Makefile 控制类选项(例如draft
几何包)showframe
。有没有办法使用 LaTeX 本身来参数化文档,或者我需要使用 Makefile 中的 sed 对文档进行预处理?
答案1
这是我经常使用的东西。
在您的文档中,您执行以下操作:
\providecommand\classopts{}
\expandafter\documentclass\expandafter[\classopts]{article}
这些\expandafter
应该不是必需的,但是,我总是提供它们。
仅\providecommand
当命令不存在时才会添加该命令。因此,您只需事先创建命令,然后就可以在不同的方案之间切换。
然后您可以在 makefile 中执行以下操作:
draft:
pdflatex "\def\classopts{draft}\input{document}"
pdf:
pdflatex document
然后您有两个不同的编译,一个带有草稿,另一个带有常规设置。
我通常用它在编译讲义和演示文稿之间切换beamer
。