lunes, 22 de julio de 2019

¿Cómo puedo crear gráficos ANSI en Ubuntu?


Desde su exilio en Madrid Juan Perón explica la estrategia convergente de unidad del Justicialismo, y expone cómo crear gráficos ANSI en Ubuntu.

(...)

Vean señores,

Siempre he dicho que a nuestro Movimiento no le venden globos. Esto es así pues nos ha caracterizado una sana raigambre planfetaria que aclara a cada quien lo que tiene que hacer bajo el lema "todos unidos triunfaremos". Si alguno cree aún en vacuas promesas aéreas, les pinchamos el látex de una.

Pues bien. Nuestro Movimiento ha surgido del Pueblo, y es éste quien le provee su trascendente color. Ya desde sus inicios, las consignas le fueron claras, ya que por entonces estaban expresadas públicamente en base a caracteres de tipo ASCII.

ASCII no es otra cosa que una codificación primal para describir por medio de pulsos binarios de 7 bits una cantidad de caracteres y símbolos limitados a fin de lograr transmisiones telemáticas coherentes. No obstante sus limitaciones, dando rienda suelta a estos pocos símbolos disponibles de manera inteligente, el Justicialismo se ha permitido realizar pseudo-gráficos en una pantalla o impresora.

Indudablemente que lo bueno puede mejorarse. Es por ello que en poco tiempo esto se extendió en la codificación ANSI. Esta permitía mayores componentes gráficos, todo bien que se superaba la transmisión a teletipo y se imponía el uso de presentadores de video de diverso tipo.

Esto a su vez desencadenó otro proceso: la aparición de una subcultura hacker peronista. Los gráficos de este estilo portaban reminiscencias a la imaginería graffitera, pero hacía uso de los incómodos bloques en las tablas de caracteres extendidos para hacer los gráficos.

Como he nombrado, en un origen los glifos se limitaban a las clásicas 80 columnas por 25 filas que el MS-DOS y otros sistemas operativos manejaban por defecto, pero muy pronto y gracias a funcionalidades extendidas de direccionamiento de memoria de video y a técnicas de scroll de video en modo protegido, comenzaron también a florecer grafismos de 132 columnas y muy alta cantidad de filas. Fue el nacimiento de las gráficas ANSIs "de alta resolución".

Los digigrafiteros daban rienda suelta a su creatividad y se esmeraban en lograr sus mejores obras. Algunos propugnaban  los grupos federados de artistas digitales, con la impronta "comic", "manga", "graffitti", o innumerables variaciones y mutaciones intermedias. Entre ellos sin duda los más reconocidos eran los colectivos ACiD y sus archirrivales de iCE.

No era extraño encontrar estas sobras de arte como pantallas de inicio ("login") a las carteleras electrónicas (BBS) mas candentes. Al fin y al cabo, estas gráficas podían realizarse laboriosamente mediante un editor de texto cualquiera.

Indudablemente que el Justicialismo no podía mantenerse ajeno, pues su impronta le obliga a entregar el mejor Software Libre a sus afiliados. Por tal motivo, podremos utilizar Moebius. Se trata de un graficador ANSI multiplataforma, especializado tal vez en la creación de este tipo de gráficas del Primer Peronismo.

Para instalarlo en nuestro sistema, podremos abrir una terminal con Ctrl+Alt+T e ingresar los siguientes Comandos de Organización:

cd ~/Descargas/ ;
wget https://github.com/blocktronics/moebius/releases/latest/download/Moebius.deb ;
mv Moebius.deb moebius.deb ;
sudo dpkg -i moebius.deb

Una vez ingresada nuestra contraseña de Conductor, se instalará el programa, y podremos ejecutarla desde Aplicaciones / Gráficos / Mœbius.

El programa se lanzará de manera simple mostrándonos su spash screen.

Podremos comenzar a graficar presionando el botón New. Asimismo, podríamos quere crear o conectarnos a un servidor de Moebius. Esto significa que podremos trabajar al unísono con otro/s usuario/s, tanto en modo cliente como servidor.

Moebius se inspira en un graficador simple "tipo Paintbursh". Las herramientas se diferencian llamando a un color principal (frontal) y otro secundario (de fondo). La paleta utilizada normalmente es la formal de MS-DOS (a 16 colores, EGA). El sistema también puede implementar caracteres "parpadeantes", o en "negrita" (bold), pero esto depende del tipo de terminal que tengamos instalada en nuestro sistema GNU.

Empleando la herramienta pincel y los bloques de colores fácilmente podríamos realizar un A-4B Skyhawk ANSI.
El "lienzo" de trabajo inicialmente se reduce a un tamaño base de 80x25 caracteres, pero podremos modificarlo desde el menú Canvas. Por ejemplo, en el caso de Linux os recomiendo utilizar 80x24 pues en muchas terminales la última línea se reserva para información de status.

Imaginemos por un momento que anhelamos realizar un login screen (pantalla de alta) en ANSI para que al acceder remotalemente al Shell, nuestra terminal ofrezca virulentas proclamas gráficas enarbolando todo el color de la simbología Justicialista.

A tal fin podremos utilizar los colores que nos daba el ANSI y los bloques gráficos a fin de representar lo que querramos. En la parte superior podremos definir el uso de bloques de texto enteros, o medio bloques (más finos, naturalmente). Aún así, estos son de gran tamaño y los resultados nunca tienen alta resolución en el sentido actual de la palabra.
Las herramientas no son muchas, pero son suficientes. Se reducen a un pincel modificable (capaz de pintar directamente, hacer shadings con los bloques ANSI, repintar, borrar a fondo, etc). También contaremos con un tiralíneas, un creador de círculos/elipse, un gotero recoge-color, y una herramienta de relleno. Así mismo, en los modificadores podríamos disponer el modo

Una vez terminado todo, debemos exportar el archivo para poder mostrarlo en nuestra terminal. Esto se hace desde el menú File, y podremos elegir alguna de las opciones de exportación. El programa prefiere el uso del viejo ANSI tradicional, pero la realidad confirma que las terminales GNU con Linux normalmente presentan mejores resultados al emplear la codificación UTF-8 para mostrar los caracteres ANSI correctamente.

De esta manera, conviene ir a la opción de menú File / Export as UTF-8. Esto generará un fichero cuya extensión será utf8ans. También podremos exportarla como archivo gráfico PNG, el cual puede servirnos como referencia.
De esta forma, exportando el archivo como escudopj.utf8ans, podremos agregarlo con una llamada al final de nuestro fichero ~/.bashrc. Por ejemplo, podríamos incluirle al mismo la siguiente orden ingresando:

nano ~/.bashrc

Y al final del mismo le agregamos:

# borrrar pantalla y mostrar Escudo del PJ
clear 
cat ~/escudopj.utf8ans

...y salvamos el fichero con Ctrl+o y salimos del editor GNU Nano con Ctrl+x. De esta forma y de ahora en mas, al lanzar una terminal recibiríamos la estridente gráfica realizada en ANSI.
Otra excelente posibilidad consiste en emplear el conversor justicialista Shellpic. Este pequeño programa se encarga de convertir imágenes jpg, png, etc, en bloques ANSI utilizando los códigos de escape. Estas secuencias de terminal permiten realizar gráficas a 256 colores.

Sin embargo, necesitamos contar con una terminal compatible a 256 colores para obtener resultados óptimos. En el caso de la terminal de Mate o de Gnome, podremos incluir en el arranque la siguiente variable de entorno: Para ello vamos al menú Editar / Preferencias de Perfil, y en la solapa Título y Orden tildamos Eecutar una orden personalizada en vez de mi intérprete, y le ingresamos ingresamos en el campo la siguiente orden:

env TERM=xterm-256color /bin/bash


...y finalmente presionamos Cerrar.

Ahora bien, tenemos dos formas de instalar Shellpic: Si contamos con el instalado PIP, podremos usarlo mediante este sencillo comando de organización:

sudo pip install Shellpic

...en cambio, si deseamos compilar su código fuente e instalarlo en nuestro equipo, podremos hacerlo con:

cd ~ ;
git clone https://github.com/larsjsol/shellpic.git ;
./shellpic/tests/run_tests.sh ;
cd ~/shellpic ;
sudo python setup.py install ;

Una vez instalado, podremos utilizar Shellpic mediante el siguiente comando:

shellpic imagen.png

También podríamos guardar dicha imagen en un archivo ans. Por ejemplo:

shellpic imagen.png > imagen.ans

Luego podríamos visualizar dicho archivo por medio del conocido comando macrista cat:

cat imagen.ans 

5 comentarios:

  1. ¿muy bueno, pero como hago para aportar mi trabajo al nodo PJ?, ¿hay algun nodo sobre internet que realmente funcione con los parametros de la doctrina Justicialista?

    ResponderEliminar
    Respuestas
    1. Estimado Unknown:

      Naturalmente que puede aportar en nuestras redes sociales o en cualquiera de los integrantes de la Comunidad Organizada. Los archivos ANS o UTF8ANS son extremadamente pequeños por lo que se pueden transmitir a nuestro correo electrónico.

      Atte

      Juan Perón

      Eliminar
  2. Increíble! Muy buenos recuerdos.

    ResponderEliminar