Answers:
如果您需要3个不同的文件,则可以使用第一行注释(如果需要utf8则使用第二行注释)。我用它来编译其中一个孩子的主要TeX文件。
%!../main_file.tex
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[czech,english]{babel}
我有一个脚本,它看起来在第一行:
match=`head -n1 $1 | grep %!`
if [[ $match ]]
then
# do stuff with the parent's name, which is ${match:2:100}
else
# no match :/
fi
和一个针对我的自定义脚本的简单构建文件:
{
"cmd": ["/path/to/build/script.sh", "$file"],
"selector": "whatever"
}
这样,您可以在文件中根据需要包含多个“引用”。只需切换的值即可head -n1
。
最后,我向您展示我的XeLaTeX构建脚本;)
#!/bin/bash
file="$1"
flag="-halt-on-error"
match=`head -n1 $file | grep %!`
if [[ $match ]]
then
if [ ${match:2:3} = ../ ]
then
cd .. &&
target=${match:5:100}
else
target=${match:2:100}
fi
else
target=$file
fi
rubber -c 'set arguments -shell-escape' -f -m xelatex -W all $target
exit 0