![在 vim 中按首字母在行之间移动](https://linux22.com/image/1346973/%E5%9C%A8%20vim%20%E4%B8%AD%E6%8C%89%E9%A6%96%E5%AD%97%E6%AF%8D%E5%9C%A8%E8%A1%8C%E4%B9%8B%E9%97%B4%E7%A7%BB%E5%8A%A8.png)
有没有办法在 vim 中通过首字母在行之间移动,就像我们通常在当前行使用“f+字母”一样,例如:
din (tuple_hash_ack_data),
wr_en (tuple_hash_ack_wr),
dout (ack_fifo_data),
rd_en (ack_fifo_rd),
empty (ack_fifo_empty),
data_count (tuple_hash_count),
almost_full (tuple_hash_almost_full)
首先光标停在第一行:
din (tuple_hash_ack_data),
我想要跳到这一行:
almost_full (tuple_hash_almost_full)
我想输入类似“fa”之类的内容,可以吗?
答案1
/^a
将带您到下一行以“a”开头的行 - 在正则表达式语法中,^
匹配行的开头,因此/^a
搜索行的开头,紧接着是 a。
答案2
尤其是使用 时,可以通过(down) 和(up):set relativenumber
导航到附近行的开头。请注意,和等命令也可以以 , 为前缀。[count]_
[count]-
j
k
[count]
答案3
当涉及到在窗口中移动时,你应该给插件精准跳跃 一个机会。我使用它与映射:
nnoremap ,f :call PreciseJumpF(-1, -1, 0)<CR>
vnoremap ,f <ESC>:call PreciseJumpF(-1, -1, 1)<CR>
onoremap ,f :call PreciseJumpF(-1, -1, 0)<CR>
因此我输入,f
一个字符,然后所有出现该字符的地方都会突出显示。我只需输入相应的字符,光标就会跳转到那里。