unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: sand@blarg.net
To: Kenichi Handa <handa@m17n.org>
Cc: 613@emacsbugs.donarmstrong.com, emacs-devel@gnu.org,
	sand@blarg.net, bronger@physik.rwth-aachen.de
Subject: bug#613: 23.0.60; Unicode display problems
Date: Thu, 28 Aug 2008 08:16:10 -0700	[thread overview]
Message-ID: <18614.49466.916241.572583@priss.frightenedpiglet.com> (raw)
In-Reply-To: <E1KYbM8-0002wC-2A@etlken.m17n.org>

Kenichi Handa writes:
> In article <18613.24465.897881.636770@priss.frightenedpiglet.com>, sand@blarg.net writes:
> 
> > I'm seeing a complete regression.  I rebuilt from CVS HEAD, confirmed
> > that your change is in fontset.el, and Emacs picks AR PL ShanHeiSun
> > for open single quotes.  Putting the script definitions back in fixes
> > the problem.  I have pasted "good" and "bad" font log blocks to the
> > end of this message.  Those logs are particularly for Neep Alt, but
> > the Misc Fixed ISO10646 fonts have the same problem.
> 
> [...]
> > Unsuccessful load of LEFT SINGLE QUOTE with new definition:
> 
> > font for: (8216)
> > ftfont-list: -jmk-Neep Alt-*-iso10646-1
> [...]
> >   -jmk-Neep Alt-normal-normal-normal-*-20-*-c-*-iso10646-1
> [...]
> >   -jmk-Neep Alt-normal-normal-normal-*-20-*-c-*-iso10646-1
> 
> Don't you happen to have two sets of "Neep Alt" fonts in the
> fontconfig's fontpath; one set supports LEFT SINGLE QUOTE,
> and the other doesn't?

Neep Alt was originally designed for ISO8859-1 encodings, and my
installation still has iso18859-1 fonts that definitely lack LEFT
SINGLE QUOTE.  However, I constructed additional fonts to support
ISO10646-1, by extracting the Misc Fixed glyphs outside of ISO8859-1,
and appending them to the Neep Alt font definitions.  Those fonts are
defined to have the iso10646-1 encoding.

When I first noticed the font display problem a couple of months ago,
I traced the font code in the debugger and found that Emacs considered
the ISO8859-1 fonts to be valid matches for LEFT SINGLE QUOTE and
similar codepoints.  It would:

  * load the ISO8859-1 font, rather than the ISO10646-1 font,
  * notice that LEFT SINGLE QUOTE was missing, and then
  * start looking in other font families for the codepoint.

Adding LEFT SINGLE QUOTE and a couple of others as "symbol"
representatives let Emacs filter out the ISO8859-1 fonts earlier in
the code path, leaving the ISO10646-1 fonts for Emacs to use.  The
Misc Fixed fonts had the same problem, as they also included ISO8859-1
and ISO10646-1 encodings, and this solution worked for them as well.

One approach that we might consider is to change the C code, so that
any ISO8859-1 font is immediately skipped when the codepoint is 256 or
greater.  Or we could change the font loading code to try multiple
encodings within a family before dropping back to other families.

Derek






  reply	other threads:[~2008-08-28 15:16 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <87myjv2tc8.fsf@stupidchicken.com>
     [not found] ` <E1KQGun-0001xF-Ms@etlken.m17n.org>
     [not found]   ` <87zlnrx33y.fsf@physik.rwth-aachen.de>
     [not found]     ` <E1KQbdw-0005G7-Jw@etlken.m17n.org>
     [not found]       ` <87ej52vg8r.fsf@physik.rwth-aachen.de>
2008-08-13 10:46         ` bug#613: 23.0.60; Unicode display problems Kenichi Handa
2008-08-18 12:15           ` Kenichi Handa
2008-08-18 12:49             ` Torsten Bronger
2008-08-18 12:59               ` Kenichi Handa
2008-08-18 13:52                 ` Torsten Bronger
2008-08-20  1:38                   ` Kenichi Handa
2008-08-20 14:11                     ` sand
2008-08-21  0:51                       ` Kenichi Handa
2008-08-27 14:07                         ` sand
2008-08-28  6:51                           ` Kenichi Handa
2008-08-28 15:16                             ` sand [this message]
2008-09-01  2:53                               ` Kenichi Handa
2008-09-03  2:34                                 ` sand
2008-08-20 16:01                     ` Torsten Bronger
2008-08-21  1:01                       ` Kenichi Handa
2008-08-21  1:18                         ` Juanma Barranquero

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=18614.49466.916241.572583@priss.frightenedpiglet.com \
    --to=sand@blarg.net \
    --cc=613@emacsbugs.donarmstrong.com \
    --cc=bronger@physik.rwth-aachen.de \
    --cc=emacs-devel@gnu.org \
    --cc=handa@m17n.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).