Shell Markup Language

Es un script para el interprete de comandos bash que facilita el uso de colores, emojis y otras facilidades en la terminal, agregando funciones que el usuario puede llamar para cambiar las propiedades del texto en la consola.

Se puede bajar de https://odb.github.io/shml/

Instalacion

Para usar SHML, hay que seguir los siguientes pasos

  1. Bajar el script
  2. Sourcearlo

Bajar el script

El codigo del script se puede bajar facilmente con el siguiente comando. Si el script no funciona, revisar en el enlace mencionado al inicio de la pagina.

wget 'https://raw.githubusercontent.com/odb/shml/1.1.0/shml.sh'

Sourcear el script

Una vez bajado, el contenido script se debe incorporar al ambiente mediante el comando source de esta manera.

source shml.sh

Importante: el script esta creado para el interprete de linea de comandos (shell) bash. Para otros interpretes es necesario realizar uno o mas cambios al codigo fuente del script.

Uso

Una vez incorporado al ambiente, se pueden realizar diferentes acciones cuando ingresamos texto en la terminal.

Cambiar colores de texto y de fondo

Para cambiar colores de texto disponemos de las funciones color/fgcolor/c.

Por ejemplo

$(color red "ahora escribe en rojo")
$(color blue "y ahora escribe en azul")
# volvemos al color por defecto
color reset

Los colores disponibles son

black, red, green, yellow, blue, magenta, cyan, gray, white, darkgray, lightred, lightgreen, lightyellow, lightblue, lightmagenta, lightcyan.

Tambien se puede cambiar el color de fondo con las funciones background/bgcolor/bg

Por ejemplo

$(bg red "ahora fondo en rojo")
$(bg blue "y ahora fondo en azul")
# volvemos al color por defecto
bg reset

Los colores son los mismos que los disponibles para el color de frente.

Atributos del texto

La funcion attribute/a permite cambiar atributos del texto, como negrita, subrayado, parpadeo, inversion de colores, y otros.

La sintaxis es '' attribute ATRIBUTO [texto opcional]'', donde ATRIBUTO puede ser bold, underline, blink, invert, dim y end. Este ultimo parametro resetea todos los atributos aplicados, inclusive los de color de fondo y frente.

Ejemplo

$(a bold "texto en negrita")
$(a blink "texto que parpadea")
# volvemos al estado normal
a end

Insertar emojis, iconos y lineas