在Vim插入模式下,有没有办法添加文件路径自动完成?

时间:2009-12-17 04:36:17

标签: vim shell autocomplete text-editor

我编写了很多shell脚本,而且我不得不输入文件路径。我想知道是否有人知道在插入模式下让Vim自动完成文件路径的方法,就像你在你最喜欢的shell中一样,你可以选择完成目录或文件的路径。

如果您可以将shell的 CTRL D 功能转换为Vim插入模式(即查看当前路径中的文件/目录),可以获得额外的功劳。

4 个答案:

答案 0 :(得分:155)

对于file name全向完成,您可以使用:

控制 - X 控制 - ˚F

答案 1 :(得分:18)

ctrl - x ctrl - f

:he compl-filename

答案 2 :(得分:16)

以@CMS和@michael出色的答案为基础

当使用 ctrl + X ctrl + f 命令序列时,它将显示一个文件列表当前目录。我花了一分钟寻找正确的键在不同的文件名之间上下移动。正确的键是Ctrl-n和Ctrl-p。您几乎可以使用任何其他键(例如 Space )来选择并继续键入。

此外,如果您尚未插入要插入的文件/目录,则可以按如下方式进入文件树结构:

  1. 可选择输入目录的某些部分。您甚至可以使用../../作为示例!
  2. ctrl + X ctrl + f 并从列表中选择树中的第一项。
  3. 接下来再次按 ctrl + f ,同时突出显示正确的项目,以显示目录树结构中下一级别的列表。
  4. 您可以继续这样做,直到找到要在文档中插入的目录/文件。

答案 3 :(得分:0)

我遇到了类似的问题。我找到了解决方案:

    sudo apt-get install realpath

在VIM naviagte中以正常模式输入文件:

    :r !realpath /path/to/file

在!realpatch之后以非插入模式导航时,您可以使用我们的按键。

VOILA! TAB正在重新开始工作!