我正在开发一个 ruby on rails 应用程序。突然间,命令行 tab complete 对 vim 停止工作,只对文件和 vim 命令有效(即对其他命令、ls、rm 等有效)。
经过进一步调查 - 这仅发生在特定目录中,即我的 rails 应用程序的主目录。如果我进入 rails 应用程序中的子目录或机器上的任何其他目录,制表符完成将再次起作用。如果我进入任何其他 rails 应用程序的根目录,它就可以正常工作。我还尝试重命名目录,并将目录的内容复制到另一个目录,但这也不起作用。
它不仅对文件不起作用,而且对任何其他命令都起作用 - ls,rm 等。但是当我执行 vim /path/to/file/,然后按 tab 查看该目录中的文件列表时,只显示其他目录,而不显示文件。
我正在使用 ubuntu 12.04。此外,我尝试重新安装 vim、重新启动、删除 ~/.viminfo(没有 vimrc 文件),但都不起作用。如能得到任何帮助,我将不胜感激!
答案1
搞清楚了 - 不太清楚这会如何影响文件的制表符补全,但我的应用程序主目录中有一个名为“!”的文件(可能是我在 vim 中输入 :wq! 太快时错误创建的)。当我删除文件“!”时,制表符补全又正常工作了。