Jump to content

LaTeX -- Diff de deux code source


Xaelias

Recommended Posts

Bonjour,

J'ai une petite question de LaTeX. J'ai déjà cherché un peu sur Google mais sans succès.

Pour un des cours que je suis, nous devons modifier un code source déjà écrit pour l'améliorer. Visiblement, le format attendu pour une partie du rendu consiste bien sûr à lister les modifications apportées au code.

Je me demandais. Serait-il possible d'obtenir facilement (c'est à dire autrement qu'en le faisant entièrement à la main :transpi:) le type de sortie qu'on a par exemple sur un git diff, à partir de deux fichiers, le tout directement dans LaTeX, avec coloration syntaxique (c'est du C).

Merci!

Xælias

Link to comment
Share on other sites

Hello,

y'en a qui aime se faire du mal :transpi:
J'utilise qu'un peu LaTeX et je n'ai jamais été confronter à une idée comme la tienne. Je ne suis pas certain d'avoir tout saisi de ta demande cependant.

Ce que j'imagine, c'est faire un "diff" (il y la commande diff sur linux, plusieurs petits outils gratuit qui font ça sur Windows, j'imagine que c'est la même sur MacOsX) sur tes deux fichiers sources, sortir le résultat dans un fichier puis y injecter le code LaTex pour gérer la coloration syntaxique (écrire un mini script peut-être ?).

Pour la coloration syntaxique avec LaTex, il y a Listings.

Après, c'est peut-être les caractères spéciaux qui t'ennuient ?! Il y a sans doute des outils qui transforment du code en code compatible LaTeX (je ne sais pas si je me fais bien comprendre). Sinon, encore une fois, le p'tit script "à la noix" qui fait le boulot.

Link to comment
Share on other sites

Nan a priori tu as bien compris l'idée générale :transpi:

Pour la coloration il y a en effet listings, ou d'autres (je suis tombé sur un truc s'appelant minted je crois bien). Et en effet je pourrais utiliser un truc genre diff (ou assimilé) et mettre le résultat dans un fichier, et faire une coloration syntaxique modifiée (genre pour les signes + et -) mais j'aimerais autant éviter ça :craint:

J'essayerai peut-être de faire ça pour voir ce que ça donne, mais ça m'étonne qu'il n'y ait pas un truc qui existe déjà. Parce que même si c'est pas en effet utile tous les jours, je me dit que ça a déjà du être fait quelque part...

Merci !

Link to comment
Share on other sites

Bonjour les amis,

Allez, pour une fois, je sors de la section Apple ;)

Si je comprends bien, il s'agit de comparer deux fichiers source (en c) et de faire deux choses : afficher une coloration syntaxique et faire ressortir les différences.

Idéalement, il faudrait travailler sur deux colonnes : colonne 1 : le source de référence ; colonne 2 : le fichier optimisé. Le package multicol devrait y suffire.

- Affichage en colonnes : aucune difficulté. Pour plus facilité, je découperais le source de façon à pouvoir travailler page par page car le multi-colonnage sur plusieurs pages contigües n'est pas évident.

- Coloration syntaxique : facile, il y a des packages pour ça.

- Le coeur du sujet, c'est l'affichage des différences. Le faire directement en LaTeX me semble assez compliqué. Je que je suggère c'est de faire une petite macro en RegEx. L'objet de la macro serait de signaler les différences en les encadrant dans une balise \emph{} par exemple.

Ceci dit, les cadors du LaTeX francophone sont sur les NNTP newsgroups, dans le groupe fr.comp.text.tex : vas-y faire un petit tour, ça ne mange pas de pain ;-)

F

Link to comment
Share on other sites

Bonjour à tous,

excusez-moi du délai.
Du coup, j'en ai touché deux trois mots aux collègues : rien de bien probant...
Aucun n'a été confronté à ce besoin de "calculer de la diff par LaTeX".

As-tu pu t'en sortir Xaelias ?

M.

Link to comment
Share on other sites

J'avoue avoir temporisé :transpi:

J'ai eu d'autres trucs à faire entre deux...

Mais je dois rendre un premier truc aujourd'hui donc je m'y attaque cet aprèm!

Merci d'avoir cherché :-)

[EDIT] Pour ceux qui seraient assez tordus pour regarder l'heure de mon poste, je suis pas en France, donc c'est normal que mon aprem soit décalé :p

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...