J'ai regardé les réponses à cette question , et malheureusement aucune ne m'a aidé jusqu'à présent.
Pour ne pas tourner autour du pot, la deuxième édition de C # in Depth est maintenant en édition de copie. Je veux pouvoir voir ce que l'éditeur de copie a fait très facilement, afin de pouvoir rejeter ou accepter ses modifications.
Nous utilisons une forme modifiée de docbook, mais je suis assez content de regarder la source XML brute. Tout va bien jusqu'à présent - sauf que lorsque l'éditeur de copie effectue un changement, cela peut changer le retour à la ligne. Donc, quelque chose qui disait:
<para>Foo bar baz
second line</para>
lit maintenant
<para>Foo bar grontle
baz second line</para>
Maintenant, le vrai changement ici est l'insertion de "grontle". Peu m'importe que "baz" soit passé de la première ligne à la deuxième ligne, mais tous les outils de diff que j'ai vus le font.
Je me rends compte qu'une option serait de reformater le document entier (ou peut-être seulement des paragraphes entiers) en lignes simples ... mais c'est alors vraiment difficile à lire, car les outils de diff ne s'emballent pas lorsqu'ils s'affichent.
Je suis sûr que je peux gérer avec les outils dont je dispose, mais si quelqu'un sait mieux, je serais vraiment heureux d'en entendre parler. Je soupçonne que mes éditeurs le feraient aussi.
(J'ai inclus la balise Windows ici parce que j'aurais vraiment besoin qu'elle soit disponible sur Windows. J'aimerais également entendre parler de tout logiciel non Windows, mais seulement au cas où je pourrais aider à le construire sur Windows.
la source
Ma solution est incomparable . (un outil beaucoup plus puissant)
Nous commençons donc par voir le problème.
BC a un rôle d'analyse XML spécial: (il a déjà un rôle XML, mais pas avec une pré-analyse - qui est triée et rangée )
donc nous allons à http://www.scootersoftware.com/download.php?zz=kb_moreformats_alt
et maintenant -
j'espère que vous l'utiliserez en profondeur pour la prochaine édition de C #
ps si le texte dans les images est trop petit, cliquez simplement sur l'image pour charger les originaux.
la source
Je suis l'auteur d'un outil de diff XML (logiciel commercial) qui devrait faire le travail (et quelques autres fonctionnalités). Il existe une version de test (limitée aux fichiers Xml de 100 Ko maximum) à télécharger ici:
http://xmldifftool.com/download_en.html
Une brève introduction est également disponible ici:
http://xmldifftool.com/xtcmanual_en.html
la source
J'ai eu ce même problème dans une entreprise il n'y a pas si longtemps. Ils voulaient trouver une véritable "différence XML", et il ne semble pas y avoir de solutions complètes.
La solution la plus simple consiste à exécuter un joli script d'impression sur le XML pour normaliser les terminaisons de ligne et l'espacement, puis à exécuter l'outil de choix de choix ( WinMerge est agréable pour Windows). Cela supprime une grande partie du flotsam que la plupart des outils diffèrent vous lancer à partir de XML, et il est vraiment facile de construire un script.
la source
SD Smart Differencer compare les documents en fonction de la structure par opposition à la mise en page réelle.
Il y a un différentiateur intelligent XML. Pour XML, cela signifie l'ordre de correspondance des balises et du contenu. Il convient de noter que la chaîne de texte dans le fragment spécifique que vous avez indiqué était différente. (Il ne comprend pas actuellement la notion XML de texte dans lequel les espaces sont normalisés vs significatifs, mais je pense que cela ne vous fera pas beaucoup de mal).
la source
@ Jon Skeet: Vous avez mentionné dans votre question que les outils de diff ne se terminent pas lorsqu'ils s'affichent.
vimdiff
(également disponible sur Windows viagvim
) vous permet d'envelopper les fichiers xml affichés avec:window set wrap
. Lien de référence .Vous pouvez également exécuter
:diffupdate
pour actualiser les différences.la source