Subject: Re: bug#28242: Batch mode compiling: Error messages are displayed with "invalid character" glyph bounding symbols.

From: Alan Mackenzie <[email-masked]>
Date: Sat, 26 Aug 2017 20:39:56 +0000

Hello, Eli.

On Sat, Aug 26, 2017 at 22:40:04 +0300, Eli Zaretskii wrote:
> > Date: Sat, 26 Aug 2017 19:24:31 +0000
> > Cc: [email-masked]
> > From: Alan Mackenzie <[email-masked]>

> > > No, I think the problem is in the function using_utf8, called from
> > > 'main'.  Does it return true in your case?

> > I haven't worked out how to hook up gdb to a batch mode Emacs yet

>  $ gdb ./emacs
>  ...
>  (gdb) break using_utf8
>  (gdb) r -batch ... <rest of arguments here>

> > > If so, what does terminal-coding-system return in your case in the
> > > -batch invocation, and what is the value of locale-coding-system in
> > > that case?

> > In an interactive session, terminal-coding-system is utf-8-unix and
> > locale-coding-system is also utf-8-unix.

> > But I would be disturbed if my batch mode session didn't report
> > utf-8-unix, or something similar.  It's running on an up to date
> > GNU/Linux system.

> If you locale's codeset is UTF-8, then how come your terminal cannot
> display those quote characters?

The particular font in use (I haven't configured one since setting up
this new box) simply doesn't have mappings for the curlies.  I don't know
why that should be.  My one theory is that the designer of the font
decided to use a long diagonal line rather than a reversed comma shape
for grave (`), making it unsuitable for doubling up as the left curly
quote.  Or something like that.

But there are likely many, many PCs around using this font, or others
like it.

> > Surely Emacs doesn't assume from the use of UTF8 that curly quotes are
> > displayable?  Those quotes are merely two characters from several
> > hundred thousand, and not all of these are going to be displayable.  On
> > a Linux tty, as I use, there is a maximum of 256 displayable glyphs.
> > Most UTF8 characters aren't displayable.

> We are not interested in all of the Unicode characters, we are only
> interested in a few of them.

> Anyway, I think it works for everyone else, the question is why
> doesn't it work for you?

I haven't (yet) set up a terminal font for Emacs, I'm just using some
default font.  Everything else, so far, seems to work with it.  It seems
to me the problem is that Emacs is outputting curly quotes to the screen
without having determined that they can be displayed properly.

-- 
Alan Mackenzie (Nuremberg, Germany).