重现步骤
git clone https://github.com/MichinariNukazawa/vecterion_vge.git
cd vecterion_vge
- 输入
vim include/
tab - 输入
vim include/et_co
tab
我期望看到什么
- 显示文件列表
include/
- 自动完成文件路径
vim include/et_color_panel.h
我看到的是
1.和2.都不起作用。
其他
两者都
ls include/
tab有效
ls include/et_co
tab
。
父目录(主目录)的输入vim vecterion_vge/include/et_co
tab确实有效。
我怎样才能解决这个问题?
答案1
也许你关闭了与 vim 相关的完成规范。
complete -p vim
并检查输出:
complete -F _filedir_xspec vim
如果与上一行类似,则运行命令:
complete -r vim
一般来说,与vim
你没有直接关系,你可以按照这些例子,针对你的情况进行修改:
第一个例子
您可以通过以下方式列出用户当前活动的所有完成例程,complete -p
或者列出系统中包含的所有完成:ls /etc/bash_completion.d/
完成由文件驱动/etc/bash_completion
,新的完成命令可以放在目录内/etc/bash_completion.d
您需要启用智能补全,编辑 /etc/bash.bashrc 文件。我认为您已经启用了,因为cd
Tab 补全。无论如何,通过删除行开头的 # 取消注释以下行:
#if [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
#fi
如您所见,一切都取决于bash_completion.d
文件里面的信息。
如果你甚至可以将 bash 智能完成扩展到你的vim
或apt
需要编辑/etc/bash_completion
和/etc/bash_completion.d
其他例子
如果您无权编辑文件或将档案添加到/etc
。您可以添加本地完成,例如, wp-cli
您可以下载完成定义并重命名以隐藏命令:
wget https://github.com/wp-cli/wp-cli/raw/master/utils/wp-completion.bash
rename wp-completion.bash .wp-completion.bash
现在编辑您的.bash_profile
使用nano .bash_profile
或vim
添加:
source /home/tu_usuario_del_host/.wp-completion.bash