đŸ Archived View for nytpu.com âș gemlog âș 2022-11-23 captured on 2024-08-25 at 07:10:56. Gemini links have been rewritten to link to archived content
âŹ ïž Previous capture (2024-05-12)
-=-=-=-=-=-=-
The second new program I've been working on for a while and finished this month, I'm announcing the release of the Gemroff markup language!
https://git.sr.ht/~nytpu/gemroff
It's both an Ada[1] library and a CLI utility for parsing and rendering Gemroff markup to a variety of formats, currently:
Per the name, its heavily inspired by both Gemtext and Roff. The markup language itself is line-based like Gemtext, but supports inline markup as well as some additional block markup. Much of the inline markup takes inspiration from the Mandoc[2] flavor of Roff. It handily delineates block markup from inline markup by having block markup be Gemtext-style symbols and inline markup be âdottedâ like Roff macros (e.g. `.Em` is for emphasis).
The design is a mash-up of the sheer simplicity of line-based Gemtext, and my favorite parts of writing Roff[3] and Mandoc. Notably, it has markup for enclosures such as quotations and parentheses; and like Mandoc has what I've termed âabutting punctuationâ, which allows you to flexibly add punctuation next to, but not inside, inline markup elements. It also has several trigraphs[4] so I can write my most-used pieces of Unicode punctuation on ASCII-only retro computersâwhere I often write Gemlog posts.
It's actually pretty weird to describe it as ânewâ, because I've been using it for almost a year and generally improving it as I came across issues or things I didn't like. However, this is the first public announcement of it (although the repo's been publicly available for those looking); and I *have* just finished rewriting it in Ada. The new implementation is much improved over the original poorly-written C implementation.
Related fun fact, all Gemlog posts I've written in 2022 have been written in Gemroff, and you can view the Gemroff source by going to the source repo:
https://git.sr.ht/~nytpu/nytpu.com
â
Even if you don't care about Gemroff and won't ever use it (perfectly reasonable and understandable), here's a little bonus: I converted the Gemtext portion of the Gemini Specification to a man page!
â
contact via email: alex [at] nytpu.com