#3827: U+200F RIGHT-TO-LEFT MARK in Subject yields a blank line with GNU Screen and incorrect arrow cursor position -----------------------+---------------------- Reporter: vinc17 | Owner: mutt-dev Type: defect | Status: new Priority: critical | Milestone: Component: display | Version: Resolution: | Keywords: -----------------------+----------------------
Comment (by vinc17): I forgot that I reported it as a screen bug. After some thoughts, I think that this may be both a Mutt bug and a screen bug. I don't know what the standards say when the RIGHT-TO-LEFT MARK is sent to the terminal, but in any case, sending it to the terminal seems wrong unless Mutt, ncurses and the terminal support right-to-left writing locally in some string. After trying on the [https://en.wikipedia.org/wiki/Right-to-left_mark Wikipedia example]: {{{ printf "I enjoyed staying -- באמת\!\u200f -- at his house.\n" }}} neither xterm nor GNOME Terminal supports this (both output the exclamation on the right) and they have different behavior (xterm outputs the RTL mark as a space, but not GNOME Terminal); however in both cases, the RTL mark is preserved by copy-paste, e.g. to GNU Emacs, which supports it. And that's just the easy case. When strings can get truncated/padded such as in Mutt, I don't know what the behavior should be... Thanks for the patch, Kevin, I'm going to try it. I think that filtering these bidi marks is the right solution, at least until terminals support them and the specs become clear. -- Ticket URL: <https://dev.mutt.org/trac/ticket/3827#comment:3> Mutt <http://www.mutt.org/> The Mutt mail user agent