Embellisseur XML pour vim?

8

Existe-t-il une commande ou un plugin vim qui «embellit» rapidement XML?

J'ai un fichier qui ressemble à

<parent><child attr="bla"><subitem>Hello!
</subitem></child>
</parent>

et je veux que ça ressemble

<parent>
  <child attr="bla">
    <subitem>Hello!
    </subitem>
  <child>
<parent>
Michael Stum
la source

Réponses:

10

Utiliser uniquement les commandes internes de vim:

Remplacez d'abord tous> <par> [nouvelle ligne] <:

:%s/></>\r</g

Puis pour réindenter:

gg=G

Ces étapes me donnent le bon résultat pour vos données d'exemple.

expurgé
la source
1
Je ne sais pas pourquoi mais le gg = G ne fonctionne pas pour moi. Je l'ai également essayé sur un petit bock mais la commande = ne fonctionne pas.
sixtyfootersdude
== fonctionne-t-il sur une seule ligne? Essayez peut-être: définissez ft = xml pour définir des règles de retrait.
expurgée le