我正在使用 LaTeX 准备简历,主要是为了方便定制。特别是,我希望能够通过更改一些参数从同一输入文件生成不同的输出。
其中一个要求是:必须根据输入参数之一(“dev”/“training”/“generic”)选择特定的文本块。我可以将适合每个参数的文本块放在单独的 .tex 文件中(“dev_summary.tex”、“training_summary.tex”等),并\input
根据参数进行选择。我目前已使用以下方法实现了此目的:
\newcommand{\whoami}[1]{trainer#1}
然后
\input{\whoami{_summary.tex}}
现在,每当我想更改第一个参数时,我只需在新命令行中更改字符串“trainer”。但是,有没有更好的方法可以让我保持此文件不被编辑,而是将此更改作为命令行参数传递?
答案1
有几种方法可以在命令行上设置这些内容。也许最简单的方法是稍微改变你的输入,这样dev_summary.tex
你就有了子目录/文件夹等dev
,trainer
然后dev/summary.tex
然后你的主文件只需要
\input{summary}
它将summary.tex
在您的输入路径中输入第一个,因此命令行
TEXINPUTS=dev: pdflatex mainfile
将输入dev/summary.tex
并
TEXINPUTS=trainer: pdflatex mainfile
将输入trainer/summary.tex
(这假设一个类似 unix 的命令行,在 Windows 上您可能必须使用单独的命令来设置环境变量,不确定)