在Vim中,纠正所有行缩进的命令是什么?
通常情况下,我将代码复制并粘贴到远程终端,然后把整个事情搞砸了。我想一下子解决这个问题。
在Vim中,纠正所有行缩进的命令是什么?
通常情况下,我将代码复制并粘贴到远程终端,然后把整个事情搞砸了。我想一下子解决这个问题。
当前回答
按escape键,然后快速输入以下组合:
gg=G
其他回答
1 G = G。这应该会缩进文件中的所有行。1G表示第一行,=表示自动缩进,最后一个G表示文件的最后一行。
对于vi编辑器,使用:insert。这将保持所有的格式,而不是插入自动缩进。一旦完成,按转义查看实际格式化的文件,否则你会看到一些垃圾字符。^我 例句:
public static void main(String[] args) {
^I
^I System.out.println("Some Garbage printed upon using :insert");
}
如果你不想使用:设置粘贴,中键单击,设置不粘贴,你也可以粘贴剪贴板的内容:
"*p
"+p
这样你就不用离开正常模式了。 如果您必须粘贴+或*取决于您如何选择文本,请参阅:help quoteplus。
对于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)
=时,indent命令可以进行动作。gg表示文件的开始,=表示缩进,G表示文件的结尾,gg=G。