pea*_*eak 7

对JQ_COLORS环境变量的支持已在2017年4月29日(即 jq 1.5发布之后)添加到开发版本中,其中包含以下文档:

要配置其他颜色,只需将JQ_COLORS 环境变量设置为部分终端转义序列的冒号分隔列表,例如"1;31",顺序为:

- color for `null`
- color for `false`
- color for `true`
- color for numbers
- color for strings
- color for arrays
- color for objects
Run Code Online (Sandbox Code Playgroud)

默认配色方案与设置相同 "JQ_COLORS=1;30:0;39:0;39:0;39:0;32:1;39:1;39"

这不是VT100 / ANSI转义的手册。但是,这些颜色规范中的每一个都应由两个数字组成,并用分号分隔,其中第一个数字是其中一个:

- 1 (bright)
- 2 (dim)
- 4 (underscore)
- 5 (blink)
- 7 (reverse)
- 8 (hidden)
Run Code Online (Sandbox Code Playgroud)

第二个是其中之一:

- 30 (black)
- 31 (red)
- 32 (green)
- 33 (yellow)
- 34 (blue)
- 35 (magenta)
- 36 (cyan)
- 37 (white)
Run Code Online (Sandbox Code Playgroud)

  • TLDR 如果您来到这里是因为您使用的是深色主题并且“null”值不可见:设置此环境变量以将黑色粗体不可见“null”切换为红色非粗体:“export JQ_COLORS='0” ;31:0;39:0;39:0;39:0;32:1;39:1;39'` - 影响此部分的部分是初始字符“0;31”,它翻译为“非粗体;”红色`。将“0;”更改为“1;”以加粗,将“31”更改为“37”以使其白色且不具有干扰性。 (9认同)
  • 有一个开放的拉取请求支持更改对象键的颜色,但两年后尚未合并。https://github.com/stedolan/jq/pull/1791 (3认同)
  • 1.5 版似乎忽略了这一点。 (2认同)
  • 有没有办法改变键的颜色,这实际上是我感兴趣的全部改变。 (2认同)
  • 我相信你想要 `FIELD_COLOR`,它在 [src/jv_print.c 第 35 行](https://github.com/stedolan/jq/blob/6d89e297febdbcbad4ecf201e56fc8ec99f67137/src/jv_print.c#L35) 中设置。 (2认同)