当我想在vim中打开文件时,我输入:e来查看磁盘上的目录(设置wildmenu)。 Vim向我显示了我的目录列表,然后我按Tab键几次选择我需要的目录,当我选择该目录时(vim突出显示它)我该怎么办才能在当前级别停止完成并进入该目录?
我知道在插入模式完成时,它来自vim帮助文件ctrl-y:
*complete_CTRL-Y*
When the popup menu is displayed you can use CTRL-Y to stop completion and
accept the currently selected entry. The CTRL-Y is not inserted. Typing a
space, Enter, or some other unprintable character will leave completion mode
and insert that typed character."
如何在命令模式下执行此操作?
答案 0 :(得分:11)
我认为在命令模式下 Ctrl E
来自vim docs,
*complete_CTRL-E*
完成激活后,您可以使用CTRL-E来停止它并返回到 最初打字的文字。不会插入CTRL-E。
我在我的gVim中试过这个并且它有效。
编辑:感谢@François的建议, Ctrl D 与其他一些信息做同样的事情。即它在当前级别停止完成,并显示当前选择的内容
像
这样的东西:e eclipse-cpp-indigo-SR2-incubation-win32-x86_64\eclipse\ <Ctrl><D>
artifacts.xml eclipse.exe epl-v10.html p2\
configuration\ eclipse.ini features\ plugins\
dropins\ eclipsec.exe notice.html readme\
除了在eclipse目录级别停止完成外,它还显示文件夹eclipse
内的内容。
答案 1 :(得分:1)
按Tab键到达所需目录后,按右箭头键(或键入字符并将其删除)。完成后,使用目录作为基础目录并遍历其子目录。
例如,您在当前目录中具有以下文件结构:
- a - b - c - d
键入e命令并按Tab键。第一个建议的目录是。再次按Tab键选择下一个目录 - b。现在按右箭头键。之后,选择了b目录并在其中开始完成。
正如我之前所说,你可以输入一个字符并将其删除。如果您留下一个字符(或一系列字符,例如前缀),它将被用作过滤器(仅选择名称以前缀开头的那些目录)。
我认为还有其他解决方案。但上面的两个对我来说已足够了。
答案 2 :(得分:0)
还有一个选择:当我想选择并继续时,我只需输入另一个“/”并继续标签。在我的状态行看起来有点难看,但这是一次按键,我不必离开我的主页。