News for hackers. Stuff that matters.
Re:Libgrapheme: A simple freestanding C99 library for Unicode by mananaysiempre on Tuesday November 15, 2022 @06:23PM (#33616640)
Honestly, to me it looks more like human writing is much more complex than typewriter-tyranny Latin would lead you to believe than that Unicode is a tire fire. (OpenType is a tire fire, though, befitting its history as a final peace treaty between Adobe, Apple, and Microsoft after a decade or two of shifting two-against-one alliances. Good luck convincing the half-dozen or so main font foundries to switch to something else.) I mean, look at Gujarati[1] and tell me how that thing is ever supposed to fit into character cells. Or think how Hebrew (RTL) text with (LTR) numbers should handle arrow keys in selections[2]—the problem was born in cursed depths full of unspeakable ancient monsters, you lost (possibly your mind) the moment you decided to solve it. Watch a Japanese user type a romanization of their sentence on a QWERTY keyboard, displayed using the syllabary, and then have the computer guess the word boundaries and offer the appropriate ideograms[3]—watch and despair. And none of these have anything to do with the way you’ve encoded the strings into bytes. (Unless you tell the Hebrew users to type or process text in reverse, which is also patent insanity.)

[1] https://r12a.github.io/scripts/gujarati/gu.html

[2] https://ltr.wtf/explained/bidiintro.html#selections

[3] https://en.wikipedia.org/wiki/File:IME_demonstratie_-_Matsuo...

Re:Libgrapheme: A simple freestanding C99 library for Unicode by jandrese on Tuesday November 15, 2022 @08:31PM (#33617714)
I've never seen a Unicode editor that handled Japanese top-to-bottom right-to-left oriented text. Setting up a terminal to switch between Japanese, Farsi, and German on the same screen would be quite a challenge. That's hard even on paper.
Re:Libgrapheme: A simple freestanding C99 library for Unicode by still_grokking on Wednesday November 16, 2022 @08:06AM (#33622331)
The bit encoding is only a very small part of Unicode. That alone would be likely bearable.

It's the whole concept that is problematic.

Unicode mixes way to many concepts in an unholy way. The result is insanity.

The original sin is of course that content and appearance / layout aren't strictly separated.

The whole idea that a text format should be "typewriter compatible" is also a huge part of the problem.

Human script is way too complex that one could pretend that a typewriter abstraction would suffice. But Unicode tries hard to keep this leaky abstraction (because "backwards compatibility"; even it's actually not compatible in all kinds of "corner cases", BIDI being only one). The result is the dumpster fire we've got (and that we likely never ever will get rid of, as it's "good enough" for the majority; I mean as long as you're using European scripts, and no scientific notation, math, and such…).