来自 shell 脚本的 latexmk 和 xelatex
latexmk and xelatex from shell script
我在 TeX - LaTeX Stack Exchange, but I fear it is closer to a programming question than to a TeX question, hence I'm asking it here. I hope this is alright. (The original question is Passing arguments to xelatex using latexmk 上问过这个问题。)
我有一个 XeLaTeX 源文件,它可以生成两个版本的文档,具体取决于某个命令序列 testcs
是否存在。我通常通过 csh
shell 脚本执行此操作,该脚本生成两个版本并且看起来像这样:
set file = "Document"
xelatex -jobname="${file}-v1" "\def\testcs{1} \input{${file}.tex}"
xelatex ${file}.tex
我的文档现在有一个索引,排版现在需要经过多次 xelatex
。我通常会使用 latexmk
,例如
latexmk -pdfxe Document
这工作正常,但我现在想使用脚本生成文档的两个版本。
换句话说,我想修改 shell 脚本以使用 latexmk
,但我似乎无法将参数传递给 xelatex
。我可以通过 -jobname
但我没有通过任何选项通过 \def\textcs{1}
的运气:-xelatex
、-pdfxelatex
、-pretex
、.. .
问题有简单的方法吗?
对 稍作修改。诀窍是 -usepretex
选项是必要的,它告诉 latexmk 实际执行您在 -pretex
中指定的操作
set file = "Document"
latexmk -pdfxe -jobname=${file}"-v1" -pretex="\def\testcs{1}" -usepretex ${file}
我在 TeX - LaTeX Stack Exchange, but I fear it is closer to a programming question than to a TeX question, hence I'm asking it here. I hope this is alright. (The original question is Passing arguments to xelatex using latexmk 上问过这个问题。)
我有一个 XeLaTeX 源文件,它可以生成两个版本的文档,具体取决于某个命令序列 testcs
是否存在。我通常通过 csh
shell 脚本执行此操作,该脚本生成两个版本并且看起来像这样:
set file = "Document"
xelatex -jobname="${file}-v1" "\def\testcs{1} \input{${file}.tex}"
xelatex ${file}.tex
我的文档现在有一个索引,排版现在需要经过多次 xelatex
。我通常会使用 latexmk
,例如
latexmk -pdfxe Document
这工作正常,但我现在想使用脚本生成文档的两个版本。
换句话说,我想修改 shell 脚本以使用 latexmk
,但我似乎无法将参数传递给 xelatex
。我可以通过 -jobname
但我没有通过任何选项通过 \def\textcs{1}
的运气:-xelatex
、-pdfxelatex
、-pretex
、.. .
问题有简单的方法吗?
对 -usepretex
选项是必要的,它告诉 latexmk 实际执行您在 -pretex
set file = "Document"
latexmk -pdfxe -jobname=${file}"-v1" -pretex="\def\testcs{1}" -usepretex ${file}