Así que acabo de cambiar el tema de color de mi terminal (termitas) a solarizado (claro), pero parece que no afectará alsamixer
. Me gustaría tener un fondo claro. Cambié la configuración de termite
y .Xresources
al tema de color solarizado...
Respuesta1
Esto se debe a que alsamixer
establece activamente su color de fondo en negro. En términos deCódigos de escape ANSIesto significa que envía la ^[[40m
secuencia. Puedes verificar esto jugando con su salida:
Ejecute
alsamixer
mientras redirige su salida a un archivo:$ alsamixer > alsamixer.ansi
Utilice Esco Ctrl+Cpara salir. También puedes usar
$ alsamixer | tee alsamixer.ansi
si desea ver el resultado al mismo tiempo.
Quite las partes ofensivas:
$ sed -r -e 's/^[\[40m//g' -e 's/^[\[H^[\[2J.{,80}$//' < am.ansi
la primera expresión regular elimina el fondo negro mientras que la última elimina la secuencia para borrar la pantalla al salir. Tenga en cuenta que
^[
en realidad es un único carácter ESC, que en la terminal generalmente se produce mediante Ctrl+V Esc. La última pantalla de alsamixer ahora debería mostrarse con su fondo predeterminado.
También puedes intentar encadenarlo:
$ alsamixer | sed -u 's/^[\[40m//g'
que en algunos casos puede mostrarle el alsamixer de vez en cuando; el problema aquí es que la salida producida es una línea y, por lo tanto, sed
solo comienza a procesarla una vez que su búfer interno se llena lo suficiente. Así podrás olvidarte de la interactividad.
En cuanto a su pregunta: la solución es una recompilación o un filtro que eliminaría las secuencias con un almacenamiento en búfer mínimo.