Bidi paragraph direction in terminal emulators (was: Proposal for BiDi in terminal emulators)
Egmont Koblinger via Unicode
unicode at unicode.org
Fri Feb 8 10:44:53 CST 2019
> Why would they want to toggle it back and forth? What are the use
> cases where it makes sense to mix both modes? IME, you either need
> one or the other, never both.
(Back to the basics, which are mentioned pretty clearly in my
specification, I believe, and I've also described here multiple
For certain apps, one of the modes is required (e.g. for cat it's the
implicit mode). For other tasks it's the other mode (e.g. for emacs
the explicit mode).
In a typical terminal session, you don't just use one of these kinds
of commands. You use various commands in a sequence, e.g. a cat
followed by an emacs, then a zip, then whatnot, then emacs again, then
a cat and a grep, etc...
The very last thing I would want to do as a user is to toggle some
setting back and forth, let alone remember which command needs which
> You can hardly expect Emacs (or any other application) to support
> control sequences that are not yet defined, let alone standardized.
The most essential sequence, BDSM to switch between implicit and
explicit modes, has been defined for like 28 years now. Sure I bring
slight changes and clarifications to it, as well as introduce new
ones. As of my recommendation which I've announced, these new ones are
defined as well.
It's probably never going to be a de jure standard, adopted by ECMA or
whatever "authority", but that's not what happens anywhere else in
terminal emulators nowadays. An "authority" which doesn't keep up to
date with innovations, doesn't have a feedback forum, and hasn't
released a new version for 28 years, is clearly not suitable for
We have just announced a public forum called "Terminal WG" for
terminal emulator developers to collaborate and join their efforts
wrt. new extensions, rather than ad-hoc collaborations or each going
their own separate ways. We'd like its work to be widely accepted as a
basis for the desired behavior. My BiDi work is one of the works
hosted there. It'll probably never be an "authority" like ECMA, but
hopefully will be some kind of well-respected place of specs to adhere
> When they become sufficiently widely available, I'm sure someone will
> add them to Emacs.
There's always a chicken and egg problem with this attutide. At the
very least, I'm kindly asking Emacs to emit BDSM so that when it's
fired up on a gnome-terminal, it'll have the terminal's BiDi
automatically disabled. This has nothing to do yet with Emacs's
built-in terminal emulator. Addressing that is sure a much bigger
chunk of work; I hope it'll happen if my BiDi proposal indeed turns
out to be successful.
More information about the Unicode