Subject: bug#50865: 28.0.50; Emoji with emoji modifier in Linux console garbles emacs display

From: Eli Zaretskii <[email-masked]>
Date: Sat, 02 Oct 2021 13:58:59 +0300

> Resent-From: Eli Zaretskii <[email-masked]>
> Original-Sender: "Debbugs-submit" <[email-masked]>
> Resent-CC: [email-masked]
> Resent-Sender: [email-masked]
> Date: Fri, 01 Oct 2021 20:48:32 +0300
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked]
> 
> > From: Aura Kelloniemi <[email-masked]>
> > Cc: [email-masked]
> > Date: Fri, 01 Oct 2021 19:02:53 +0300
> > 
> > On 2021-10-01 at 18:41 +0300, Eli Zaretskii <[email-masked]> wrote:
> > Hi,
> > 
> >  > Then by default auto-composition-mode should be disabled on that
> >  > console.
> > 
> > Yes, sure. What about Linux's lack of support for 2-column wide characters?
> 
> Are you sure they don't? what do the developers say about that?

If indeed the Linux console doesn't support double-width characters,
or at least enough of them to cause trouble with Emacs display, my
suggestion would be to use this setting:

  M-x set-terminal-coding-system RET latin-1 RET

This will display characters outside the Latin-1 range as \uNNNN or
\U0nnnnn (depending on the codepoint), with an underline attribute to
make it easier to tell where the character's code ends and the
following text begins (in case it begins with a digit).  This should
allow you to read the rest of the text without messing up the display.
I don't really see a better solution for such problematic terminals.
Emacs relies on the terminal to display characters correctly, using 2
columns (with padding by empty space) when the character is
double-width.  If the terminal doesn't live up to these expectations,
the display will become garbled.