Subject: bug#19993: 25.0.50; Unicode fonts defective on Windows

From: Ilya Zakharevich <[email-masked]>
Date: Sun, 8 Mar 2015 09:20:17 -0700

On Sun, Mar 08, 2015 at 05:51:16PM +0200, Eli Zaretskii wrote:
> > What is actually supported:
> > 
> >   0400 - 04FF    Everything but 04d8,04d9 (Schwa, used in Cyrillic Azeri — but 
> > contemporary Azeri is written in Latin) 
> >   0500 - 052F    Only 0500 - 0513, 051a - 051d supported
> >   2DE0 - 2DFF    None supported (5.1)
> >   A640 - A69F    None supported (5.1 and later)
> 
> FWIW, on one system I use frequently (a pretty standard Windows 7
> machine), the last two blocks are not supported by any font.  Likewise
> on another system, an XP with a lot of additional fonts installed.
> But if I install GNU Unifont, then Emacs does use it for these blocks.
> So somehow we do TRT in some situations.  Maybe these subranges are
> just a filter?

BTW, using Unifont from unifondry is asking for trouble.  And here I
do not mean just your eyes (it may be good at 16pt), but the fact that
it won’t interact with any other font — it claims glyphs for all the
characters in all the ranges — even if it does not know the correct glyph.

My build (“Unifont Smooth” on ilyaz.org/fonts) is properly behaving
(at least in this regard) — and is much better for eyes in all the
resolutions.

> > Does it look like a good indication of anything?  I would say no… Do
> > you know any other tool looking at this bitmap for choosing which font
> > to pick up for a particular character?
> 
> I guess by "tool" you mean a technique or algorithm that uses the font
> data for selecting the appropriate font?  If so, no, I know very
> little in this area, on Windows or elsewhere.  Enumerating all the
> glyphs would work, but is probably prohibitively expensive.

Enumerating all the glyphs is exactly how all the tools I know
work — at least those which can show all the characters which can be
shown on a system.

And so far, on Windows I found one such tool (of those not using
fontconfig, like mplayer):

 firefox with user’s customizations from
   http://search.cpan.org/~ilyaz/UI-KeyboardLayout/lib/UI/KeyboardLayout.pm#There_is_no_way_to_show_Unicode_contents_on_Windows

    (Currently, these instructions are not reflecting the fact that
     Unifont Smooth became well-behaving, so may be used as a
     substitution font too.)

Ilya