如何有效地使用Vim:万用选单

42fyovps  于 2022-11-11  发布在  其他
关注(0)|答案(5)|浏览(162)

我对Vim菜单的使用有点困惑,我有set wildmenuset wildmode=list:longest,full,但我一辈子都不知道如何调用和使用补全功能。
这个功能有用吗?为什么?怎么用?这个功能到底是做什么的?换句话说,是什么决定了完成列表的内容?
任何提示和示例用法将不胜感激。

von4xj4u

von4xj4u1#

wildmenuwildmode用于命令行完成。最简单的尝试方法是使用:color <Tab>:命令行垂直“展开”,在列 * 和 * 中显示您计算机上可用的所有配色方案的列表,您可以使用<Tab>(向前)和<S-Tab>(向后)进行导航。
命令行完成和wildmenu的行为取决于wildmode
有关详细信息,请参阅:help wildmode:help wildmenu

gcmastyq

gcmastyq2#

至少对我来说,最舒服的选择可能是:

set wildmenu
set wildmode=longest:full,full

这意味着在第一个<Tab>上,它将完成最长的公共字符串,并调用wildmenu(一个水平的、不显眼的小菜单)。在下一个<Tab>上,它将完成第一个可选字符串,并开始循环其余的字符串。你可以分别使用<Tab><S-Tab>来回。
一个很棒的例子是如何wildmenu是非常有用的,是完成缓冲区,使用我张贴的配置,然后尝试:
:b<Tab>

8e2ybdfx

8e2ybdfx3#

我最喜欢的是

set wildmenu
set wildmode=longest:list,full

第一个选项卡将完成最长的字符串并显示匹配列表,然后第二个选项卡将完成第一个完全匹配并打开通配符菜单。

bxjv4tth

bxjv4tth4#

:set wildmode=list:longest允许您展开通配符菜单。
:set wildmenu允许您使用<Left><Right>在完成列表中导航。

slmsl1lt

slmsl1lt5#

您可能需要配置wildoptions。请参阅有关Vi和Vim堆栈交换的answer

相关问题