> Date: Wed, 30 Jan 2019 15:49:34 +0100 > Cc: [email protected] > From: Egmont Koblinger via Unicode <[email protected]> > > I outline in the document problems that arise from the terminal > emulator performing shaping on its contents in "explicit" mode, which > is to be used by Emacs and others. The terminal emulator is not aware > of the characters that are chopped off at the edge of the screen, > required for shaping. The terminal emulator is not aware of which > characters happen to be placed next to each other, but belong to > semantically different UI elements, that is, shouldn't be shaped. > > (And as a side note, FriBidi doesn't provide a method for doing > shaping on _visual_ order. I'm unsure about other libraries, and > unsure if there's an algorithm for it at all.) > > Honestly, I have no idea how to best address all these problems at > once. This is where we can think of extensions "expliti mode level 2", > use control characters that explicitly specify how to shape certain > glyphs. This is subject to further research.
Personally, I think we should simply assume that complex script shaping is left to the terminal, and if the terminal cannot do that, then that's a restriction of working on a text terminal. There's nothing you can do here, because correct shaping requires too many features that applications running on text terminals cannot use, and OTOH a terminal emulator who wants to perform shaping needs information from the application (like the directionality of the text and its language) that there's no way for the application to provide.

