#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