每当您要在vim中搜索文本时,都将键入/,然后键入您要查找的字符串。
但是,当字符串很长且您想多次执行此操作时,是否有一种方法可以使您不必多次键入/andthisreallylongstring
?
每当您要在vim中搜索文本时,都将键入/,然后键入您要查找的字符串。
但是,当字符串很长且您想多次执行此操作时,是否有一种方法可以使您不必多次键入/andthisreallylongstring
?
Answers:
完成搜索后,按“ n”,然后将重复上一个操作(搜索)。
N
将转到以前的结果。
/
会记得最后一个搜索字词
q/
还会显示一个包含所有最近搜索词的可编辑窗口。
/
和Enter将重复上一次搜索。点击?
并回车将向后重复先前的搜索。
/Ctrl-F
是一种替代方法,q/
它可能更容易记忆(ctrl-f == find)。与q一样,它也适用于命令模式。
如果搜索的字符串在光标下方,则可以键入*以向前搜索它,也#可以向后搜索它。
两个额外的技巧,可以让你更高效的搜索是set hlsearch
和
set incsearch
。
set hlsearch
,突出显示您的搜索结果。键入:noh
以在不再需要它们时将其关闭。
set incsearch
打开增量搜索。
摘自 :help incsearch
键入搜索命令时,显示到目前为止已键入的模式在哪里匹配。匹配的字符串突出显示。如果该模式无效或找不到,则不显示任何内容。屏幕将经常更新,这仅在快速终端上有用。
如果不使用incsearch
,则仅在按下<CR>
搜索关键字后才会显示结果。
例:
您要搜寻 wildignore
您键入/wild
,第一个匹配项将自动突出显示。
然后输入i
,继续进行下一个正确的匹配。
另一个尚未覆盖的提示:按字符q
,然后按/
,将为您提供以前的搜索词的列表。您可以像编辑文档中的任何其他行一样编辑它们,然后按Enter键以将其重新用于新搜索。
仅打/不跟随任何参数对您不起作用吗?在我们所有的系统上,这都会导致重复进行最后一次搜索。
/string
—向前搜索字符串?string
—搜索字符串n
—搜索字符串的下一个实例N
—搜索字符串的先前实例您要输入的长字符串是变量名吗?还是您的文字中有一个长字符串?然后点击*
搜索光标下的单词/字符串。