我想在Vim中进行以下搜索
(reverse-i-search)`':
输入上一个命令的单词,即可获得完整的命令。
我知道Vim中的时间历史工具
q:
但是,反向搜索并没有那么有用。
如何在Vim中进行与终端类似的反向搜索?
答案 0 :(得分:75)
在正常模式下键入q:
以打开命令窗口。您可以使用常规vim命令在此搜索/编辑。您以普通模式开始。按Enter
执行命令。
此方法可让您搜索整个命令,而不仅仅是行的开头。
答案 1 :(得分:71)
输入上一个命令的前几个字母,然后按< Up>箭头(或Ctrl + p)。
:set li<up>
:set lines=75
不要忘记检查历史记录选项并将其设置为足够大的值
:set history=1000
答案 2 :(得分:11)
以下是Vim's commandline history的文档,另请参阅Vim's commandline history上的文档部分,其中介绍了历史记录中的键绑定。看起来你可以说:foo
,然后点击向上箭头找到以foo开头的最后一个命令。
答案 3 :(得分:5)
我也在寻找这个(最后在想知道为什么它没有内置一段时间之后)并决定我无法抗拒鞭打实施,所以你走了:{{3 }}
它应该像shell一样工作 - 但是仍然有一些基本的东西丢失了(比如再次按下^ R跳到下一个匹配),但是我使用的只是在第一个版本中,我计划在未来几周内添加剩余部分,因为我有时间。
答案 4 :(得分:4)
除了q:在正常模式下,您可以在命令行模式下使用Ctrl + F打开命令历史记录窗口并使用常规搜索命令,如/,?
答案 5 :(得分:2)
使用FZF模糊搜索命令::History: