在Vim中,纠正所有行缩进的命令是什么?
通常情况下,我将代码复制并粘贴到远程终端,然后把整个事情搞砸了。我想一下子解决这个问题。
在Vim中,纠正所有行缩进的命令是什么?
通常情况下,我将代码复制并粘贴到远程终端,然后把整个事情搞砸了。我想一下子解决这个问题。
当前回答
您可以创建一个映射来完成这个任务。
这将自动缩进整个文件,仍然保持你的光标在你的位置:
nmap <leader>ai mzgg=G`z
其他回答
只需在vim中进入可视模式,选择后按=,从上到下选择行,所有选中的行将被缩进。
在Vim中,使用:insert。这将保留所有的格式,而不会自动缩进。有关更多信息帮助:插入。
所有命令的主人是
gg=G
这将缩进整个文件!
下面是一些简单而优雅的命令,用于在Vim或gVim中快速缩进行。
缩进当前行以下的所有行
=G
缩进当前行
==
将当前行下缩进n行
n==
例如,将当前行缩进4行
4==
若要缩进代码块,请转到其中一个花括号并使用命令
=%
=时,indent命令可以进行动作。gg表示文件的开始,=表示缩进,G表示文件的结尾,gg=G。
对于XML文件,我使用这个命令
:1,$!xmllint --format --recover - 2>/dev/null
你需要安装xmllint(包libxml2-utils)
(来源:http://ku1ik.com/2011/09/08/formatting-xml-in-vim-with-indent-command.html)