macOS下zsh如何实现输入".."按Tab自动补全为"../"
macOS下zsh如何实现输入".."按Tab自动补全为"../"
嘿,我之前也碰到过这个小问题,给你两个亲测有效的解决办法,你可以挨个试试:
- 方法一:开启特殊目录补全规则
zsh默认可能没开启对..这类特殊相对路径的自动补全支持,你只需要在~/.zshrc里添加一行配置就行:
zstyle ':completion:*' special-dirs true
添加完之后,保存文件,在终端里运行source ~/.zshrc让配置生效,再试试输入cd ..然后按Tab,应该就能自动补全成cd ../了。
- 方法二:自定义补全绑定
如果第一种方法没起作用,那可以试试手动给..绑定补全规则,在~/.zshrc里加入这段代码:
compdef '_files -/ -W "$PWD/.." -g "../*"' ..
同样保存后执行source ~/.zshrc,再测试tab补全,这个配置是明确告诉zsh,当输入..时,补全对应的上级目录路径。
另外你提到试过空.zshrc和普通的compdef没效果,大概率是因为默认的zsh补全套件没有针对..做特殊处理,上面这两种配置刚好能补上这个缺口~
备注:内容来源于stack exchange,提问作者Cyberwiz
相关产品推荐
相关产品推荐

