在Vim中,纠正所有行缩进的命令是什么?
很多时候我会将代码复制并粘贴到远程终端中并使整个过程搞砸了.我想一举解决这个问题.
=
,缩进命令可以采取动作.因此,gg
要获取文件的开头,=
缩进,G
到文件的末尾,gg=G
.
在粘贴到终端之前,尝试:set paste
(然后:set nopaste
在完成之后).这将关闭搞乱粘贴的自动缩进,换行等功能.
编辑:另外,我应该指出,通常可以通过使用外部程序获得比=缩进更好的结果.例如,我=
一直在运行.也可以使用astyle,cindent等.当然,您可以将它们映射到键击 - 并根据文件类型将不同的键映射到相同的击键
如果你想重新加入你所在的块而不必键入任何和弦,你可以这样做:
[[=]]
所有命令的主人都是
gg=G
这会缩进整个文件!
下面是一些简单而优雅的命令,用于在Vim或gVim中快速缩进行.
缩进当前行下面的所有行
=G
缩进当前行
==
缩进n
当前行下方的行
n==
例如,缩进当前行下面的4行
4==
要缩进代码块,请转到其中一个大括号并使用命令
=%
您可以使用整洁的应用程序/实用程序来缩进HTML和XML文件,并且它可以很好地缩进这些文件.
整理XML文件
:!tidy -mi -xml %
整理HTML文件
:!tidy -mi -html %
按下转义然后快速输入以下组合:
gg=G
1G=G
.这应该缩进文件中的所有行.1G
带你到第一行,=
将启动自动缩进,最后G
将带你到文件的最后一行.
在Vim中,使用:insert
.这将保留所有格式,而不是自动延迟.有关更多信息help :insert
.
:set paste
是你的朋友我使用putty并最终在Windows之间复制代码.在我开启之前:set paste
(和:set nopaste
)复制/粘贴给了我适合这个原因.
如果您不想使用:set paste
,请单击中键set nopaste
,您也可以粘贴剪贴板的内容:
"*p "+p
这样您就不必离开正常模式.如果您必须粘贴+
或*
取决于您选择文本的方式,请参阅:help quoteplus
.