我刚刚开始在Vim。我喜欢的一个功能是>>和< <用于缩进/取消缩进一行,而不需要将光标放在行的开头。我使用3的移位宽度,扩展到空格。“Snappy”缩进Vim?
我的问题是,当使用>>或< <有没有办法让这条线“对齐”到最近的“完美”缩进?即对我来说,这将是第四列,第七,第十,等等。对于深度嵌套的缩进级别,这将非常方便。
或者(虽然稍微不令人满意/不太理想):一种从行首移除所有空白的方法,然后我可以多次使用>>。
我刚刚开始在Vim。我喜欢的一个功能是>>和< <用于缩进/取消缩进一行,而不需要将光标放在行的开头。我使用3的移位宽度,扩展到空格。“Snappy”缩进Vim?
我的问题是,当使用>>或< <有没有办法让这条线“对齐”到最近的“完美”缩进?即对我来说,这将是第四列,第七,第十,等等。对于深度嵌套的缩进级别,这将非常方便。
或者(虽然稍微不令人满意/不太理想):一种从行首移除所有空白的方法,然后我可以多次使用>>。
shiftround
选项将四舍五入到最接近的shiftwidth
空间量。
Vim具有自动缩进模式。对于一个答案,这是一个有点大的话题,但:help autoindent
可能是一个好的开始。
此外,==
命令将根据之前的行和当前缩进模式的行为缩进当前行。 (这适用的=
滤波器到当前行。)
我通常适用==
到行首先为“校准”,它于参考压痕,并从那里拨弄>>
和<<
。
或者,在多行上:目视选择,然后=
。
嗨,这个答案对我也很有用,谢谢。我认为通过手动完成所有这些,我正在避免学习Vim的自动缩进功能,这可能是“真正的”问题。干杯。 – user2625911
如果你真的想疯了,gg = G只是缩进整个文件,或者它的一些子集,只要你可以找出运动击键。 – QuestionC
完美,这正是我需要的。谢谢。 – user2625911