nasciiboy

morg (formato de documentacion)

11 posts en este tema

ahora una pequeña alucinacion/sueño sobre un nuevo formato para forjar documentacion. la idea es que se unan programadores nivel dios y cualquera con propuestas al formato

 

 

https://github.com/nasciiboy/morg

 

 

si queren compilar el codigo de la carpeta

 

 

gcc main.c regexp3.c exportToHtml.c fileUtils.c ripperMorg.c

 

 

y para ejecutar

 

 

./a.out -e test.morg

Compartir este post


Enlace al post
Compartir en otros sitios

Le he echado un ojo por encima, he leído la documentación en el github, y se ve muy interesante, he ojeado el código y aunque no me he puesto a intentar entenderlo en plan serio, se ve muy pero que muy limpio, y eso en C no es tan fácil de conseguir, enhorabuena.

Compartir este post


Enlace al post
Compartir en otros sitios

gracias por el interes y el tiempo, solo es una prueba de que el proyecto se puede realizar, no es ni de lejos usable, en cuanto al codigo solo regexp3.c es realmente bueno, tambien el concepto simple del parser en ripperMorg.c no esta mal aunque le falta pulirse mas, el resto, que es el exportador exportToHtml.c no tiene un buen diseño, apenas consigue funcionar y en este aspecto mis conocimientos no dan para mas, y tardaran algunos años en estar al nivel (teoria de compiladores, interpretes, analisis sintactico, matematicas discretas, (matematicas) y esas cosas). El plan no es solo tener un buen proyecto sino acompañarlo de un buen codigo, en conjunto de un libro que explique paso a paso como se programa algo asi (limpio y con un buen diseño con un minimo de calidad, al menos con el suficiente para que todo aquel programador que no haga esto sienta verguenza al salir a la calle, aparecer por internet, o hablar de las bondades del lenguaje de moda).

En fin si hay un talento capaz de aportar o incluso tomar el control del proyecto manteniendo el ideal, bienvenido.

Compartir este post


Enlace al post
Compartir en otros sitios

Tengo el orgullo de presentar la primer version aceptablemente funcional de morg, el repositorio del proyecto sigue siendo el mismo

 

https://github.com/nasciiboy/morg/

 

por aleatorios e incontrolables sucesos, se paso de C a Go, para optener el codigo y generar el ejecutable (requisito contar con go)

 

go get -v github.com/nasciiboy/morg

 

utilizar asi

 

$ morg fichero.morg

 

que produce un fichero "fichero.html"

Editado por nasciiboy
hortogragia

Compartir este post


Enlace al post
Compartir en otros sitios

Está interesante el proyecto, para lo bien que te manejas programando e ideando estas cosas, la escritura está bastante descuidada, tanto la ortografía cómo sintaxis, se hace difícil leer la documentación la verdad, cuando saque algo de tiempo estudiaré mejor todo tu trabajo, porque apunta maneras.

Compartir este post


Enlace al post
Compartir en otros sitios

escribir no es mi fuerte, fallos ortograficos muchos y muchos dixlexicos, abri un blog para mejorar ese aspecto, pero aun dando varias revisiones no faltan los errores, ha, ha, hasta el nombre de la libreria lo escribi de formas distintas biskana se llama y dos veces puse biscana.

 

aver que tal se desarrolla, de momento solo es un prototipo aceptablemente funcional, trate de dividir el codigo de forma coherente, lo mas complejo son el monton de expreones regulares y el fichero biskana/makeHtmlBody donde se concentra la mayoria del codigo, con todo, no es muy extenso apenas 1000 lineas

Compartir este post


Enlace al post
Compartir en otros sitios

agrege una seccion para explicar como se instala go y echar un vistaso a exportador https://github.com/nasciiboy/morg/blob/master/howto.md

Compartir este post


Enlace al post
Compartir en otros sitios

he actualizado un poco el programo, ahora tiene dos comandos, export y tui, uno claro esta para expartar el documento (a html) y el otro para visualizarlo en la terminal. esto ultimo aun muy, muy, muy muy verde, ya que no encontre una libreria de manejo de terminal en go medianamente completa... asi que tome otra libreria (termbox) y sobre ella inicie a programar cosillas. llebo poco mas de una semana en ello y aun hay mucho por hacer, de hecho apenas y es funcional, ademas aparecen artefactos de ves en cuando, si alguno entiende a profundidad como se manipula directamente la terminal o como simplificar/mejorar lo que hace termbox, bienvenido

 

por su parte el visualizador apenas y es una prueba de concepto, para averiguar el tiempo de "renderizado" de (https://gnulinuxvagos.es/topic/6223-libro-the-go-programming-language/) un libro entero... y es muy bueno ni dos segundos en mi equipo, sin programacion paralela ni nada extraño, claro aun falta mucho por implemetar como resaltado de codigo en colorines, enlaces, tablas, hojas personalizadas de estilo, tabla de contenidos, encabezados ocultables, etc

 

si quieren ver unas capturas pasen por aca https://nasciiboy.github.io/prog/nirvana/

Editado por nasciiboy
+ info

Compartir este post


Enlace al post
Compartir en otros sitios

todo va autodidacta, por gusto, inconformidad y necesidad, eso si, sin ninguna metodologia, ni patrones ni nada, el codigo surge segun las necesidades e inconvenientes... y eso no esta muy bien, pues se ve limitado por mi ignorancia

Compartir este post


Enlace al post
Compartir en otros sitios

a modo de pequeñå actualizacion luego de muchos meses, el readme ha cambiado un poco, el codigo otro mas y el formato tambien se ha visto mejorado(?)... oh, y ahora precinde de pygments, a pasado a estar en puro go, con lo que el resaltado de codigo en el texto se incremento en varios ordenes, por ejemplo, en el fichero de prueba paso de tardar  mas de 3min a solo 2 segundos

 

en este momento estoy vagando un poco y merodeando con otros cosas, en particular leyendo mates para pasar a leer libros serios y cosas de POO y patrones, antes de "afianzar" el codigo en algo presentable al mundo (reddit (r/programming)) y tonteando con adoptar las tablas en texto plano al estilo restructure text de python, aunque no entiendo el codigo apenas nada (por que no me he puesto con python), (http://repo.or.cz/docutils.git/tree/HEAD:/docutils/docutils/parsers/rst) si alguien se pone al tema y me explica "como se hace" o como lo hacen (que es bastante complicado), para haci portarlo a Go, le doy una galleta y un emoticono unicode

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!

Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.

Iniciar Sesión