frundis, lenguaje de markup con una sintaxis roff-like

Temas sobre proyectos de código abierto, su promoción, ayuda y todo lo necesario para mantenerlo trabajando.

Moderador: Luli

Responder
MetTxin
Forista Medio
Forista Medio
Mensajes: 332
Registrado: Mié Abr 27, 2011 11:32 am

frundis, lenguaje de markup con una sintaxis roff-like

Mensaje por MetTxin » Lun Dic 29, 2014 4:09 pm

Buenas a todo el mundo y de paso un feliz 2015!

Si hace poco vine con un proyecto de libros de fantasía bajo licencia libre ahora vengo con más historias raras, otro proyecto, un poco paralelo al anterior pero en este caso de informática, "frundis".

(enlaces a todo al final)

Copio y pego de la página del proyecto, es la mejor forma de introducirlo:
frundis es el nombre de un lenguaje de markup con una sintaxis roff-like, y es igualmente el nombre del programa que permite exportar ficheros escritos en este lenguaje a formatos LaTeX, XHTML y EPUB. Puede usarse en diversos tipos de documentos, desde novelas a tutoriales técnicos.

Una de las características del lenguaje es la posibilidad de definir tags arbitrarios para marcar texto, y controlar con detalle el resultado final a exportar
El programa puede resultarle útil a alguien que necesite un método sencillo de creación de documentos LaTeX(pdf), EPUB o páginas xhtml. Se puede decir que ya está algo testeado aunque sea recién nacido porque es el que se utiliza ahora para exportar a esos tres formatos siete tomos en dos lenguas diferentes del Ciclo de Shaedra así como para casi todas las páginas del sitio web.

Hago un breve resumen del artículo original en francés de linuxfr, y me tomo la libertad de traducirlo totalmente a mi aire porque como en el caso anterior es un proyecto de casa. ;)

La sintaxis como decía al principio es roff-like, para quien esté familiarizado con el estilo no debería chocarle, al resto un poco a lo mejor, y se parecería a esto:

Código: Seleccionar todo

.X set lang es
.Ch Nombre de capítulo
Primer párrafo.
.P
Segundo párrafo. Frundis dice:
.D
Buenos días, 
.\" esto es un comentario, un poco de énfasis
.Sm EspacioLinux .
.P
Etc ...
Para añadir semántica arbitraria se haría algo como:

Código: Seleccionar todo

.X mtag -f xhtml -t latin -c em
que añadiría un nuevo tag, "latin", para un formato de salida en xhtml que sería presentado en el elemento "em". El tag sirve también como nombre de clase. Después podríamos usarlo tal que:

Código: Seleccionar todo

.Sm -t latin Alea jacta est
También se pueden definir macros, insertar otros ficheros, integrar texto para ser leído tal cual en un formato ya definido, exportar documentos enteros o bien sólo partes de un documento y diferenciar la salida según el formato elegido.

El programa por supuesto está bajo licencia libre, hecho en perl, es muy ligero y casi no tiene dependencias salvo un módulo que esté probablemente instalado en el sistema ya (URI) y como opcional Data::UUID para generación de número único para EPUB.

No me extiendo más, quien quiera descubrir esta herramienta-lenguaje tiene dos páginas «man» bien construidas, la principal, de su uso en línea de comando y la de sintaxis del lenguaje donde se detallan todas sus posibilidades. También se pueden ver ejemplos en la carpeta de tests t/data.

Página del proyecto (es)
Página man principal (en)
Página man de sintaxis (en)
Artículo de linuxfr (fr)

Un saludo!

Nota: las páginas «man» están únicamente en inglés por el momento.
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje