[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Poner fondo en color blanco en la consola (BASH) de Debian 9.3.0 Net-install (sin entorno gráfico)



Gracias Lividineitor por tu aportación.

Anoche, tras varios días investigando y probando cosas, ya lo hemos resuelto.

Mira aquí: https://exdebian.org/comment/4586#comment-4586

El 9 de enero de 2018, 21:29, Lividineitor <lividineitor@gmail.com> escribió:
Hola, no hago esto seguido, espero que sí se conteste de está manera.


Bueno, puede ser que exista una solución más elegante, pero al menos funciona.


Buscando un poco, encontré lo siguiente:


https://bbs.archlinux.org/viewtopic.php?id=167717


 Coincide con el enlace que tú tienes:


https://wiki.archlinux.org/index.php/User:Isacdaavid/Linux_Console


En la sección donde dice "if [ "$TERM" = "linux" ]; then..." aparecen los comandos de "echo" con los que puedes modificar el color. Fíjate que en la línea dos está el cambio de color de fondo, que prácticamente redefine el valor de la variable para el color de fondo. Cabe remarcar que debes ser cuidadoso al cambiar los colores, ya que si pones el fondo del mismo color que tu texto activo, todo se va a ver del mismo color, pero basta con cambiar de tty (Ctrl+Alt+F1-6). Por otro lado, si modificas la línea de PS1, como dice uno de tus enlaces, el color de fondo que elijas no cambia si nada más modificas los colores del texto, lo que es cómodo si ya tienes el color deseado, pero también se puede cambiar el color de fondo directamente ahí, usando los valores como dice en:


https://misc.flogisoft.com/bash/tip_colors_and_formatting


También recuerda que si haces un cambio de color tienes que recargar bash y si el cambio aparece de manera automática, como en el caso de usar el comando "echo", es bueno usar el comando "clear" para "refrescar" la pantalla del tty.


Por otro lado:


if [ "$TERM" = "linux" ]; then
    echo -en "\e]P0222222" #black    -> this is the background color as well.
    echo -en "\e]P1803232" #darkred
    echo -en "\e]P25b762f" #darkgreen
    echo -en "\e]P3aa9943" #brown
    echo -en "\e]P4324c80" #darkblue
    echo -en "\e]P5706c9a" #darkmagenta
    echo -en "\e]P692b19e" #darkcyan
    echo -en "\e]P7ffffff" #lightgray
    echo -en "\e]P8222222" #darkgray
    echo -en "\e]P9982b2b" #red
    echo -en "\e]PA89b83f" #green
    echo -en "\e]PBefef60" #yellow
    echo -en "\e]PC2b4f98" #blue
    echo -en "\e]PD826ab1" #magenta
    echo -en "\e]PEa1cdcd" #cyan
    echo -en "\e]PFdedede" #white    -> this is the foreground color as well.
    clear                  #repaint the whole background with the new color
fi


Modifica el color asociado a los 16 colores básicos que asignan a las secuencias de escape ANSI del 30-37 y 90-97 (que son las que aparecen en el primero de tus enlaces ^-^¡), por lo que puedes usar las secuencias para 256 colores.


Ahora, en qué parte están definidos los valores para cada uno de los 256 colores?, personalmente lo busqué hace tiempo y no encontré la solución, pero supongo que sería en el mismo lugar en donde los comandos "echo" realizan el cambio.


Recuerda que al reiniciar el sistema, los colores establecidos con el comando "echo" regresan a los valores por defecto. Y para cabiar el color de fondo nada más requieres escribir echo -en "\e]P0######", donde los símbolos # son para el valor hexadecimal del color que buscas "ffffff".


Lo probé en mi equipo y finciona, los cambios se aplican en la TTY que estás ejecutando hasta que los definas en tu .bashrc.



Reply to: