• [^] # Re: Problématique

    Posté par (site web personnel) . En réponse au journal BSD Make Pallàs Scripts 2.0. Évalué à 2.

    Pour commencer, on définit une commande TeX MyFancyGraphic
    [...]
    Dont l'effet est d'inclure l'image filename et de poubelliser (ignorer) le reste.

    Donc il faut inventer un nom, c'est à mon sens une limitation.

    Ensuite on écrit un programme makedepend_blender — en OCaml, mais on s'en cogne ;) — qui prépare les dépendances. Il lit tes fichiers TeX et écrit un fichier .depend_blender contenant des lignes du type

    Donc il faut que le programme parse le document racine à la recherche d'inclusions vers d'autres documents. C'est faisable, mais c'est dur à rendre robuste (si par exemple quelqu'un défini une macro qui appelle \input).

    (Si les fichiers image ont d'autres dépendances, il faut trouver une convention pour les ajouter dans MyFancyGraphic et demander à makedepend_blender d'écrire leurs noms à droite de filename.in.)

    Donc tu dois spécifier les dépendances à la main, alors que certaines commandes pourraient les gérer d'elles mêmes.

    Par contre ce que tu propose me donne une idée pour simplifier mon implémentation. Je garde la commande "MyFancyGraphic", sans le "filename", et la seule chose que fait latex c'est générer un nom de fichier unique basé sur la commande et d'inclure ce nom de fichier unique. Après mon script de build parse le fichier .tex (et ses sous-fichiers) et génère les dépendances en utilisant le même mécanisme, et c'est gagné.