Réponses:
Si vous avez 3 fichiers différents dont vous avez besoin, vous pouvez utiliser des commentaires de première ligne (ou deuxièmes si vous avez besoin de choses utf8). Je l'utilise pour compiler le fichier TeX principal de l'un des enfants.
%!../main_file.tex
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[czech,english]{babel}
J'ai un script, qui regarde la première ligne:
match=`head -n1 $1 | grep %!`
if [[ $match ]]
then
# do stuff with the parent's name, which is ${match:2:100}
else
# no match :/
fi
et un simple fichier de construction visant mon script personnalisé:
{
"cmd": ["/path/to/build/script.sh", "$file"],
"selector": "whatever"
}
De cette façon, vous pouvez avoir autant de "références" dans vos fichiers que vous le souhaitez. Changez simplement la valeur de head -n1
.
Pour finir, je vous présente mon script de build 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