我已经将 ZSH 配置为具有类似 bash 的自动完成功能
setopt noautomenu
setopt nomenucomplete
因此,在按下 Tab 时,它只会完成所有建议中唯一的前缀,并且在第二次按下 Tab 时,它会显示带有此前缀的所有可能完成的列表。有没有办法突出显示建议中已输入的部分?
因此,例如,如果键入“do”并按两次 Tab 键以显示建议,则会显示类似以下内容的内容:
做评论
做下载量
做克尔
答案1
zsh 附带的最接近的东西是show-ambiguity
风格。它突出显示第一个尚未输入的字符。
zstyle ':completion:*' show-ambiguity true
默认突出显示为下划线。您可以将 替换true
为1
粗体、'1;31'
粗体红色、1;41
粗体和红色背景等。
除了不完全是你想要的之外,它还有一个主要缺点:根据文件类型抑制文件名的颜色。鉴于如何它是在内心深处处理的_main_complete
,在不修补 zsh 代码的情况下调整它的工作方式看起来真的很困难。