Alex Schroeder brought up the issue of colours on the #gemini IRC channel. Gemini Wiki uses a four digit number to identify users that make edits on the wiki. One use case is if you’re trying to review the things that have been edited on the wiki: you’re trying to figure out how many other people were editing pages, and if they did edit pages, how many other pages did they edit. That is why these numbers are colour-coded. This aids skimming but isn’t essential. The numbers themselves are the important part.
Example
The arguments in favour were:
- we depend on Unicode for so much (such as writing direction, normalisation), all of which is handed off to the display engine (could be a terminal, could be Emacs, could be a library used by a client), it is not unreasonable to expect that we can hand of colours to the same display engine
- the command line and the terminal are environments are were text-centered culture comes from, it is not unreasonable to expect that other environments handle colours like a terminal does, using appropriate libraries (Emacs has ansi-color and xterm-color, Python has strip-ansi and ansi2html, and so on)
- just look at astrobotany...
The arguments against:
- it is harmless as long colours can be ignored (e.g. for blind users)
- the expectation is that authors provide content, not a “user experience” (such as colours)
- colours are user interface elements of clients; that is, colours as part of documents are very different
- there will always be clients that don’t support ANSI escape sequences and they don’t degrade gracefully
- there are already a good number of non-terminal clients (graphical, mobile, audio)
- ANSI escapes codes are not Unicode, they are platform specific and therefore an arbitrary extension of text/gemini
Therefore, when colours are an option, the same content without colours should be shown by default until the user has indicated by some action that they do in fact prefer coloured documents: if so, ANSI escape sequences are fine (or serve HTML instead)
ANSI escape codes
That is why the list of changes now starts without colours:
Example