XML Beautifier für vim?


8

Gibt es einen vim-Befehl oder ein Plugin, das XML schnell "verschönert"?

Ich habe eine Datei, die aussieht wie

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

und ich möchte, dass es so aussieht

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

Antworten:


10

Verwenden Sie nur vim builtins:

Ersetzen Sie zuerst alle> <durch> [newline] <:

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

Dann zur Erinnerung:

gg=G

Diese Schritte geben mir die richtige Ausgabe für Ihre Beispieldaten.


1
Ich weiß nicht warum, aber das gg = G funktioniert bei mir nicht. Ich habe es auch mit einem kleinen Bock versucht, aber der Befehl = funktioniert nicht.
Sixtyfootersdude

Funktioniert == in einer einzelnen Zeile? Versuchen Sie vielleicht: set ft = xml, um Einrückungsregeln festzulegen.
redigiert
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.