我正在使用Vim编辑器.这是我的情况:
1111111111111
2222222222222
3333333333333
4444444444444
Run Code Online (Sandbox Code Playgroud)
以上是原始代码,我想让它们如下所示.我应该怎么做才能将它们全部转移到右边?
1111111111111
2222222222222
3333333333333
4444444444444
Run Code Online (Sandbox Code Playgroud)
pax*_*blo 43
在命令模式下,您可以使用>>缩进单行.4>>将缩进当前和后三行.
如果您事先不知道有多少行(可能非常大),您可以使用范围.转到范围的第一行并输入ma以放置标记A.然后转到最后一行并输入>'a从此处缩进到标记A.您可以使用范围执行各种奇妙的操作.
它们如何缩进取决于您的shiftwidth设置等几个方面.我总是将shiftwidth和tabstop设置相同以避免出现问题:
:set ts=4 sw=4
Run Code Online (Sandbox Code Playgroud)
(例如).
nic*_*ans 24
如果您已经在视觉模式中选择了四行:>将它们shiftwidth向右移动.移动后,视觉选择将消失,但您可以再次缩进.(重复上一个命令).
如果您是正常模式,将光标放在第一行的任何位置:
>> 将缩进该行,4>> 将缩进所有四行,>3j 将以不同的方式做同样的事情(从这一行缩进到三行),>}将缩进所有行直到段落结束(即到第一个空行,请参阅:help object-motions),和>ap将所有缩进的行的一个 p -aragraph(见:help text-objects),即使你的光标不在第一线.同样,您可以通过.更深的缩进级别重复这些命令(或者您可以shiftwidth适当地设置).
如果你的文件很好地由"段落"组成(我的大部分代码和散文都是),我认为你会发现ap文本对象是处理这类文本块的最常用方法.您还可以使用text-objects加速视觉选择.