Probando los temas de plantuml con un par de lineas de bash

Seguro que se puede hacer mejor, pero bueno me ha funcionado.

No sabia que PlantUML ahora han metido un themes. Y para probarlos he tirado 4 lineas en bash y parece que ha salido.

Me he creado este fichero en /tmp/caca.puml :

@startuml
!theme spacelab

skinparam backgroundColor #7f7f7f

Pepito <- DonJose : Hola Don Pepito
Pepito -> DonJose : Hola Don Jose
Pepito <- DonJose : ¿Paso ayer por mi casa?
Pepito -> DonJose : Por su casa yo pasé
@enduml

Esta puesto adrede después de !theme spacelab el skinparam para poner en gris el fondo para machacar la configuración del theme.

Y después creo un directorio /tmp/resultados/ .

Y finalmente otro fichero donde saco los themes disponibles en plantuml /tmp/list_themes.puml :

@startuml
help themes
@enduml

Y convierto ese help a un txt (que es en plan asciiart):

java -jar plantuml.jar /tmp/list_themes.puml -ttxt

Y el churro en una linea:

line=$(cat /tmp/list_themes.atxt | tr -d " " | grep -Ev "^$" | grep "Thepossiblethemesare:" -n | cut -d: -f1); for theme in $(cat /tmp/list_themes.atxt | tr -d " " | grep -Ev "^$" | tail +$(( $line + 1 ))); do echo "$theme"; cat /tmp/caca.puml | sed -e "s/spacelab/$theme/" | java -jar plantuml.jar -pipe -tpng > /tmp/resultados/caca.$theme.png ; done

Y la explicación:

  • $line se saca de hacerle un cat al fichero de la lista de themes como asciiart, quitarle todos los espacios en blanco (porque por suerte todos los themes son sin espacios en blanco), con grep inverso ( -v) y regex (con -E) quito las lineas en blanco. Y de esto lo pipeo para sacar el número linea de donde empieza los themes buscando la frase apiñada (sin espacios en blanco) «Thepossiblethemesare» y le saco el campo con cut.
  • Después  tiro un bucle for del cual chupo de (suerte otra vez que no tiene espacios en blanco porque si no tendría que tirar de IFS) casi completa la anterior churro para sacar $line, salvo el grep final que lo cambio por un tail para sacar a partir de la linea N.
    • Y en cada iteración tengo el $theme que le hago una sustitución en vivo al fichero de template de hola don pepito y voy creando fichero a fichero de cada theme finalizando el nombre con .theme.png .

Y subo un puñado de ficheros generados:

Volviendo a intentar aprender bien bien Vim

Es de esas cosas recurrentes que me vienen para sentirme realizado, programar en ensamblador en Z80, aprender a usar bien bien Vim.

Y en eso vuelvo, a ver yo creo que ya cualquier hijo de vecino sabe el :q! , :w , :wq , el rollo de buscar con / y n y shift+n. Y ya para coronar el famoso :set number y :set nonumber. Lo que no trago es el tema de usar h j k l para moverme pero bueno. Pero me pierdo cuando me aparecen varios paneles en la pantalla al final tiro de :q

Y claro pues si te apañas y tal, pero después vas a un editor de código come ram y peor privativo, o vas a algo mas liviano como mi querido Geany y dices como hago el autocompletado de estos como poco primero. Pues a ver ya esta ya te sientes inútil con Vim.

Pero es que he visto gente (me gustaría poner el nombre pero tendría que preguntarle) muy buena usando el Vim como verdadero y único editor, y flipás sin gastar RAM y CPU a lo tonto (y si me apuras sin gastar píxeles de pantalla a lo tonto) y sin dar paseos al ratón por la mesa, sin levantar las manos del teclado.

¿Y que hacemos con neovim? Pues de momento me esta llamando mucho la atención, el tema asíncrono y que le da un poco de vida al Vim.

Me falta entender y encontrar un buen gestor de paquetes y saber cuales son «los paquetes» estándar…si el rollito este que se sufre estos años con NPM o Pip, mucho nos reíamos de las guerras de editores de texto, pero al menos no era una peli de chinos donde salen un motón a la vez se pegan rápido rápido y no sabes a que caballo ganador apostar tu tiempo en aprenderlo. Por cierto no hay un único gestor de paquetes, ya el retorticimiento de lo torcido…pero bueno ahí esta Python con los miles de inventos…o js con npm y yarn.

Así que en esa estamos, y gracias a victorhck que esta haciendo mucha labor educativa y desde aquí se lo agradezco (aunque cuando lo conocí físicamente en las jornadas hacker de la EKO estuve un poco apagado…lo siento) y os pego links de su labor:

Después he encontrado cosas como:

  • VimAwesome: un listado de los paquetes de vim (no se si estarán todos pero eso parece) con un buscador y una ficha muy visual y estética.
  • Neovim en la wiki de archlinux: nunca he usado esa distribución pero todos amamos su documentación que nos ha sacado de muchos problemas.

Y de el señor Santos Gallegos el cual no tengo el placer de conocerle y que creo que será difícil porque esta del otro lado del charco:

Después la persona que no puedo nombrar (respeto su privacidad) me mando hablando de este tema estos días un dotfile (es curioso, la gente comparte su fichero de configuración orgullosamente por internet) que supuestamente es el principio y el fin de todo lo que necesitarías, os lo pego pero yo voy en plan rollo minimalista y poco a poco ir metiendo cosas en la configuración y entendiendo porque, pero bueno lo pongo el link The Ultimate vimrc .

Perdón añado uno que se me olvido: awesome-neovim.

Actualización:

Se me olvido también los tutoriales de Santiago Romero que leí hace años y que siguen online:

¿Sabéis que juego libre esta traducido al 100% al español? Sí, Cataclysm DDA

Hace unas semanas gracias a Pac0 , que no te conozco pero te agradezco tu gigantesca labor, también a otros colaboradores como:

  • Toni López roosterfarlopez
  • Carlos Albizo Charson
  • RJ VT Crul
  • Víctor Arias DaVicarius
  • depx z Depxz
  • Luis Ortega Heikelol
  • Ignacio Ramirez Ignaramico
  • Jarold Rodríguez Jarold
  • Josephine Fernandez Josephine98
  • Yuri JustYury
  • Nelson Alvarez MrDuck
  • Nicolajavier RogueEsp
  • Serafín Torres Sera77
  • Jorge B Sunmannus
  • Theradin Theradin
  • Un Gen Ungen
  • Vlasov Vitaly VV_Heretic
  • Iñigo S. barroco9
  • Jose Antonio Cívico Matas civico92
  • Da WhatTheFox dawhatthefox
  • dem4ply _ dem4ply
  • Rodrigo Martín dritinso
  • David Ulrich dvulrich47
  • Emma Forner emma_fm
  • Franz Zapata franzzapata
  • gBiped
  • keno xite kenoxite
  • lokatronao
  • Miguel Parkour miguelparkour93
  • nadia911
  • r a raydeg145

Gracias a todos y todas ha sido una labor titánica, que eran entorno a 200 mil cadenas de texto y solo quedan 1000 y pico de la versión 0.D (3 versiones atŕás de la estable), y 70 y algo de la 0.C (una mas antingua todavía).

Por cierto este es el link para traducirlo al español en transifex,  y la web del juego Cataclysm DDA.

Estan comenzando un tileset cuqui o kawaii nuevo para Cataclysm DDA

Vía el subreddit de Cataclysm DDA han dado a conocer un proyecto de un nuevo tileset (pack de gráficos) rollo cuqui o kawaii que tiene una pintaza muy buena.

Se llama Cuteclysm y poco hay pero es super tiernooo y eso que es con zombies.

Cierto es que le falta mucho trabajo, no se el porcentaje de tiles hechos, pero mola que Cataclysm DDA tenga otro tileset.

Frikadas de monedas con trampas y mecanismos ocultos

He encontrado el siguiente vídeo de un artista que hace monedas que son una autentica frikada, es delicioso la cantidad de cosas que tienen, entre trampas y mecanismos ocultos:

Parece sacado de una peli ochentera rollo Los Goonies.

Me he hecho un twitch y también un fediverse

Llevo un par de semanas buscando en el famoso y polémico Twitch gente que haga streamings curiosos, rollo videojuegos de software libre, programación, software libre en general.

Y poco hay, hay suficiente del Cataclysm DDA aunque en español esta muerto.

Pues una cosa que he aprendido de las ciudades pequeñas, es que si no hay algo (un hacklab o  lo que sea) pues te lo tienes que crear tu, y dicho y hecho:

Miguel MDtrooper en twitchtv

Perdón por el sonido del micro, estoy buscando por el micropiso el micrófono tan bueno que usaba para los podcast.

Estoy intentando hacer streamings los findes por la tarde noche, la verdad es, que es una sensación muy rara, te sientes como un locuelo hablando solo…sobre todo en mi caso que tengo 0,3 visitantes ¡¡Ole esa inclusión de gente troceada!!

Y después como twitch borra los vídeos cada 14 días, por dejarlos para generaciones futuras los estoy subiendo al canal del peertube que ha hecho gente  muy maja, el canal es MDtrooper Juega en fediverse.tv.

De momento hay estos vídeos:

Una partida al Bastet (un tetris en terminal que intenta dar la peor pieza posible), perdón por el fondo del streaming…lo hice con inkscape pero cáncer de sida epileptico….es mi primerito día:

Una partida al Einstein, un genial juego de puzzle para darle al coco…el fondo ya es mas chulo pero el micrófono, lo que os conte antes:

Y mi niña bonita, uno de los mejores juegos software libre que puedes encontrar en GNU/Linux pero mas ásperos, profundos y difíciles, el Cataclysm DDA , la cuestión es que el streaming lo hice de madrugada en el minipiso y no quería despertar al resto de los habitantes….por eso casi no se oye:

Bucle en bash al revés «padding» de 3 ceros

Una tontaá que os pongo porque me parece curioso, tenía que renombrar unos ficheros hacia adelante para hacer hueco entre medias, los ficheros eran <nombre>.<cifras>.md .

Tenemos el seq en GNU/Linux y en otros Unix, entonces es:

for i in $(seq -f "%03g" 13 -1 7)
do
  <mi código>
done

En busca de la mejor librería de TUI para Python

Los TUIs son algo que mola mucho porque ademas que queda muy hacker realizar cosas con ellos, te permiten interactuar con servidores por ssh de forma cómoda, y sobre todo aprovechando los pantallones que tenemos ahora, permite tener dashboard muy completos y cómodos como lazy_docker.

Si bien hay soporte nativo para ncurses, el rollo es que tienes que hacerte todo a mano.

Yo tenia mis esperanzas puestas en Urwid (incluso me he metido a arreglarles un bug hace meses) pero lamentablemente, puede que suene muy superficial, pero los botones son muy feos (por defecto, se les puede mejorar tirando código python) y no hacen efecto de click (esto no he encontrado nada).

Después he encontrado las librerías:

Las que me llaman mas la atención es picotui y blessed.

Ya os iré contando.

¿Porque no existe un text-overflow: scale en CSS?

Si has picado código o diseñado páginas web, seguro que te ha pasado mas de una vez que un texto se desborda por la izquierda o por abajo.

Pues parece que ha mas gente le molesta eso y han pedido en el foro de la Web Incubator CG con el título de Auto-sizing text to fit container.

Mas o menos en el dialogo, han dicho una posible solución que debería añadirse a CSS y es un valor mas a text-overflow para que escale el texto y además añadir un max-font-size y un min-font-size para controlar los limites (o los treshold como dice un conocido que mete esa palabra en toda conversación…cualquier día va al burguer y pide un treshold con patatas fritas).

La pena es que los estándares en la W3C van lentos aparecer y lentos de aplicar en los navegadores.

Russian Cyberpunk Farm

Me encanto este cortometraje o nanometraje (hace unos años una filosofa dijo que twitter (el de 144 caracteres de antes) era una mierda y destrozaba la compresión del idioma porque no se podían contar cuentos…pues caso error, encontré geniales cuentos en 1 tweet. Pues aquí un pequeño tan pequeño cortometraje que dura 4 minutos y es espectacular.

Sencillamente genial:

Lo siento solo es un blog.