I looked through https://terminal-wg.pages.freedesktop.org/bidi/implementations.html and did not see any mathematical proofthat an application cannot be made to function properly if the terminal rearranges the letters. Do you have an explicit link tothis proof? (I'm quite comfortable with Ph.D. level mathematics and remember enough of Galois Theory and constructions withruler and compass to follow similar proofs for this issue). The summary is that the simple requirement of being able to enter a sequence of Hebrew letters followed by a '?' does not work:the '?' appears at the beginning of the letters instead of at the end. This would be a much more common usage than mixed Hebrew/Latin characters. This issue does not happen if the sequence of letters is followed by a numeral as these are treated as strong characters. So the question remains: why can't ordinary punctuation marks be treated as numerals for this purpose? Customizing vim to do this is trivial and not related to this issue:
" Quick way to insert RLM (Right-to-Left Mark) after punctuation inoremap <expr> . ( &keymap == 'He' ? '.<C-V>u200f' : '.' ) inoremap <expr> , ( &keymap == 'He' ? ',<C-V>u200f' : ',' ) inoremap <expr> ? ( &keymap == 'He' ? '?<C-V>u200f' : '?' ) inoremap <expr> ! ( &keymap == 'He' ? '!<C-V>u200f' : '!' ) inoremap <expr> " ( &keymap == 'He' ? '"<C-V>u200f' : '"' ) inoremap <expr> - ( &keymap == 'He' ? '-<C-V>u200f' : '-' ) inoremap <expr> : ( &keymap == 'He' ? ':<C-V>u200f' : ':' )

