【发布时间】:2019-05-28 16:33:30
【问题描述】:
我目前正在使用 NCM2 作为我的自动完成插件,但我不确定问题是一般的弹出菜单还是 NCM2。
当我尝试自动完成文件名时,只有在我输入至少 3 个字符后才会出现弹出菜单。即使额外的第三个字符不会限制建议。
例如,我有以下目录:
- 4822283_ERCOFTAC_m3c1_SST.dat
- 4822299_ERCOFTAC_m3c1_SBES.log
- 4822299_FluentSBES.jou
- ERCOFTAC_m3c1_SBES.cas
- ERCOFTAC_m3c1_SBES.o4822299
- fluentSBES.sh
如果我输入48,什么都不会出现:
如果我输入482,那么我会得到自动完成菜单:
这是非常一致的行为。在处理以数字开头的文件名时,我至少注意到这一点。
所以问题是我能不能
A) 更改显示自动完成菜单所需的字符数或
B) 找到打开自动完成菜单的任何快捷方式(类似于 VS Code 中的“Trigger Suggest”命令)
你可以看到我的init.vimhere的副本。
编辑:
Yedhin 的回答解决了方法 A),但是它也会导致自动弹出菜单始终打开,老实说这很烦人。
为了解决最理想的 B) 项,我找到了 ncm2_manual_trigger 函数。所以理论上,通过在init.vim中输入以下内容,您可以随时手动触发自动弹出。
let g:ncm2#auto_popup = 0
imap <C-a> <Plug>(ncm2_manual_trigger)
但是,如this issue posted on the ncm2 repo 中所述,manual_trigger 仍然依赖于ncm2#complete_length 参数来确定要显示的内容。如果自动触发器尚未触发弹出菜单,这将导致手动触发器不显示弹出菜单。我们现在只需要等待问题得到解决(在撰写本文时,应该很快就能判断出问题上的“my-next-task”标签)。
【问题讨论】:
标签: vim autocomplete popup neovim