Rants about "plain text"

/

What exactly is "plain text"? Does NBSP and ZWSP belong to plain text or HTML? Some application-specific markup or side-channel? What about right-to-left text? Vertical text? To some extent, even linefeed has this problem. Unicode tends to encompass everything.

Unicode: everything, except some. I think Han unification is a mistake. Also, why aren't there full-width curly braces? (There are, via variation sequences, but I guess widespread support will take forever.) Why are box drawing characters East Asian Ambiguous width, making them unreliable for their stated purpose?

Unicode everywhere. Homoglyph attacks really shouldn't come as a surprise. Allowing anything other than ASCII in security-critical contexts is just silly.

Line wrapping sucks. There are two approaches: the writer wraps lines ("hard wrap"), or the reader wraps lines ("soft wrap"). Both suck.

Hard wrap only works for monospaced fonts and wide-enough screens (I don't want to admit this but people are reading text on smartphones). Certain annoying patterns may emerge from hard wrap, like "rivers" and a lone "I" at the end of a line longer than its neighbors. Automatic hard wrap needs the text formatted in some way the editor can "understand", which is nontrivial (look up vim's help for 'formatoptions').

Soft wrap may result in weird patterns at certain device widths, and the reader program must still "understand" the text to some extent: even the rudimentary "don't break words". Paths, URLs, and code are often mishandled. The writer must insert format-control marks like NBSPs to ensure correct wrapping at all widths, which is so tedious even TeX users often ignore them. Also, Unicode line breaking rules are complicated and not always correct (I think it allows a line break between the two plus signs in "C++".)

A variant of hard wrap, used in e.g. textplain.blog, is to also justify lines by tweaking word use and the like. This looks pretty, but apart from the downsides of regular hard wrap, takes time and practice and gets harder the shorter the lines are and the longer the average word is. It also discourages modifications since each change needs a rewrite till the end of the paragraph.

This page is copyright © 2026 Vursc and licensed under CC BY-NC-ND 4.0.