10
votes

Convertir DIFF en Markdown avec barrette?

J'aimerais convertir la sortie de diff (sur un fichier de marquage) à Marquage avec et tags, afin que je puisse voir ce qui a été supprimé ou ajouté à une nouvelle version d'un document. (Ce genre de Le traitement est très courant pour les documents juridiques.)

exemple de sortie espéré:

pourquoi sommes-nous nous Etude de langages de programmation ? pas pas dans l'ordre à ...

Un des nombreux Les difficultés sont que la production de diff est orientée ligne, où je veux voir les différences de mots individuels. Est-ce que quelqu'un a des suggestions comme à quel algorithme utiliser, ou quel logiciel pour construire sur?


0 commentaires

3 Réponses :


18
votes

Utilisez WDIFF . Il fait déjà la comparaison mot-parole que vous recherchez; Conversion de sa sortie en marquage doit prendre quelques-quelques expressions régulières simples.

Par exemple: P>

$ wdiff -w '<em>' -x '</em>' -y '<strike>' -z '</strike>' foo bar
<em>Why do we</em><strike>We</strike> study programming <em>languages?  Not</em> <strike>languages not</strike> in order to


0 commentaires

0
votes

Vous n'avez pas spécifié la plate-forme cible, mais en supposant si vous utilisez .net, vous devez définitivement consulter cet article sur CODEPROJECT http://www.codeproject.com/kb/recipes/diffengine.aspx

Le moteur DIFF effectue une comparaison et vous renvoie l'objet logique qui peut appliquer votre propre formatage d'affichage visuel. Je l'ai utilisé dans plusieurs projets dont l'un était une comparaison de texte basée sur le Web et nous avons pu introduire tous ces balises comme vous le souhaitez ci-dessus. J'ai également étendu le moteur avec de nouvelles classes pour faire des comparaisons de type ligne personnalisées.


0 commentaires

7
votes

Utilisez markdown-diff < / Strong> Pour que le mot diff a annoté à votre document d'origine. Il formats wdiiff ou git -word-diff Seut de sortie dans Markdown, vous permettant ainsi d'utiliser votre prévisualiseur ou votre compilateur préféré pour examiner les modifications. (Markdown-diff a été écrit par moi-même, inspiré par Réponse de Adam Rosenfield .)


0 commentaires