在vim中使用“f”命令搜索不止当前行的方法

4

我知道从哲学角度来看,f/F命令用于在当前行中搜索。但是,除了使用 [LINE]G f之外,有没有其他最好的方法以 f 命令的方式跳转到文件中的其他位置呢?


精确复制:https://dev59.com/Nm865IYBdhLWcg3wOb5h - glts
3个回答

6
将以下这行添加到你的~/.vimrc文件中。
set incsearch

要启用增量搜索并使用/foo<CR>向前搜索或?bar<CR>向后搜索。

请注意,与fFtT一样,/?也可以作为dcsv的运动非常有用。

如果您不介意使用插件,则有许多插件专门设计用于多维fFtT,例如这个。在vim.org上查看。


1
'dcsv'是什么? - barlop
1
运算符 dcsv - romainl
@romainl 在这里有个“啊哈”时刻!从未在 FfTt 上使用过 dcsv,所以得试试?和 /。 - Stephane Rolland

2
你可能需要使用vim插件EasyMotion, <Leader>f<char>将从当前行搜索到当前窗口的末尾。 <Leader>F<char>将从当前行向后搜索到当前窗口的开头。
有关所有用法,请参阅: :help easymotion.txt

谢谢你,+1。不过,我更喜欢一个非插件的解决方案(因为我不想依赖于插件并且习惯它)。如果我得不到非插件的解决方案,我会接受你的建议。 - user623990
1
以非插件的方式,输入“/”(向前搜索)或“?”(向后搜索),然后输入搜索模式。使用“n”重复上一次搜索,使用“N”在相反方向上重复上一次搜索。顺便说一下,easymotion易于使用,因为它类似于标准的Vim运动。 - swpd

1

Christian Brabandt的ft_improved插件扩展了内置的f/t命令,可以在后续行中进行搜索。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接