我基本上遵循这个(相当过时)作者:Hector Leiva因为我希望当我 ssh 到特定主机时我的 iTerm 配色方案会改变。
我正在使用 ZSH 和oh-my-zsh
。
一切正常(即当我 ssh 时 iTerm 配置文件会发生变化)除了制表符补全。
当我输入<tab>
完 后按下 时ssh
,zsh 会提供文件/文件夹名称而不是主机名来进行补全。如果没有 ssh 的附加功能 tab 补全工作正常。
我知道我的唯一“特殊之处”.zshrc
是zstyle
使用附加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 集成。