ZSH 自动完成:突出显示已输入的建议的前缀

ZSH 自动完成:突出显示已输入的建议的前缀

我已经将 ZSH 配置为具有类似 bash 的自动完成功能

setopt noautomenu
setopt nomenucomplete

因此,在按下 Tab 时,它只会完成所有建议中唯一的前缀,并且在第二次按下 Tab 时,它会显示带有此前缀的所有可能完成的列表。有没有办法突出显示建议中已输入的部分?

因此,例如,如果键入“do”并按两次 Tab 键以显示建议,则会显示类似以下内容的内容:

评论

下载量

克尔

答案1

zsh 附带的最接近的东西是show-ambiguity风格。它突出显示第一个尚未输入的字符。

zstyle ':completion:*' show-ambiguity true

默认突出显示为下划线。您可以将 替换true1粗体、'1;31'粗体红色、1;41粗体和红色背景等。

除了不完全是你想要的之外,它还有一个主要缺点:根据文件类型抑制文件名的颜色。鉴于如何它是在内心深处处理的_main_complete,在不修补 zsh 代码的情况下调整它的工作方式看起来真的很困难。

相关内容