|
Voici l'ECM à tester sous 2 noms du même fichier dans le même répertoire (sous Linux) \documentclass[a4paper,11pt,french,oneside,DIV=calc]{scrartcl} \usepackage{ifthen} \usepackage[french]{babel} \begin{document} Ce fichier porte 2 noms, l'un est \textsc{TEST.tex} l'autre \textsc{bidule.tex} (hardlink sous Linux: \emph{ln TEST.tex bidule.tex}). Sous windows une copie ferait le travail, mais me semblerait sans intérêt: l'intérêt ici est de n'utiliser qu'un seul fichier pour 2 résultats différents selon le nom d'appel, avec une copie il suffirait de modifier la ligne testée. La ligne suivante rapporte le nom juste de la commande utilisée, comme attendu: jobname=\jobname Mais cette ligne génère une erreur silencieusement: \ifthenelse{\equal{TEST}{\jobname}}{C'est TEST}{C'est pas TEST!} en renvoyant toujours «C'est pas TEST», même quand \verb+\jobname+ renvoie correctement «TEST» \end{document} où est l'erreur? |
|
Avec l'extension \documentclass[a4paper,11pt,french,oneside,DIV=calc]{scrartcl} \usepackage[french]{babel} \usepackage{xstring} \begin{document} \IfEq{\jobname}{\detokenize{TEST}}{C'est TEST}{C'est pas TEST!} \end{document} |
