2014-03-04 106 views
1

我刚刚开始在Vim。我喜欢的一个功能是>>和< <用于缩进/取消缩进一行,而不需要将光标放在行的开头。我使用3的移位宽度,扩展到空格。“Snappy”缩进Vim?

我的问题是,当使用>>或< <有没有办法让这条线“对齐”到最近的“完美”缩进?即对我来说,这将是第四列,第七,第十,等等。对于深度嵌套的缩进级别,这将非常方便。

或者(虽然稍微不令人满意/不太理想):一种从行首移除所有空白的方法,然后我可以多次使用>>。

回答

5

shiftround选项将四舍五入到最接近的shiftwidth空间量。

+0

完美,这正是我需要的。谢谢。 – user2625911

0

Vim具有自动缩进模式。对于一个答案,这是一个有点大的话题,但:help autoindent可能是一个好的开始。

此外,==命令将根据之前的行和当前缩进模式的行为缩进当前行。 (这适用的=滤波器到当前行。)

我通常适用==到行首先为“校准”,它于参考压痕,并从那里拨弄>><<

或者,在多行上:目视选择,然后=

+0

嗨,这个答案对我也很有用,谢谢。我认为通过手动完成所有这些,我正在避免学习Vim的自动缩进功能,这可能是“真正的”问题。干杯。 – user2625911

+0

如果你真的想疯了,gg = G只是缩进整个文件,或者它的一些子集,只要你可以找出运动击键。 – QuestionC