IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Outils XML pour Notepad++
Par Pierre Gradot

Le , par Bovino

0PARTAGES

5  0 


Pierre Gradot vous propose son premier article : Outils XML pour Notepad++ présentant le plugin XML Tools.

N'hésitez pas à faire part de vos commentaires et remarques.

Outils XML pour Notepad++.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Bktero
Modérateur https://www.developpez.com
Le 22/06/2012 à 9:55
CORRECTION :
Etant le responsable de cet article, je viens corriger une erreur qui ne m'est pas imputable Dans l'article, je dis que 4 DLL sont disponibles "ici" et "ici" pointe vers : http://sourceforge.net/projects/npp-...ternal%20libs/
Or, vous constaterez en cliquant dessus que le lien ne ramène pas au bon endroit. En effet, le répertoire External libs a été supprimé de l’arborescence de SourceForge. Les 4 DLL externes sont maintenant incluses dans l'archive RAR du plugin, dans un sous-répertoire Ext_libs. Ces 4 DLL sont toujours à placer comme indiqué dans l'article, avec l'exécutable notepad.exe. Vous pouvez télécharger la dernière version de XML Tools ici : http://sourceforge.net/projects/npp-...icode%20Beta4/

@Bovino : je vais mettre à jour l'article sur mon blog, mais comment puis-je modifier la version Developpez ? Merci pour la publication
2  0 
Avatar de Bovino
Rédacteur https://www.developpez.com
Le 22/06/2012 à 10:13
La correction a été apportée à l'article, sauf que "ici" pointe vers la racine du projet, afin de pouvoir facilement récupérer la dernière version disponible (plus de clics mais pas de souci de version).

2  0 
Avatar de Loceka
Expert confirmé https://www.developpez.com
Le 20/06/2012 à 14:16
Je ne sais pas si on peut répondre ici, mais dans le doute...

Alors j'ai aussi testé XML Tools (ainsi que tous les plugins XML/HTML Notepad++ que j'ai pu trouver) dans le but d'indenter un fichier XML et il a été incapable de le faire sous prétexte que le XML n'était pas correct (il y'avait des entités utilisées sans DTD, donc aucune erreur syntaxique XML à proprement parler).

Pareil pour les autres plugins XML d'ailleurs.
Quant aux plugins pour le HTML, du moment qu'ils ne reconnaissent pas la balise comme étant du HTML, ils n'apprécient pas.

Bref, pour ma part j'ai été un peu déçu par le zèle de tous ces plugins qui se sont tous avérés inutilisables pour moi.

D'ailleurs je ne vois pas l'intérêt de leur fonction de validation du XML vu qu'il le fait au préabable pour quasiment chaque opération.

Du coup j'ai été obligé de me faire mon propre plugin pour indenter le XML/SGML.
0  0 
Avatar de thelvin
Modérateur https://www.developpez.com
Le 20/06/2012 à 14:52
Citation Envoyé par Loceka Voir le message
(il y'avait des entités utilisées sans DTD, donc aucune erreur syntaxique XML à proprement parler).
Tout de même, c'est mal formé, ça. Il y a un sacré paquet d'outils qui refuseront systématiquement de toucher à un document mal formé, tu n'auras que des emmerdes en continuant de penser qu'il n'y a "pas d'erreur à proprement parler" puisque la plupart des outils ne seront pas d'accord avec toi.

Après, bon, quand on veut utiliser des fichiers qui ont cette erreur-là, c'est sûr que ça ferait du bien, un peu de souplesse de la part de l'éditeur de texte, qu'il refuse pas d'indenter, problème qui n'a franchement rien à voir.

Citation Envoyé par Loceka Voir le message
D'ailleurs je ne vois pas l'intérêt de leur fonction de validation du XML vu qu'il le fait au préabable pour quasiment chaque opération.
C'est pas de la validation, c'est du parsing avec construction de l'arbre de données. Ça inclut la vérification si le document est bien formé ou mal formé, ça ne s'intéresse pas à la validation.
0  0 
Avatar de Loceka
Expert confirmé https://www.developpez.com
Le 20/06/2012 à 16:10
Citation Envoyé par thelvin Voir le message
Après, bon, quand on veut utiliser des fichiers qui ont cette erreur-là, c'est sûr que ça ferait du bien, un peu de souplesse de la part de l'éditeur de texte, qu'il refuse pas d'indenter, problème qui n'a franchement rien à voir.
Surtout quand on doit utiliser des fichiers comme ça.
Moi c'est mon appli au boulot qui me ressort des fichiers avec des entités, qu'il peut retrouver grâce à un catalogue interne. Bien entendu ce catalogue n'est pas exporté de l'appli avec le fichier XML en question.

Et je suis d'accord, les entités n'ont pas grand chose à voir avec la structure du document. Du coup ça me fait râler quand il me ressort qu'il ne peut pas l'indenter à cause d'une erreur comme ça...

Le seul outil capable d'indenter sans se soucier des entités (ni même des erreurs syntaxiques, comme des balises non fermées d'ailleurs) c'est l'indenteur d'Eclipse.
Malheureusement, dès que le XML dépasse les 1 ou 2 Mo, ça freeze eclipse et y'a plus qu'à killer le process.

Sachant que mes documents font entre 10 et 300 Mo autant dire que c'est juste pas utilisable.

D'ailleurs, si ça peut intéresser des gens, je joins le script que j'ai fait pour indenter des fichiers SGML ou XML.
A priori y'a pas plus de bugs, mais on ne sait jamais...
Il suffit d'avoir Perl pour le lancer avec comme unique argument le nom du fichier à indenter :
Code : Sélectionner tout
perl DOMIndenter.pl mon_fichier.xml
Il indente des fichiers SGML de 300Mo en 5 minutes sur un core i3 premier prix et 3Go de RAM.
A priori la seule limitation pour la taille du XML en entrée est la mémoire disponible (il prend jusqu'à 3x la taille en RAM).
0  0 
Avatar de thelvin
Modérateur https://www.developpez.com
Le 20/06/2012 à 17:00
Citation Envoyé par Loceka Voir le message
Surtout quand on doit utiliser des fichiers comme ça.
Mouais, enfin mal formé c'est mal formé, ça veut dire ce que ça veut dire.
C'est quand même pas compliqué d'ajouter un petit doctype pointant vers une .dtd qui n'existe pas mais pourrait exister si ta boîte décidait un jour d'exporter cette bibliothèque sous forme de .dtd avec un webservice interne. Et dont personne n'a rien à cirer s'il existe ou pas puisque les parseurs ne sont pas validants.

'Fin bon. Je ferais mieux d'arrêter de dévier, et jeter un œil à ces outils pour Notepad++

Et merci pour l'outil d'indentation, au fait. Je fais pas de SGML, mais je touche du bois.
0  0 
Avatar de djibril
Responsable Perl et Outils https://www.developpez.com
Le 06/06/2013 à 14:08
Comment faire en sorte qu'à la validation XML, les erreurs nous indiquent les numéro de ligne dans le XML ?
0  0