Outils XML pour Notepad++

Je me souviens avoir eu du mal à trouver un logiciel pour gérer les fichiers XML et les schémas XSD qui vont avec quand je travaillais chez Sopra Group sur le recouvrement des impayés d'un grand opérateur de téléphonie mobile. Je manipulais des fichiers XML volumineux, je devais créer des schémas XSD, valider des fichiers XML… Il existe des logiciels gratuits pas forcément exceptionnels et le logiciel de référence - XMLSpy - est payant.

J'aurais dû regarder du côté de Notepad++ !

Éditeur de texte indispensable pour tout développeur sous Windows, Notepad++ possède un plugin XML Tools basé sur la libXML. Ce plugin ne prétend pas remplacer XMLSpy mais est bien suffisant pour de nombreuses tâches courantes. Le fait qu'il soit intégré à Notepad++ évite de lancer un autre logiciel alors que celui-ci est toujours actif.
Dans la suite de cet article, je vous expliquerai comment l'installer et donnerai un rapide aperçu des fonctionnalités. Un seul prérequis : Notepad++ doit être installé sur votre ordinateur, le chemin d'installation est noté $RACINE_NOTEPAD.

Les fichiers DLL nécessaires à ce plugin sont disponibles sur SourceForge. Pour choisir la version du plugin, vous devez déterminer si votre Notepad++ est en version ANSI ou Unicode. Cette information est donnée dans le menu À propos (accessible par l'onglet ? ou avec le raccourci F1) :

Image non disponible
« À propos » de mon Notepad++

Je dispose d'une version Unicode, j'ai donc choisi l'archive : xmltools_2.3.2_r908_unicode_beta4.zip. Il suffit alors de déposer le fichier XMLTools.dll qu'elle contient dans $RACINE_NOTEPAD/plugins. Comme je l'ai évoqué plus haut, le plugin fait appel à des bibliothèques que les développeurs ont gentiment regroupées ici. Ces quatre fichiers DLL doivent quant à eux être déposés dans le même dossier que le fichier notepad.exe, donc dans $RACINE_NOTEPAD.

On (re)démarre le logiciel et le nouveau plugin est disponible :

Image non disponible
Accès au plugin XML Tools

Les noms des fonctionnalités sont explicites, je n'ai pas besoin d'en dire beaucoup plus. Rapidement :

  • le premier groupe sert à la vérification de la syntaxe du fichier. Les messages d'erreur que j'ai eus lors de mes tests n'étaient pas très précis mais au moins on sait s'il y a un problème ;
  • le second groupe sert à la validation d'un fichier XML en le confrontant à son schéma XSD. Je n'ai pas testé la fonction ;
  • cochez Tag auto-close pour que la balise fermante soit automatiquement ajoutée quand vous terminez la balise ouvrante ;
  • Set XML type automatically sélectionne XML dans le menu Langage, apparemment uniquement pour les fichiers dont le langage n'est pas reconnu. Mon fichier main.c s'est correctement coloré par exemple ;
  • le cinquième groupe permet une indentation ou une linéarisation du fichier. Dans l'image ci-dessus, le fichier est linéaire. Un pretty print et hop ! il s'affiche tout joli ! Un linarize file et mon fichier reprend son apparence d'origine ;
  • les deux fonctions XPath du sixième groupe sont bien pratiques pour tester une requête XPath avant de la mettre dans son code ;
  • j'adore l'avant-dernier groupe !

Maintenant, faites-vous plaisir !

Même sans ce plugin, Notepad++ sait colorer les balises correspondantes dans un fichier XML. Il suffit de sélectionner XML dans le menu Langage. On clique sur une balise, elle et sa balise correspondante sont colorées automatiquement ; si aucune autre balise ne se colore, alors le fichier est mal formé.

Remerciements

Cet article a été publié avec l'aimable autorisation de Pierre Gradot, l'article original (Outils XML pour Notepad++) peut être vu sur son blog.

Nous tenons à remercier ClaudeLELOUP pour sa relecture attentive de cet article.