If your client/browser supports it, you may prefer the
original Markdown version of this article.
The real problem with Gemtext: no paragraphs
The Gemtext format comes in for a lot of criticism. People who try Gemini, and then abandon it, frequently cite its limitations as their reason for disengagement. Usually the complaints centre on Gemtext's lack of expressiveness -- Gemtext lacks a way even to emphasize words.
I've never grown to love Gemtext although, Heaven knows, I've tried. I can live without emphasis, in-line links, and tables, but the problem goes deeper than that. The real problem with Gemtext is one that authors often don't think much about:
Gemtext doesn't define a way to create a paragraph.
In most western languages, text is divided into lines, which are grouped into paragraphs. The paragraph divisions are crucial for readability. Software that displays text usually highlights the paragraph boundaries by extra spacing, or indentation, or some other visual element. Without these visual cues, the reader just sees a "wall of text".
In Markdown, a paragraph is any number of lines, followed by at least one blank line. In HTML, it is any text between `<p>` and `</p>`. In Gemtext? Well, that's the problem: nobody knows.
Gemtext divides text up into lines of arbitrary length. While Gemtext tutorials often describe these long lines as 'paragraphs', the specification doesn't say they are. What it says is:
Text lines have no special semantics and should be presented to the user in a visually pleasing manner for general reading, the precise meaning of which is at the client's discretion. [...] Each individual lines [sic.] in a Gemtext document is a stand-alone entity.
The word 'paragraph' doesn't appear anywhere in relation to text lines. It really isn't clear what an 'entity' amounts to.
It turns out that most Gemini clients _don't_ render the long text lines as paragraphs. Lagrange, Alhena, and Amfora do not, anyway. They apply no greater spacing between these lines, than they do between lines that have been wrapped to fit the screen. As a result, authors have to apply _extra_ blank lines, to create the impression of a paragraph; but nothing in the specification says they should.
This means that authors who _don't_ adopt the unspecified behaviour of adding extra spacing risk their writing being unreadable, because of lack of visual structure. It is, of course, a key feature of Gemtext that authors shouldn't be able to control the appearance of their documents -- that's the reader's choice. But wanting your document to be readable isn't asking too much, I think.
You might think that we could avoid this problem if clients changed so they _did_ treat long lines in Gemtext as paragraphs. This probably wouldn't help, though: too many authors have gotten used to clients putting lines together without spacing. Their writing looks really odd if the client inserts extra vertical space.
My own client, [Caztor], follows the lead of all the others: by default it puts no extra vertical space between long lines. However, because this breaks some authors' writing, Caztor has at least an option to insert the additional 'paragraph' spacing that the author, presumably, assumed the client would add.
Caztor
This is a problem that should never have existed. All that would have been needed, was for the Gemtext specification to state that long lines either should, or should not, be treated as paragraphs. Instead we have a kind of _de-facto_ specification created by convention.
I'm never going to love Gemtext, and this is just one of the many reasons. Fortunately, most modern clients now support Markdown to some extent, even if (like Alhena and Lagrange) they strip out the in-line links and put them in separate sections. Caztor has full support for Commonmark Markdown, including in-line links and tables.
Published 2026-05-20, updated 2026-05-20
Categories
gemini
gemlog
Capsule home page
My main website