我最近一直在用 Java 编写代码来工作,我注意到我会编写一些代码,然后确定我需要将代码包装在 try/catch 块中。
我刚刚移动到行首并添加了一个制表符。
0 i <tab> <esc> k (repeat process until at beginning or end of block)
现在,前三四次缩进都没问题,但现在它变得乏味,而且我是一个懒惰的人。
有没有更简单的方法可以解决这个问题?
答案1
Shift另一个选项是按照 Ignacio 的建议使用+选择行V,然后按>(大于号)。这将根据您的缩进设置(shiftwidth、expandtab 等)进行缩进。
您还可以使用以下方法缩进多个级别数字>,例如2>缩进两级。
最后,如果 Vim 识别出文件类型(类型:set filetype?
,它应该打印filetype=java
),那么您可以选择上述任何代码并按=,它将使用该文件类型的规则修复缩进。
答案2
使用视觉 ( V) 或视觉线 ( ShiftV) 模式选择要缩进的行,按:,然后输入s/^/
CtrlVTab/
。
答案3
另一种方式:
CTRL+ v(这将启动可视块模式)
xj或 x k(其中 x 代表向下或向上的行数)
>(又名shift+ .)
这与上面的答案没有太大区别,但引入了块模式,这对于编辑多行非常有用。
答案4
Vim 比其他答案让你想象的要聪明得多:它能够自动重新缩进代码区域。通常,在尝试块,您只需键入=i{
- 实际上这适用于任何花括号块。就这样...只要您的缩进选项(cindent
, expandtab
, sw
)根据您的需要和喜好正确设置即可。
下一步是使用一个映射,它知道如何用你的尝试块(并且不会忘记在流程结束时重新缩进)。我有这样的事情对于 C++,将它适配到 Java 中并不会太复杂。(它只是需要另外两个库插件:lh-vim-lib和lh-地图工具。