Proposal for BiDi in terminal emulators
Benjamin Riefenstahl via Unicode
unicode at unicode.org
Sat Feb 2 17:34:54 CST 2019
> Benjamin Riefenstahl wrote:
>> the severe limitations of that environment.
Richard Wordingham writes:
> Eli will probably tell me I'm behind the times, but there are a few
> places where a Gnome-terminal is better than an Emacs GUI window. One
> is colour highlighting of text found by grep. Another is that screen
> overwriting doesn't work in an Emacs window.
I have not followed all of this thread, but is that on-topic? Anyway I
did not mean to talk about Emacs GUI windows, they are a completely
different animal from terminal windows in my mind. Where Emacs GUI
windows lack features in their interaction with other programs, people
who care about that are implementing those features. There is no theory
or research necessary, beyond understanding the existing codebase.
>> Additional character forms could be added, where the Unicode
>> repertoire is not sufficient. This could use PUA characters
> You do not need PUA. For U+0756 ARABIC LETTER BEH WITH SMALL V, we
> can form:
> Initial form: 200C 0756 200D
> Medial form: 200D 0756 200D
> Final form: 200D 0756 200C
> Isolated form: 200C 0756 200C
> The tricky bit is to get the terminal to accept them as cell contents.
If you want to implement in the terminal that it should interprete these
sequences, you can just as well implement shaping as a whole,
i.e. interprete any sequence that needs shaping. There is no reason for
control characters here, I think.
I was looking at it from the standpoint of what works now, sending
presentation forms to the terminal, and what than could be simple means
to extend that mechanism to support more shaping variants. PUA
characters could work without changes in the terminal emulators
themself. You would only need the font that supports those PUA
characters, which is easy if you start from a Truetype font that already
supports that script and thus presumably already has that glyph. From
my POV that is a very simple technique.
More information about the Unicode