我正在使用Vim编辑器。这是我的情况:
1111111111111
2222222222222
3333333333333
4444444444444
以上是原始代码,我想让他们如下所示。我应该怎么做才能将它们全部向右移动?
1111111111111
2222222222222
3333333333333
4444444444444
发布于 2010-08-02 15:23:07
在命令模式下,可以使用>>
缩进一行。4>>
将缩进当前和接下来的三行。
如果你事先不知道有多少行(可能很大),你可以使用ranges。转到范围的第一行,输入ma
放置标记A,然后转到最后一行,输入>'a
,从这里缩进到标记A。您可以使用范围做各种奇妙的事情。
它们的缩进方式取决于几个方面,比如你的移位宽度设置。我总是使用相同的shiftwidth和tabstop设置,以避免出现问题:
:set ts=4 sw=4
(例如)。
发布于 2010-08-03 02:31:18
如果你已经在视觉模式下选择了这四行:>
会将它们向右移动shiftwidth
。移动后,视觉选择将消失,但您可以通过.
(重复上一条命令)再次缩进。
如果您是普通模式,请将光标放在第一行的任意位置:
>>
将缩进该行,4>>
将缩进所有四行,>3j
将以不同的方式执行相同的操作(从此行向下缩进到三行),>}
将缩进所有行,直到段落结束(即缩进到第一个空行,请参见:help object-motions
),and>ap
将缩进所有行,用于a p-aragraph (请参阅:help text-objects
)。即使你的光标不在第一行。同样,您可以通过.
重复这些命令以获得更深的缩进级别(或者您可以适当地设置shiftwidth
)。
如果您的文件很好地由“段落”组成(我的大部分代码和散文都是如此),我想您会发现ap
文本对象是处理这样的文本块的最常用方法。您还可以使用text-objects
来加快视觉选择速度。
发布于 2010-08-02 15:23:22
点击>
就这样。
https://stackoverflow.com/questions/3385753
复制相似问题