web-dev-qa-db-ja.com

VimにXMLを認識させる

VimがCコードのようにXMLファイルをインデントするのを手伝ってほしいです。しかし、私が使用するとき

gg=G

すべてを左側に設定するだけです。構文を指定する必要がありますか? XMLは言語として認識されますか?

21
IslandCow

プット

filetype plugin indent on

あなたの.vimrcVimに.xmlファイルをxmlとして自動的に識別させる。あなたは置く必要があるかもしれません

set nocompatible

それ以前は。

ファイル拡張子が.xmlでない場合は、次を使用してVimをxmlのように脅威にすることができます。

:set filetype=xml

それを行った後、Vimの自動インデント(および構文の強調表示、およびオムニコンプリート(xmlではタグを閉じるだけですが、それでも何かです))はxmlに対して正しく機能します。

25
Idan Arye

はい、_:set syntax=xml_は機能するはずです。 vim 7.3では、これは:set indentexpr=XmlIndentGet(v:lnum,1)を設定します。

1行のファイルがある場合は、タグごとに改行を挿入する(または別の方法で分割する)ために、:%s/\(<[^>]*>\)/\1\r/gが必要になる場合があります。

次に、_gg=G_が機能するはずです。

6
nobody

この行を.vimrcファイルに追加します。

:map <Space>fx :%s/\ </\r</g<cr>:%s/\ Android/\randroid/g<cr>:g/^$/d<cr>gg=G`

フォーマットするにはspace fxをクリックします

0
challenger