Como vimos en una entrada anterior, dando color al terminal, el terminal de Linux no siempre ha de ser negro sobre blanco. Hoy vamos a ver más formas de dar formato al texto del terminal.
Texto en negrita
Haciendo uso de los caracteres de escape, se puede activar el modo negrita. De esta forma, cualquier cosa que se escriba por el terminal saldrá con este formato sumado al color que se tuviera en el momento de la activación. Es decir, si antes de activar la negrita se escribía en rojo, se tendrá el modo rojo negrita.
El código de escape es el siguiente:
\033[1m
Veamos un ejemplo práctico:
#!/usr/bin/env bash function colorFuente(){ case $1 in negro) echo -en "\033[30m" ;; rojo) echo -en "\033[31m" ;; verde) echo -en "\033[32m" ;; amarillo) echo -en "\033[33m" ;; azul) echo -en "\033[34m" ;; lila) echo -en "\033[35m" ;; cian) echo -en "\033[36m" ;; blanco) echo -en "\033[37m" ;; esac } function negrita(){ echo -en "\033[1m" } function normal(){ echo -en "\033[0m" } echo "Este "`colorFuente negro`"es "`colorFuente rojo`"un "`colorFuente verde`"estupendo "`colorFuente amarillo`"ejemplo "`colorFuente azul`"de "`colorFuente lila`"colores "`colorFuente cian`"muy "`colorFuente blanco`"variados" negrita echo "Este $(colorFuente negro)es $(colorFuente rojo)un $(colorFuente verde)estupendo $(colorFuente amarillo)ejemplo $(normal)$(colorFuente azul)de $(colorFuente lila)colores $(colorFuente cian)en $(colorFuente blanco)negrita"
Como se observa en este script, se ha usado un segundo código de escape para volver al “modo normal”, esto es, texto en negro sin estilos. El código es el siguiente:
\033[0m
Texto en cursiva
El siguiente estilo a mostrar es la cursiva. El código de escape usado es el siguiente:
\033[3m
Ampliando el script, creamos una nueva función para activar este modo:
#!/usr/bin/env bash function colorFuente(){ case $1 in negro) echo -en "\033[30m" ;; rojo) echo -en "\033[31m" ;; verde) echo -en "\033[32m" ;; amarillo) echo -en "\033[33m" ;; azul) echo -en "\033[34m" ;; lila) echo -en "\033[35m" ;; cian) echo -en "\033[36m" ;; blanco) echo -en "\033[37m" ;; esac } function negrita(){ echo -en "\033[1m" } function cursiva(){ echo -en "\033[3m" } function normal(){ echo -en "\033[0m" } echo "Este "`colorFuente negro`"es "`colorFuente rojo`"un "`colorFuente verde`"estupendo "`colorFuente amarillo`"ejemplo "`colorFuente azul`"de "`colorFuente lila`"colores "`colorFuente cian`"muy "`colorFuente blanco`"variados" negrita echo "Este $(colorFuente negro)es $(colorFuente rojo)un $(colorFuente verde)estupendo $(colorFuente amarillo)ejemplo $(normal)$(colorFuente azul)de $(colorFuente lila)colores $(colorFuente cian)en $(colorFuente blanco)negrita" cursiva echo "Y este otro $(colorFuente verde)en $(colorFuente rojo)rojo cursiva"
Texto Subrayado
Para terminar, vamos a ver cómo activar el modo subrayado. Su código de escape es el siguiente:
\033[4m
Vamos a ampliar de nuevo el script con una función para activar este modo, y vamos a combinar varios modos al mismo tiempo para comprobar que no son excluyentes:
#!/usr/bin/env bash function colorFuente(){ case $1 in negro) echo -en "\033[30m" ;; rojo) echo -en "\033[31m" ;; verde) echo -en "\033[32m" ;; amarillo) echo -en "\033[33m" ;; azul) echo -en "\033[34m" ;; lila) echo -en "\033[35m" ;; cian) echo -en "\033[36m" ;; blanco) echo -en "\033[37m" ;; esac } function negrita(){ echo -en "\033[1m" } function cursiva(){ echo -en "\033[3m" } function subrayado(){ echo -en "\033[4m" } function normal(){ echo -en "\033[0m" } echo "Este "`colorFuente negro`"es "`colorFuente rojo`"un "`colorFuente verde`"estupendo "`colorFuente amarillo`"ejemplo "`colorFuente azul`"de "`colorFuente lila`"colores "`colorFuente cian`"muy "`colorFuente blanco`"variados" negrita echo "Este $(colorFuente negro)es $(colorFuente rojo)un $(colorFuente verde)estupendo $(colorFuente amarillo)ejemplo $(normal)$(colorFuente azul)de $(colorFuente lila)colores $(colorFuente cian)en $(colorFuente blanco)negrita" cursiva echo "Y este otro $(colorFuente verde)en $(colorFuente rojo)rojo cursiva" subrayado echo "Muestra de texto $(colorFuente azul)subrayado cursiva $(negrita)y subrayado, negrita con cursiva"
No hay comentarios:
Publicar un comentario