由于源代码通常是缩进的,如果我可以移动到同一列中具有非空白字符的下一行/上一行,它将有助于快速导航源代码。使用下面的代码片段作为示例,并将光标放在最后}
上,有没有办法将光标导航到i,它开始if
?
if (condition) {
// some code
}
答案 0 :(得分:6)
要搜索相同的屏幕列,您可以使用特殊的/\%v
原子;可以使用virtcol('.')
查询当前列。在该位置断言非空格(\S
),并为其触发b
ackwards search()
:
:call search('\%' . virtcol('.') . 'v\S', 'bW')
您可以轻松将其转换为普通模式映射。
答案 1 :(得分:2)
我现在已在JumpToVerticalOccurrence plugin中实施此动议;默认情况下映射到]|
/ [|
。还有其他相关映射,例如]V{char}
映射,其工作方式与f
类似,但垂直方向。
因此,如果您不介意安装插件(以及依赖项),这会更强大且更实用(它也支持[count]
)。
答案 2 :(得分:1)
不完全符合您的要求,但如果您从}
开始并点击%
,则光标会移至匹配的{
。
答案 3 :(得分:1)
如果您的代码具有已定义的缩进系统,则jeetsukumaran/vim-indentwise对于跨缩进的块的相对,绝对或块作用域运动非常有效。