Edited at

vimでお手軽にXMLを整形する

More than 1 year has passed since last update.

開発などで改行がないXMLをvimでお手軽に整形するコマンドです。

:%s/></>\r</g | filetype indent on | setf xml | normal gg=G

もしくは

:%s/></>^M</g | filetype indent on | setf xml | normal gg=G

^M^Mの2文字ではなく、Ctrl-Vの後にEnterを入力した1文字です。

インデント不要だったりXMLが巨大で時間がかかる場合は次のように置換だけにすると高速です。

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

:%s/></>^M</g


整形例

<foo><bar><qiita>example</qiita></bar></foo>

こんなテキストが

<foo>

<bar>
<qiita>example</qiita>
</bar>
</foo>

このように整形されます。