2021-10-15 Re: Mark It Down

The sun is up but in autumn, our flat lies in the shadow of the neighbouring building, so all I can see are glorious spots of light in the bedroom. Here in the living room, we live in the shade.

This is my response to the Markdown and ANSI escape thread winding its way through gemspace…

Thread summary by Sky Jake

Here’s what I think about it all.

If servers serve Markdown as text/markdown and Lagrange knows how to handle it, that’d be great. In the beginning, all my sites just served their raw wiki text as terrible Markdown and it worked just fine (for me). I used mdcat as a renderer inside AV-98.

A Gemini client that only handles gemtext is fine, too. Those pages are simply not available. Serving HTML via Gemini is fine!

If Lagrange renders ANSI escapes, that’d be great. If you’re a client author, there are libraries to help you, or the terminal to render them. As the author of Phoebe, and as somebody who likes colours, my server does send ANSI escapes, but they are hidden behind links. If you’re curious, there are links to examples at the end.

Phoebe supports the default look, the “colour” look, and the “fancy” look. I just bookmark the link that I like best. For the technically minded, “colour” in this example means 3-bit and 4-bit colour Select Graphic Rendition (SGR), a subset of the ANSI escapes (“ESC [ 1;36;46m some text ESC [ 0m”), and “fancy” in this example means 24-bit colour SGR (“ESC [ 38;2;255;199;6;48;2;255;199;6m some text ESC [ 0m”). It works inside Emacs, for example, because Emacs also knows how to render the SGR (well, Emacs as-is only handles the 3-bit and 4-bit SGR and the 24-bit SGR requires installing a package). In either case, Emacs as-is also supports the other SGR sequences (bold, italic, underline, reverse).

The important part is, I think, that server authors should not abuse SGR sequences. Offer a monochrome setup as the default.

I used to think we should all just support SGR but then I went down the rabbit hole and I now realise that this is tricky business and it’ll be hard to draw a line. What exactly does the server send? What exactly should a client support? So the default should be not do it.

At the same time, I like colours. I like Astrobotany. I use colours to make information easy to understand in Phoebe. So I am interested in colours.

When you continue down this road, you might think: where does it end? Will LaTeX inside HTML be next? I hope not! (Although it does look nice…) I think that writing manuals for software has led to a “deformation professionelle” – we think that we absolutely need bold and italic and underline and fixed width for all our options and variables and code examples. So what is the limit of what you think an author using gemtext should realistically be aiming for? Writing man pages? Because you don’t need all this stuff for book writing, for essay writing, for newspaper article writing, for diary writing, for journaling, for todo lists, for note taking. Perhaps you need one level of emphasis for some kinds of books. I remember Frank Herbert’s Dune using italic for inner monologue to great effect. I remember Nietzsche using increased letter spacing to great effect (“Sperrsatz”). But it seems to be that only computer people use italics and bold and a second font family in one text. Perhaps those people ought to be using Markdown, HTML, or LaTeX. I don’t think gemtext needs to be yet another Markdown flavour.

Thus, to be honest, I would probably use italics every now and then. But I can go without. I have plenty of ways to quote things with Unicode. “quote” ‘quote’ 「quote」 «quote» – and that’s without using „German quotes” or »German guillemets«.

I don’t think we need to abandon all hope if a client supports italic and bold and underline and inverse… If people need to draw a line, I’d probably say that the even the original SGR list is overkill (faint, slow blink, rapid blink, conceal, alternative font 1–9, fraktur, double underline) – it’s half way to typesetting old philosophy tracts and implement accounting software, I’d say! To me, a reasonable subset would be bold, italic, underline, crossed-out, 4-bit foreground colour, 4-bit background colour.

Thus:

Some links:

Changes on my wiki

Colour changes on my wiki

Fancy changes on my wiki

ANSI escape codes incl. SGR on Wikipedia

​#Gemini

Comments

(Please contact me if you want to remove your comment.)

I think Jake is thinking along similar lines when he talks about servers serving content in multiple formats and therefore there perhaps not being a need for Gemtext extensions on the client side.

A server can and should offer pages in multiple formats so that the user can pick which one suits their situation and client the best, be it Gemtext, Markdown, ePub, Gempub, HTML, PDF, or even some weird ANSI-styled “rich” text. For one content to be offered does not mean that others cannot be. – Sky Jake on Gemini servers

Sky Jake on Gemini servers

– Alex

---

This is exactly the kind of bullshit that chased me away. People keep saying they need more ways to express themselves, while Gemini developers are like, “no, you don’t need that, trust us, we know best”. Meanwhile, those who made HTML and CSS into what they are today are over there, pointing and laughing.

Books used to be light on formatting because typesetting used to be a slow, fiddly, tedious and error-prone manual process. It’s not more intellectual or anything.

– Felix 2021-10-16 11:46 UTC

Felix

---

Hm. But where do you draw the line? Why not just use HTML and CSS? *Every* simpler markup system, whether it be Markdown, POD, Textile, RST, or any of the others that have come and gone before are less powerful. Why not aim for animation, too? After all, animation used to be impossible, but now it’s easy to do in CSS. I bet LaTeX users are laughing, too. And Libre Office and Powerpoint users, too. As long as you don’t include *all* the features, there is always somebody somewhere needing a feature to express themselves. Therefore, I’d say, drawing a line is always necessary.

It’s simply an arbitrary line that you disagree with, but to call it “bullshit” is making it hard to argue about where to draw the line.

– Alex 2021-10-16 12:30 UTC

---

“Why not just use HTML and CSS” is exactly what I asked myself, and *walked away*.

– Felix 2021-10-16 12:52 UTC

Felix

---

TBH, using colors is likely dangerous, since you don’t really know what a page’s background is going to be. It might not look flashy without specific colors, but at least my eyes won’t bleed from looking at what the author considers cool…

– anonymous 2022-03-22 14:45 UTC

---

Dangerous is such a big word for such a small issue.

– Alex 2022-03-24 09:29 UTC