自从知道了Zsh之后我的shell一直使用Zsh加ohmyzsh配置文件,可是自从换成openSUSE后Zsh补全一直有问题,问题症状是如果输入要补全的命令的前两个字符Zsh不会进行补全,而是直接确认,例如这样:
我要补全ssh,先输入ss,按tab后一般是出现各种补全选项,但是却直接变成了ss.
这个问题一直放在那里放着没有解决,昨天弄了半天总算解决了:
其实解决方法很简单把openSUSE默认的zshrc换掉就可以了。我之前用Ubuntu的时候补全正常于是我就把openSUSE下面的/etc/zshrc换成Ubuntu下面的同名文件,然后就正常了。
不过这样但输入没有安装的命令是就不会提示安装软件包了,不折这个问题也很容易解决,把下面的配置复制到/etc/zshrc就可以了:
fpath=( $fpath /etc/zsh_completion.d )