💾 Archived View for stacksmith.flounder.online › gemlog › 2021-09-23.Making_Parsing_Easier.gmi captured on 2022-07-16 at 16:46:41. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

GMI parsing

So Gemini was designed for simplicity -- especially simplicity in implementing clients. And it hits that goal, although calling it a weekend project is an exaggeration (unless you call a half-assed command-line wget-like utility a client).

There are hardly any tags in GMI - three levels of headers, blockquote, list items and links. But it is annoyingly difficult to parse a GMI file (well, kind of difficult). Each tag is always at the start of a line (nice), but it can be between one and three characters long... And blockquotes are modal, making the logic more convoluted.

Gopher had single-character types... Why is Gemini format a half-assed Markdown?

Unicode allows single-character tags, people!

It would have been so much easier if single-character tags (like gopher) were used to type lines. With unicode, we have an almost-infinite choice of codepoints, so why not pick some that look right and use those? How about:

⥤blah blah

⇒ blah or even ⟹ blah

Mercury protocol is ripe for this simplification...