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 devrais 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 lancé. 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++ est 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 A propos (accessible par l’onglet ? ou avec le raccourci F1) :

Notepad++ - A propos

« A 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 dans le dossier ext_libs contenu dans l’archive. Comme expliqué dans le fichier texte les accompagnant, ces 4 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 :

Notepad++ - XML Tools

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 eu lors de mes tests n’étaient pas très précis mais au moins on sait s’il y a un problème.
  • Le seconde 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 !

Enjoy !

PS : 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é.

14 Réponses

  1. Bonjour, je vous remercie pour ce tutoriel excellant.
    Durant ma lecture j’ai rencontré un problème concernant les DLL de notepad++, je suis le lien que vous avez nommé « ici », et là je trouve plusieurs plugins entre lesquels j’hésite de choisir!!!
    S’il vous plaît j’ai besoin de votre aide et merci.

    J’aime

    21 juin 2012 à 4:46

  2. Arf ! Je me suis tordu les méninges 10 minutes avant de trouver la solution. Le lien que je donne sous le « ici » est : http://sourceforge.net/projects/npp-plugins/files/XML%20Tools/External%20libs/
    Or, vous constaterez qu’il ne mène pas à cette page. Le dossier External libs a été supprimé et les DLL qu’il contenait son maintenant incluses dans le fichier RAR du plugin : http://sourceforge.net/projects/npp-plugins/files/XML%20Tools/Xml%20Tools%202.3.2%20r908%20Unicode%20Beta4/xmltools_2.3.2_r908_unicode_beta4.zip/download
    L’archive contient un dossier ext_libs avec les 4 DLL, à placer donc dans la racine du dossier Notepad, avec l’exécutable notepad.exe.
    Je vais modifier l’article en conséquence.

    J’aime

    22 juin 2012 à 9:45

  3. appl

    Bonjour, j’ai installé le pluging xmltools_2.3.2_r908_unicode_beta4.zip sur Notepad+ unicode, et en lancant notepad+ il me dit que  » L’ANSI plugin is not compatible with your Unicode NotePas++ » !

    J’aime

    28 août 2012 à 3:32

    • Bonjour,
      Vous avez bien pris le plugin disponible ici ? Dans A propos, Notepad++ est bien en Unicode ? Je présume que oui, à la vue du message d’erreur. Ce message d’erreur concerne bien XML Tools et non un autre plugin installé en même temps ?

      J’aime

      28 août 2012 à 4:34

  4. J’avoue ne pas avoir de réponse… J’ai la même version de Notepad++, je viens d’installer les DLL de votre lien. En relançant Notepad++, je n’ai pas de message d’erreur : /

    J’aime

    7 septembre 2012 à 3:43

  5. Thibaut Nazare

    J’ai eu ce problème. Vous n’avez surement pas mis les fichiers au bon endroit. « L’archive contient un dossier ext_libs avec les 4 DLL, à placer donc dans la racine du dossier Notepad, avec l’exécutable notepad.exe. »

    J’aime

    26 novembre 2012 à 11:53

  6. Barbalucou

    Un petit up et un Merci ! 🙂

    J’aime

    18 mars 2013 à 7:24

    • De rien 🙂
      Je m’en suis encore servi en changeant de PC au boulot, je me rend service à moi-même !

      J’aime

      18 mars 2013 à 10:53

  7. Merci d’avoir partagé ces infos( article découvert sur developpez.com) J’en ai besoin pour pouvoir passer mon la semaine prochaine. Là, je vais pouvoir étudier sans Altova.

    J’aime

    29 août 2014 à 4:46

  8. France Dion

    J’essais de valider un XML avec un schema mais j’ai ce message:

    « Following error occurred during schema file parsing:
    Failed to locate the main schema resource at « layout-topologie.xsd ».

    Que peut-on faire pour résoudre le problème. Merci !

    J’aime

    18 octobre 2017 à 7:56

    • Bonjour. Réponse très tardive pour cause de vacances. Est-ce que le fichier XSD est dans le même dossier que le fichier XML ?

      J’aime

      20 novembre 2017 à 11:01

  9. Pingback: Outils Markdown pour Notepad++ | Pierre Gradot

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.