librrd playground: documentación del lenguaje de diagramas y hojas de estilo

Fuentes: librrd playground

librrd playground es un entorno y un lenguaje declarativo para representar diagramas, especialmente diagramas sintácticos tipo ferrocarril (railroad diagrams), acompañado de un sistema de hojas de estilo inspirado en CSS. En el lenguaje de diagramas, las estaciones terminales pueden escribirse como "label" o 'label'; cualquier expresión puede envolverse en llaves {} para asignarle una clase, un identificador (ID) o ambos; y las secuencias vacías sirven para impedir colapsos no deseados en el diseño. El sistema de estilos se modela a partir de CSS: los selectores admiten cuatro tipos de elementos (terminal, nonterminal, sequence y stack), además de comodín, clase, ID, el pseudo-selector :root y combinadores de descendencia e hijo, con especificidad y cascada idénticas a las de CSS. Entre las propiedades disponibles están align-items (alineación vertical heredable de los hijos de un contenedor, con valores top, center, bottom y baseline, siendo top el valor por defecto) y align-self, que sigue la misma lógica para un elemento individual, incluyendo la posibilidad de indicar dos valores para los lados izquierdo y derecho. La justificación horizontal se controla con justify-content, también heredable, que acepta left, right, start, end, center, space-around, space-between y space-evenly, con space-between como valor predeterminado. Otras propiedades no heredables —salvo donde se indica— son flex-absorb (proporción entre 0 y 1, por defecto 0, heredable), gap (número no negativo, por defecto 0), continuation-marker (cadena, por defecto …) y font (hasta cuatro cadenas separadas por espacios para familia, estilo, peso y tamaño, con valores por defecto sans-serif, normal, normal y 1rem). El playground permite experimentar con estos elementos para producir y dar estilo a diagramas de forma reproducible.