使用自定义脚本更改 iTerm 配置文件时,zsh 中的 Tab 补全功能不起作用

使用自定义脚本更改 iTerm 配置文件时,zsh 中的 Tab 补全功能不起作用

我基本上遵循这个(相当过时)作者:Hector Leiva因为我希望当我 ssh 到特定主机时我的 iTerm 配色方案会改变。

我正在使用 ZSH 和oh-my-zsh

一切正常(即当我 ssh 时 iTerm 配置文件会发生变化)除了制表符补全

当我输入<tab>完 后按下 时ssh,zsh 会提供文件/文件夹名称而不是主机名来进行补全。如果没有 ssh 的附加功能 tab 补全工作正常

我知道我的唯一“特殊之处”.zshrczstyle使用附加known-hosts文件来完成的定义。但是,我也尝试过删除它,但无济于事。

zstyle ':completion:*:*:ssh:*:hosts' known-hosts-files /etc/ssh/ssh_known_hosts ~/.ssh/known_hosts <some_path>/ssh-hostkeys/more_known_hosts

看来,对的调用compdef并没有产生预期的魔力?

compdef _ssh tabc=ssh

附言:我无法使用 iTerm2 的内置自动配置文件切换(在“配置文件”>“高级”中),因为我无法在所有地方安装 Shell 集成。

相关内容