使用256色在zsh中突出显示语法?

时间:2014-12-23 13:00:22

标签: colors syntax-highlighting zsh prezto

我在zsh中使用prezto,而我的难点在于语法高亮,其中一个示例行是

'function' 'bg=green'

我也可以在这里,例如

'function' 'bg=blue,fg=yellow'

但是,我想利用我的256色终端(在我的情况下是konsole),在这种情况下我会想到像

这样的东西
'function' 'bg=$FG[021],fg=$FG[196]'
例如,假设我之前已经加载了频谱模块,那么它会起作用。

但我无法让它发挥作用。我检查过tput colors返回256,以及命令

 echo "$FG[214]Hello, World"

给我一​​个橙色输出。

无论如何,无论我是否使用频谱,我都希望能够更好地控制语法高亮,并且能够使用256种颜色。任何建议都会非常受欢迎!

2 个答案:

答案 0 :(得分:1)

您可以尝试:

export TERM='xterm-256color'

答案 1 :(得分:1)

您可以在此处指定颜色索引,如下所示:

'function' 'bg=21,fg=196'

zsh-syntax-highlighting可以直接从zsh' s Character Highlighting而不是ANSI转义序列中指定颜色。这个zsh手册描述了一个' fg = 颜色'如下:

  

FG = 颜色
  前景色应设置为颜色,十进制整数或八种最广泛支持的颜色之一的名称。

我们可以使用颜色索引而不是频谱模块存储在$FG[...]上的ANSI escpape序列。