I would like vim to help me indent my xml files like my C code. However, when I use
gg=G
It just sets everything to the left. Do I need to designate a syntax? Is XML recognized as a language?
I would like vim to help me indent my xml files like my C code. However, when I use
gg=G
It just sets everything to the left. Do I need to designate a syntax? Is XML recognized as a language?
Put
filetype plugin indent on
in your .vimrc
to have Vim automatically identify .xml files as xml. You might need to put
set nocompatible
before that.
If the file extension is not .xml, you can make Vim threat it like xml by using
:set filetype=xml
After you do that, Vim's autoindention (and syntax highlighting, and omnicomplete (that in xml just closes tags, but that's still something)) will work properly for xml.
Yep, :set syntax=xml
should work. In vim 7.3, this sets :set indentexpr=XmlIndentGet(v:lnum,1)
.
If you've got a one-line file, you may need to :%s/\(<[^>]*>\)/\1\r/g
, to insert newlines after every tag (or split it differently).
Then, gg=G
should work.
add this line to your .vimrc file:
:map <Space>fx :%s/\ </\r</g<cr>:%s/\ android/\randroid/g<cr>:g/^$/d<cr>gg=G`
to format click space fx