Hi, > > And if you argue "so make emacs print your > > new code to disable formatting", so do thousands of other programs that are > > less sophisticated than emacs. > > Yes, I do argue that emacs will need to print a new escape sequence. > Which is much-much-much-much-much better than having to tell users to > go into the settings of their macOS Terminal / Konsole / > gnome-terminal etc. and disable BiDi there, isn't it?
Let me phrase it slightly differently. Emacs will not "need" to print a new escape sequence, but will have the possibility to do so. VTE is pretty certainly going to switch its default behavior to what Konsole, PuTTY, Mlterm, macOS Terminal do now: to perform BiDi on its contents. This mode is not suitable for Emacs or for any BiDi-aware text editor. Similarly to these terminal emulators, GNOME Terminal (and hopefully other VTE-based frontends) will also most likely have a user setting to force disable BiDi. But as opposed to the aforementioned terminals, VTE will also turn off BiDi upon a designated escape sequence. VTE is the terminal widget behind several emulator apps, such as GNOME Terminal, Xfce Terminal, Tilix, Terminator, Guake... I don't have metrics, but according to various user polls I have the feeling that VTE's usage share among Linux users is pretty significant, somewhere in the ballpark of 50%. Of course Emacs, or any other text editor, can still point its users to the terminal's setting to disable BiDi. And then if the user also wishes to have BiDi for "cat", they'll have to keep toggling it back and forth. Or Emacs can emit the new escape sequence and then it will be fully automatic. Which one puts less supporting burden on Emacs's developers and supporters? Which one is the better for the users? I think the answer is the same to these two questions, and you sure know which answer I'm thinking of. According to this specification, nothing is going to be "worse" than it already is in those few aforementioned terminal emulators. The new default behavior will be the same as their behavior. We'll just further extend it with the possibility of switching back to the old mode without annoying the user. I hope this clarifies a lot. cheers, egmont

