我目前已将 ZSH 突出显示设置如下:
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern line)
typeset -A ZSH_HIGHLIGHT_STYLES # For main-highlighter
ZSH_HIGHLIGHT_STYLES[command]='fg=blue'
ZSH_HIGHLIGHT_STYLES[function]='fg=green'
ZSH_HIGHLIGHT_STYLES[builtin]='fg=red'
ZSH_HIGHLIGHT_STYLES[unknown]='fg=green,bold'
ZSH_HIGHLIGHT_STYLES[arg0]='fg=white'
我想添加一个指令,以便命令字不是一个有效的命令(即不在PATH中,也不是函数或别名;即一个词瓦,将type w
打印没有找到) 以不同的颜色显示,这样我就可以发现在输入命令行时出现的输入错误。
例如:如果我想输入gawk
,但开始输入命令
gwk ...
相反(并且 gwk 在我的环境中不是一个有效的命令),我希望看到它有不同的颜色,以便我能够尽早注意到打字错误。
我首先想到的是arg0可以处理这个问题,但显然不能。
这可以实现吗?为此我应该使用哪种突出显示样式?
答案1
您需要使用unknown-token
:https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
PS:我坚持Zsh 插件 Z Colors可以将您的 转换$LS_COLORS
为zsh-syntax-highlighting
。它会自动处理这些事情。