当我在vim中打开一个新文件并使用tab完成时,它会完成整个文件名而不是像bash那样进行部分匹配.有没有选项使这个文件名选项卡完成工作更像bash?
mic*_*ael 403
我个人用
set wildmode=longest,list,full
set wildmenu
Run Code Online (Sandbox Code Playgroud)
当您键入第一个选项卡时,命中将尽可能完成,第二个选项卡命中将提供一个列表,第三个和后续选项卡将循环完成选项,这样您就可以在没有其他键的情况下完成文件
bash就像是
set wildmode=longest,list
Run Code Online (Sandbox Code Playgroud)
但是充分非常方便
wey*_*amz 21
最接近Bash完成的行为应该是
set wildmode=longest:full,full
Run Code Online (Sandbox Code Playgroud)
键入几个字符后,按一次选项卡将显示所有可用的匹配项wildmenu.这与迈克尔的答案不同,后者在命令行下面打开了一个类似quickfix的窗口.
然后,您可以继续键入其余字符,或再次按Tab键以自动完成第一场比赛并围绕它进行圈选.
如果您不想设置wildmenu,则可以在要打开文件时始终按Ctrl+ L.Ctrl+ L将完成文件名,如bash完成.
我假设您正在 Vim 中通过Ctrl+使用自动完成功能N来搜索当前缓冲区。当您使用此命令时,您将获得解决方案列表;只需重复该命令即可转到列表中的下一项。所有自动完成命令也是如此。当它们填满整个单词时,您可以继续浏览列表,直到找到您想要使用的单词。
这可能是一个更有用的命令:Ctrl+ P。唯一的区别是Ctrl+P在缓冲区中向后搜索,而Ctrl+N向前搜索...实际上,它们都将提供具有相同元素的列表,并且它们可能只是以不同的顺序出现。