文件名自动完成适用于 ls,但不适用于 vi

文件名自动完成适用于 ls,但不适用于 vi

为什么文件名自动完成功能对ls命令有效,但对vi我的 Ubuntu 16.04.5 LTS 无效?(Xfce4,bash)。我认为它以前有效,但现在不行了。

Matthieu 的回答,我尝试了示例链接,关注 Louis Soulez 的回答。但是,Vi 的自动完成功能仍然无法正常工作。它在某种程度上可以自动完成,但是当我没有在目录入口处给出起始模式时,它不会给我该目录的列表。

我的另一台 Ubuntu 机器没有/etc/bash_completion.d/vi这个文件,但 Vi 的自动完成功能一直运行良好。顺便说一下,/etc/bash_completion.d这台 Ubuntu 系统下的文件列表如下:

apport_completion desktop-file-validate libreoffice.sh axi-cache dkms ninja bazel gem1.9.1 pon cmake git-prompt pulseaudio-bash-completion.sh cpack grub ufw ctest initramfs-tools upstart debconf insserv

这些会影响 Vi 的完成度吗?你还有其他想法吗?

答案1

我猜你的/etc/bash_completion.d/vi文件被删除了。你应该从例如那个文件重新创建它ls

查看关于 bash 补全的 GNU 页面了解更多信息,或这个例子

相关内容