web-dev-qa-db-fra.com

Comment commenter une seule ligne en XML?

C’est plutôt une vérification à ne pas rater.

Est-ce qu'il n'y a pas de commentaire de ligne en XML? Donc, un sans plus, comme "//" le compilateur utilise.

J'ai vu Comment commenter un bloc de balises en XML? et plusieurs autres discussions.

Ce type de commentaire serait pratique pour commenter une ligne sans la gêner quelque part.

115
Roam

Non, il n'y a aucun moyen de commenter une ligne en XML et de laisser le commentaire se terminer automatiquement sur un saut de ligne.

XML a seulement ne définition pour un commentaire :

'<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'

XML interdit à -- dans les commentaires de rester compatibilité avec SGML .

137
kojiro

Comme d’autres l’ont dit, il n’existe aucun moyen de commenter une seule ligne légalement en XML qui commente plusieurs lignes, mais , il existe des moyens de commenter les segments XML plus facilement. Dans l'exemple ci-dessous, si vous ajoutez ">" à la première ligne, le XmlTag ne sera pas commenté. Supprimez le '>' et il est commenté à nouveau. C’est le moyen le plus simple que j’ai vu de commenter/décommenter rapidement XML sans casser des choses.

<!-- --
<XmlTag variable="0" />
<!-- -->

L'avantage supplémentaire est que vous ne manipulez que le commentaire en haut, et le commentaire en bas peut simplement rester là pour toujours. Cela rompt la compatibilité avec SGML et certains analyseurs XML le verrouillent. Tant que ce n'est pas un élément fixe de votre code XML et que vos analyseurs syntaxiques l'acceptent, ce n'est pas vraiment un problème. Les surligneurs de syntaxe de StackOverflow et de Notepad ++ le traitent comme un commentaire sur plusieurs lignes, la bibliothèque boost de C++ le traite comme un commentaire sur plusieurs lignes et le seul analyseur que j'ai trouvé jusqu'à présent qui saute est celui de .Net, en particulier C #. Donc, assurez-vous d’abord de vérifier que vos outils, IDE, bibliothèques, langage, etc. l’acceptent avant de l’utiliser.

Si vous vous souciez de la compatibilité SGML, utilisez simplement ceci à la place:

<!-- -
<XmlTag variable="0" />
<!- -->

Ajoutez '->' au commentaire en haut et un '-' au commentaire en bas. L'inconvénient est de devoir éditer le commentaire du bas à chaque fois, ce qui faciliterait probablement la tâche en tapant <!-- en haut et --> en bas à chaque fois.

Je souhaite également mentionner que d’autres commentateurs recommandent l’utilisation d’un éditeur XML permettant de cliquer avec le bouton droit de la souris et de commenter/supprimer les commentaires de blocs XML, ce qui est probablement préférable aux astuces de recherche/remplacement sophistiquées (cela constituerait également une bonne réponse en soi, mais je n'ai jamais utilisé de tels outils, je veux juste m'assurer que l'information ne sera pas perdue avec le temps). Personnellement, je n'ai jamais eu à traiter avec XML suffisamment pour justifier d'avoir un éditeur plus sophistiqué que Notepad ++, alors c'est à vous de décider.

18
Shaz

C'est le même que les commentaires de bloc HTML ou javascript

<!-- to be commented xml block goes here -->
11
nassim

Pas orthodoxe, mais travaille pour moi parfois; définir votre commentaire comme un autre attribut

<node usefulAttr="foo" comment="your comment here..."/>
5
j rdl

Le Extensible Markup Language (XML) 1. n'inclut que les commentaires de blocage.

4
Fox32