我正在学习Vim,但我认为这是一项简单的任务,但我无法让它工作。我有浏览器,但解决方案对我不起作用。
我正在尝试正确地缩进一个文件(xml)。我使用的命令是:
gg=G
或者ggVG= (我自己编的这个可能做了一些不同的事情;)
我的.vimrc是:
syntax on
filetype plugin indent on
set nu
发布于 2014-01-30 02:27:43
我喜欢Berei的回答。但是,我认为下面的方法更灵活一些,因为您不必更改vimrc
文件。另外,格式化XML文件的选定部分更容易(这是我经常做的事情)。
首先,突出显示要格式化的XML。
然后,在正常模式下,键入! xmllint --format -
您在底部的命令行将如下所示:
:'<,'>!xmllint --format -
然后按enter键。
技术说明
选定的文本被发送到xmllint
命令,然后是--format
'ed,xmllint
的结果放在vim中的选定文本上。命令末尾的-
用于接收标准输入-在本例中,标准输入是vim发送到xmllint
的选定文本。
发布于 2014-01-28 22:41:33
使用外部程序缩进您的xml
文件。在本例中,我选择了xmllint
,因此将命令设置为equalprg
选项:
:set equalprg=xmllint\ --format\ -
现在你可以执行
gg=G
若要让xmllint
格式化xml
文件,请执行以下操作。
要在每次使用vim时获取它,请使用autocommand
来设置它。
来自下面评论的autocommand
au FileType xml setlocal equalprg=xmllint\ --format\ --recover\ -\ 2>/dev/null
发布于 2015-06-06 04:30:24
只要正确设置~/.vimrc,就很容易做到这一点。
在~/.vimrc中设置以下选项:
filetype indent on
set smartindent
这允许您将光标移动到文件的顶部并缩进到末尾: gg=G
您还可以使用视觉模式选择所需的文本,然后按=缩进它。
https://stackoverflow.com/questions/21408222
复制相似问题