Poner fondo de color blanco en "Bash" Debian 9.3.0 Net-install
Poner fondo de color blanco en "Bash" Debian 9.3.0 Net-install
Edito: la solución aquí: https://exdebian.org/comment/4586#comment-4586
Un cordial saludo, y feliz año a todos/as.
He instalado Debian 9.3.0 Net-install sobre VirtualBox, para aprender a trabajar en el modo consola, de cara a crear y administrar servidores web.
Por defecto la consola (BASH), viene con el fondo negro, y quisiera que el fondo fuera blanco con la letras negras.
He leído sobre la personalización de los colores del BASH de diferentes fuentes, y he visto varias formas de hacer cambios de color, pero en todas ellas cuando indico el color blanco, realmente no se ve blanco sino que se ve gris.
Por ejemplo, con el comando:
- setterm --inversescreen on
o con los comandos:
- setterm --background white
- setterm --foreground black
Entre otras fuentes consultadas, estas son las que me han servido de guía:
- https://misc.flogisoft.com/bash/tip_colors_and_formatting
- https://unix.stackexchange.com/questions/93814/cant-apply-brightness-to-terminals-background-color
- http://es.tldp.org/COMO-INSFLUG/es/mini/pdf/Lscolor-Como.pdf
¿Conocéis alguna forma de que se vea realmente blanco tal y como os lo muestro a continuación?
Esta imagen ha sido editada con GIMP para cambiar el fondo gris por el blanco.
Gracias de antemano
Fijate en esto ;básicamente en la parte de modificar el listado de colores en $TERM, utilizando el archivo
bashrc .
Los colores del terminal virtual depende de una lista de configuración de colores preestablecidos en hexadecimal ,
Quiza responda a este esquema .
Supongo que te refieres a un sistema sin entorno grafico, porque si lo tienes cualquier terminal es configurable desde editar --> preferencias.
¿has visto esta guia?
We were but stones. Your light made us stars
https://linuxveredas.blogspot.com.es/
Gracias caliban y moonwatcher por vuestro tiempo y aportaciones.
Debian lo tengo instalado sin entorno gráfico, que es como se instala la versión Net-install que he citado.
La guía que enlazas moonwatcher, la consulté cuando estuve buscando información y utiliza los códigos de colores que he indicado yo en este enlace, pero cuando introduces el comando para el fondo blanco, te lo pone gris.
El enlace que has compartido caliban también lo había consultado, pero en este caso no puedo interpretar correctamente toda la información para hacer pruebas, por falta de conocimientos sobre el tema.
Dado que hay diferentes procedimientos para cambiar el color de la fuente y el fondo con comandos sencillos, debería ser sencillo encontrar uno para que el fondo sea blanco, pero no lo encuentro.
Seguiré buscando una solución.
Un saludo
Hola, por lo que veo en https://askubuntu.com/questions/147462/how-can-i-change-the-tty-colors hablan de que la tty esta en 8 colores, seguramente por eso el blanco lo toma como gris y en uno de los comentarios recomiendan poner en ~/.bashrc
el siguiente contenido
a lo mejor asi, cuando pongas
white te lo tome como blanco
saludos...
Gracias rockyiii, pero tampoco funciona.
Antes de leer tu aportación he estado haciendo pruebas, y entre ellas, lo que me has indicado con una configuración de colores personalizada, y también con la que tu me has recomendado, pero nada.
De momento, no encuentro la forma de hacerlo.
otra forma que encontré es https://robologs.net/2016/03/31/como-colorear-el-output-de-la-terminal-en-linux/
por ejemplo:
igualmente el blanco no es blanco
saludos...
Gracias de nuevo rockyiii, también había probado con esos comandos, aunque ese enlace no lo había visto, y está realmente bien.
En el bash que tiene Debian el blanco es gris, es absurdo, quizá pase también en otras distribuciones. Estoy instalando CentOS 7 a ver si le sucede lo mismo.
No he sido el único que ha querido cambiar esto, y no ha podido, hasta ahora la mejor explicación sobre este problema la he leído aquí:
https://unix.stackexchange.com/questions/276201/how-do-i-make-the-terminal-background-bright-white
de Thomas E. Dickey. Me he puesto en contacto con él, a ver si tiene una solución para esto.
Saludos
Actualización 1: En CentOS 7 sucede lo mismo.
Actualización 2: En Gentoo también sucede lo mismo.
Hola, y disculpa si tal vez esto suene tonto, ¿pero que tal si te instalas fbterm para usarla con el framebuffer?. Yo que tu crearía un fondo blanco con Graphics Magick que sea de la medida de resolución de tu pantalla, y finalmente le haces un alias a fbterm para que use tu imagen con fondo blanco y letras negras en el archivo .bashrc . Acá hay una buena guía sobre cómo configurarla.
Te dejo un ejemplo de alias:
Además, con Fbterm bien configurada le puedes poner el wallpaper que quieras ya cuando te aburras del color blanco.
¡Saludos!
Gracias por tu aportación Devoto, para nada suena tonta tu aportación, si realmente funciona sería un apaño interesante, pero lo ideal es que el fondo pueda ser blanco, en lugar de poner una imagen de fondo blanca.
He visto también un post tuyo donde preguntas por una alternativa a Fbterm, y te recomiendan Yaft.
Voy a probar Fbterm a ver que tal.
Un saludo
Fijate en esto , cambian el código de la secuencia de escape de 8 bit, a 16 en donde aparecen los colores intensos ,en tu caso el blanco intenso ( blanco blanco)
Gracias de nuevo caliban, he revisado el enlace y creo que es lo mismo que me ha sugerido rockyiii en un mensaje anterior, y no funciona.
Devoto, he instalado Fbterm, he leído man fbterm, y quería probar la configuración que hace del background y del foreground para ver si el blanco era blanco, pero los comandos no funcionan, ¿alguna idea de que sucede?
Bien si lees con atención el enlace, en una parte explican la diferencia en la codificación ,que es bien distinta al otro enlace que te ha puesto rockyiii, por que acá indican la secuencia para 16 bit,que incluyen los colores brillantes , en el resto de los enlaces usan siempre 8 bit.
De todos modos me parece que por defecto las tty no estan configuradas para soportar 15 bit ,
Si te fijas en este interesante articulo . abajo existe una table de comparación entre terminales ,,incluidas las tty , donde figura que no soportan 16 bit ,de inicio ;claro que si la pantalla tiene la capacidad de mostrar blanco absoluto ,debe haber un modo de lograrlo.Me pregunto si indicando a grub la resolución del terminal lograrías algún resultado
Por ejemplo :
Usando la siguiente tabla :
Se entiende que siempre estamos hablando de las tty No el modo gráfico.
Hola, creo que tal vez no te has mirado el archivo .fbtermrc, este mismo nos dice:
Entonces la orden a usar es:
Lo cual se verá así:
Como ves, creo yo que quedaría mejor una imagen blanca (yo le pondría una como si fuera una hoja de libreta escolar o pergamino). A ver si me pongo a probar lo que te mencionaba al principio para que veas cómo es que queda
Edito: Ya lo he hecho, aquí tienes el resultado, mostrando a w3m viendo la página de envíos recientes del foro:
Supongo que es más o menos lo que esperabas/buscabas. ¡Ojalá te sirva! :)
Gracias de nuevo caliban por tu interés, el enlace que has indicado es el mismo que uno de los que puse como fuentes al publicar este tema.
He consultado muchos foros, consultas y documentación, y todavía no leído que nadie haya conseguido poner el fondo blanco (real, no gris). He visto y probado comandos para 8 bits, 16 bits, 256 bits y el blanco nunca es blanco, sino gris. He probado con setterm, con echo ..., editando con nano el archivo oculto .bashrc, entre otras cosas, y nada funciona hasta el momento.
El blanco es gris en Debian, en CentOS, y en Gentoo, y hablo por supuesto de tty (sin entorno gráfico).
En tu anterior mensaje, citas un enlace en el que un usuario (H0tw1r3) responde sobre la necesidad de editar el código fuente del Kernel y compilar.
Teniendo en cuenta que se presenta el mismo problema en diferentes distribuciones GNU/Linux, es posible, que la imposibilidad de que el blanco sea blanco, se deba a una configuración del Kernel, y solo cuando instalas entornos gráficos o gestores de ventanas, el blanco real sea una opción en las consolas.
Existen diferentes emuladores de terminal, entre otros, bash y xterm.
He contactado con Thomas E. Dickey, que es el desarrollador de XTerm, el cual respondió a alguien que buscaba lo mismo que yo aquí, a ver si tiempo después de aquella respuesta, puede aportar alguna solución. He instalado XTerm, para aplicar su propuesta pero no se ejecuta, sigo con bash.
No parece ser algo sencillo de hacer.
Sigo buscando
Pero xterm , es un emulador de terminal en modo gráfico ,no es el caso que vos necesitas .Y bash es un interprete de órdenes.
Por lo que he ido leyendo, tanto bash como xterm, son emuladores de terminal (sin entorno gráfico), y existen mas.
Aunque quizá las fuentes no sean fiables.
Solucionado gracias a todos vosotros y a cobito del foro hardlimit: https://foro.hardlimit.com/topic/61960/poner-fondo-blanco-en-emulador-de-terminal-bash-en-debian-9/4
Devoto, justo cuando estaba probando a implementar la imagen blanca de fondo con fbterm, cobito me ha pasado el código que funcionaba con el fondo blanco. Muchas gracias por tu aportación, mas adelante haré pruebas con ella.
Explicación.
De todo esto:
Nos fijamos en "\e]P0 y "\e]P7. Los 6 dígitos siguientes se corresponden con el código de color hexadecimal, donde:
Cuando indicamos:
lo que hacemos es invertir P0 y P7, de modo que el fondo pasa a ser el gris (e5e5e5) y el texto pasa a ser el negro (232323).
Cuando indicamos cualquier otro comando de los que hemos analizado haciendo referencia al blanco, mediante white o los códigos numéricos, lo que hace es llamar a P7, y como es gris, pues nunca muestra el blanco.
De modo que si queremos un fondo blanco con letras negras, buscamos primero en código hexadecimal el tipo de blanco y de negro que queremos. Para ello estos recursos son de utilidad:
Atención: es importante hacer los cambios de color en un orden en que el contraste del fondo y el texto sea legible, o directamente hacer el cambio de P0 y P7 a la vez.
Como ejemplo utilizaré para P0 el blanco: FFFFFF, y para P7 el negro: 232323. El código hexadecimal puede estar escrito en minúscula y/o mayúscula.
y si no cambia de inmediato ejecutamos:
Funciona correctamente en Debian 9 y en CentOS 7.
Actualización:
Si queremos que los cambios de color estén por defecto al reiniciar, seguiremos los siguientes pasos:
Ejecutamos
Nos mostrará entre otros archivos, el .bashrc y el .bash_profile (este último en Debian 9 yo no lo tenía)
Ahora editamos o creamos el .bash_profile
Para editarlo:
Para crearlo:
¿Y qué escribimos dentro?, pues depende de cuanto queramos personalizar el bash, podemos desde introducir todo el código que he citado arriba (que afecta desde P0 hasta PF), o para el ejemplo que he indicado en esta solución podemos escribir solo
Guardamos el archivo con Ctrl+O, aceptamos y Ctrl+X para salir de nano. Reiniciamos la máquina y listo.
A mi me funciona sin darle permisos de ejecución:
Si posteriormente queremos editar los colores de P0, P7 u otras P, editamos el archivo .bash_profile
Gracias a todos por vuestras aportaciones.
Saludos
Me alegro que lo hayas solucionado. Para que se ejecute al inicio puedes crear un script y hacer que se ejecute con crontab
https://blog.desdelinux.net/cron-crontab-explicados/
Aparte de eso, gracias por este hilo bien expuesto, bien desarrollado y bien explicado.
A ver si los nuevos aprenden
Saludos.
We were but stones. Your light made us stars
https://linuxveredas.blogspot.com.es/
Pero, el código de la solución ya te lo di en este enlace .
Me reitero ,¿realmente leen los enlaces en profundidad y los exploran ?
Gracias moonwatcher por tu amables palabras y por tu aportación para automatizar el script, probaré crontab.
caliban este es mi primer tema en vuestro foro, no deseo entrar en polémicas con nadie, pero me parece excesivo que me cuestiones así (y mas siendo moderador).
Desconozco lo que hacen otras personas, pero he ido analizando todo lo que habéis compartido quienes habéis querido ayudarme, valorando y respetando el tiempo que habéis puesto.
Varias horas antes que tu, rockyiii compartió un enlace conmigo que me llevaba al código correcto. Pero es que antes de que rockyiii me pasara el citado código, lo había consultado yo antes en la fuente que cito mas abajo, y lo había probado (lee comentario correspondiente). Todo esto nos llevaba a este código modificando el archivo .bashrc
Fuente: https://wiki.archlinux.org/index.php/User:Isacdaavid/Linux_Console
Pero nos faltaban datos para que funcionase:
Quizá estuviera haciendo algo mal, puede ser, pero no lograba, ni he logrado que funcionase modificando el .bashrc
Me facilitaste el código correcto, pero después de que rockyiii lo hiciera y de que yo lo consultara en la citada fuente. Cuando le digo a Devoto que cobito (de HardLimit) me ha pasado el código correcto es porque me lo indica de forma que funciona, ejecutándolo directamente mediante un comando, y no me indica que implemente todos los códigos citados en el .bashrc que era lo que habíamos visto hasta entonces. Es en ese momento, cuando el fondo blanco funciona, y deduzco que P7 es el foreground en lugar de PF.
No has compartido conmigo una forma de hacerlo funcionar que yo pudiera reproducir, cosa que yo si que he explicado al detalle, para que otras personas se puedan beneficiar de todo el esfuerzo que hemos puesto todos los que nos hemos implicado en buscar la solución, a los que por supuesto he dado las gracias en todo momento (incluido a ti).
Te doy las gracias de nuevo por tus aportaciones, aunque no fueras el primero en indicar el código correcto, pero para mi la información todavía era insuficiente para lograr el objetivo, ya que no lograba que funcionase.
Un cordial saludo