日晒配色方案 alsamixer

日晒配色方案 alsamixer

所以我只是将我的终端(白蚁)颜色主题更改为日晒(光),但似乎它不会影响alsamixer.我想要一个浅色背景。我将termite和 的配置更改.Xresources为日光颜色主题......

在此输入图像描述

答案1

这是因为alsamixer主动将其背景颜色设置为黑色。按照ANSI 转义码这意味着它发送^[[40m序列。您可以通过摆弄其输出来验证这一点:

  1. 运行alsamixer时将其输出重定向到文件:

    $ alsamixer > alsamixer.ansi
    

    使用EscCtrl+C退出。您还可以使用

    $ alsamixer | tee alsamixer.ansi
    

    如果你想同时看到输出。

  2. 剥去有问题的部分:

    $ sed -r -e 's/^[\[40m//g' -e 's/^[\[H^[\[2J.{,80}$//' < am.ansi
    

    第一个正则表达式删除黑色背景,而后者删除退出时清除屏幕的序列。请注意,这^[实际上是一个 ESC 字符,在终端中通常由Ctrl+V Esc.最后一个 alsamixer 屏幕现在应该以默认背景显示。

您还可以尝试链接它:

    $ alsamixer | sed -u 's/^[\[40m//g'

在某些情况下,可能会时不时地向您显示 alsamixer - 这里的问题是,产生的输出是一行,因此sed只有在其内部缓冲区填满时才开始处理它。因此你可以忘记交互性。

至于你的问题:修复要么是重新编译,要么是一个过滤器,它将以最小的缓冲删除序列。

相关内容