This gist will show the support of BiDirectional text in the terminal emulators and console programs. You can read more about the standardization efforts at the dedicated page of FreeDesktop Terminal BiDi working group.
Logical Order | ◀ ◀ ◀ RTL | LTR ▶ ▶ ▶ |
---|---|---|
WHAT IS UNICODE؟ in arabic | in arabic ؟EDOCINU SI TAHW | ؟EDOCINU SI TAHW in arabic |
ما هو الترميز الموحد يونيكود؟ in Arabic | ما هو الترميز الموحد يونيكود؟ in Arabic |
According to a new standard
Please note, that specification is preliminary yet, and VTE implementation is still work in progress:
- all libvte based terminals - https://gitlab.gnome.org/GNOME/vte/issues/53
- libvte-based Gnome Terminal - https://bugs.launchpad.net/ubuntu/+source/vte/+bug/263822
- libvte-based sakura
- libvte-based xfce4-terminal
- libvte-based Terminator
- libvte-based Tilix - written in D. Similar user interface as for Terminator.
- libvte-based Lilyterm - https://github.com/Tetralet/LilyTerm/
- libvte-based ROXTerm
- libvte-based evilvte https://github.com/caleb-/evilvte
- libvte-based Termit
- libvte-based Tilda
- libvte-based tinyterm
- libvte-based Pantheon Terminal
- libvte-based lxterminal
Incompatible and incomplete implementations
- neatvi - Vi-like editor aligrudi/neatvi#8
- another libvte-based Termite
- st (from suckless)
- xst fork of st gnotclub/xst#55
- iterm2
- alacritty - written in Rust alacritty/alacritty#663
- kitty - uses OpenGL kovidgoyal/kitty#2109
- cool-retro-term
- Termux - Android platform
- Black Screen - crossplatform, HTML/CSS/JS-based
- Hyper.app - crossplatform, HTML/CSS/JS-based (Electron)
- hterm - HTML/CSS/JS-based (ChromeOS)
- Windows Terminal - Windows platform, standard terminal microsoft/terminal#538
- Tera Term - Windows platform
- ConEmu - Windows platform Maximus5/ConEmu#1665
- FinalTerm - abandoned, iTerm2 borrowing it's ideas and features.
- MacTerm - Mac OS X platform
- Windows 10 bash and cmd.exe console - https://wpdev.uservoice.com/forums/266908-command-prompt-console-windows-subsystem-for-l/suggestions/34937857-bidirectional-text-support
- tmux - not yet tmux/tmux#1936
- screen - not yet
- pymux - not yet prompt-toolkit/pymux#77
- dvtm - not yet martanne/dvtm#99
- neovim - neovim/neovim#553
- vim - vim/vim#204
- radare2 - https://github.com/radare/radare2/issues/2032
- irssi - irssi/irssi#1133
I'd say all terminals I've seen to do bidi do it that way - how else? To check, however, please upload your test file.
The konsole feature "Table characters BiDi mode override" might be interesting but unfortunately it is not really specified (which characters? examples?); maybe I'll submit them an issue.