命令行完成以进入Vim中的文件夹

时间:2012-08-16 16:31:06

标签: vim autocomplete

当我执行:edit C:\并保持标签时,vim会遍历所有文件和文件夹。当我想输入文件夹时,我想我可以做Ctrl-E。但只是偶然,我在我要输入的文件夹后键入了另一个反斜杠,例如:edit C:\Documents\\。这似乎也有效。现在,如果我点击标签,vim开始在C:\ Documents中的文件/文件夹中循环。

我想知道这背后的原因是什么。任何人都可以指向我完全解释此行为的参考手册吗?是否存在更好的方法来停止当前目录中的完成并在另一个目录中启动命令行完成?

2 个答案:

答案 0 :(得分:2)

但是,在完成期间修改文本(例如,插入反斜杠)时,没有记录,vim只会自动完成字符串的 rest 。这是因为它以当前条目为基础开始新的完成周期。

答案 1 :(得分:1)

我使用此映射,类似于结束插入模式完成:

" c_CTRL-Y      Yes: Stop wildmode completion. Useful when completing
"           directory names and wanting to use the currently
"           completed directory and now complete its contents,
"           instead of continuing to iterate the directory names.
cnoremap <C-Y> <Space><BS>

但是当你在命令行的末尾时,Ctrl-E也能正常工作。