2010-04-18 2 views
5

Je tente d'écrire un paquet LaTeX qui exploite la commande \ inputminted du paquet monnayé. Ma commande \ mycommand prend deux paramètres, le premier étant un chemin vers un fichier, et je veux passer l'extension du fichier à la commande \ inputminted:Comment puis-je déterminer une extension de fichier donnée à un chemin de fichier dans LaTeX?

\newcommand\mycommand[2]{ 
    \inputminted{#1}{...} 
} 

Notez que ce qui précède ne fonctionnera pas car le chemin complet est passé à \ inputminted.

Exemple:

\mycommand{/path/to/Test.java}{blah} 

devrait invoquer

\inputminted{java}{...} 

Répondre

2

Dans votre package utilisez le nom fonction \ @ analysez

\[email protected]{/path/to/Test.java} 

vous pouvez accéder aux résultats en utilisant

\[email protected] 
\[email protected] 

Donc dans votre cas

\inputminted{\[email protected]}{...} 
+0

Impressionnant Niall - merci beaucoup! Avez-vous une référence à la fonction \ filename @ parse quelque part? – Frank

+0

Non, je ne trouve pas de référence. J'ai juste parcouru mon dossier texmf et trouvé un paquet appelé fink faisant quelque chose de similaire. Peut-être que le manque de documentation est lié à cette question: http://stackoverflow.com/questions/2296772/où-can-fi-help-files-or-documentation-for-commands-like-startsection-for –

Questions connexes