skyjake / lagrange

A Beautiful Gemini Client
https://gmi.skyjake.fi/lagrange/
BSD 2-Clause "Simplified" License
1.2k stars 62 forks source link

Add support for rendering Asciidoc files served up by gemini servers #481

Open X86BSD opened 2 years ago

X86BSD commented 2 years ago

I've been thinking for a long while now wether to suggest this or not. I understand the argument for gemtext and the protocol being mostly frozen. But markdown is such a barbaric language. You can barely format in it. Asciidoc is incredibly simple to write and allows for some control of formatting, tables, graphing, etc.

I do not want to see Gemini devolve into the god forsaken web, but it's goal to be simple is way beyond simple, its bondage for content and writing. IMO it's greatly hampering Gemini's adoption. If lagrange would support the rendering of asciidoc I think it would make Gemini more widely adopted and the content, the ACTUAL content, not ads, or malware, but the content people write, far more compelling than being stuck with markdown. I'm definitely interested in discussing this. What does the community think?

skyjake commented 2 years ago

I think Asciidoc is a complex enough system so that it shouldn't be re-implemented as part of Lagrange, but should rather be integrated with as an external tool, when available. Such integration actually shouldn't be too difficult to pull off, although Lagrange's document layouts don't support all features of Asciidoc (e.g., tables) and these would have to be emulated somehow with preformatted blocks or images.

But of course, that would make the ability to view Asciidoc an optional feature, and content authors wouldn't be able to rely on readers being able to view it as intended.

This generally comes down to the same issue as with any non-Gemtext format. If a document benefits from additional/fancy formatting, it should be served as both Gemtext and in whatever full-fledged Asciidoc/Markdown/PDF is most fitting, so it can be viewed in a simple form by any Gemini client and in its true format using appropriately specialized viewer apps.