colors - zsh 中使用 256 色的语法高亮显示?

标签 colors syntax-highlighting zsh prezto

我将 prezto 与 zsh 结合使用,我的困难在于语法突出显示,其中示例行是

'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 种颜色。非常欢迎任何建议!

最佳答案

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

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

zsh-syntax-highlighting 能够从 zsh 的 Character Highlighting 指定颜色而不是直接使用 ANSI 转义序列。本 zsh 手册对“fg=颜色”的描述如下:

fg=colour
 The foreground colour should be set to colour, a decimal integer or the name of one of the eight most widely-supported colours.

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

关于colors - zsh 中使用 256 色的语法高亮显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27620920/

相关文章:

curl - 为什么cURL请求在ZSH中的每个请求都返回百分号(%)?

java - 更改 Tab 和 JTable 之间的线条颜色

php - 用 LESS 反转所有颜色

bash - 可以通过 shell 重定向捕获彩色输出吗?

c# - 使用 C# 在 RichTextBox 中突出显示语法

Zsh 没有扩展变量中的路径

android - 如何在 android 中应用 RGB 滤色器后将图像保存在 sdcard 中

c# - 带有 Intellisense 的开源 C# 语法编辑器

php - 在 PHP 的 GeSHi 中设置 <PRE> 标签的最大宽度

bash - 如何将此 bash 补全函数转换为 zsh 补全函数?