[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#17457: 24.4.50; REGRESSION: "Invalid font name: -outline-Lucida Cons
From: |
Eli Zaretskii |
Subject: |
bug#17457: 24.4.50; REGRESSION: "Invalid font name: -outline-Lucida Console-normal-normal-normal-mono" |
Date: |
Sun, 11 May 2014 20:41:59 +0300 |
> Date: Sun, 11 May 2014 10:19:58 -0700 (PDT)
> From: Drew Adams <drew.adams@oracle.com>
> Cc: 17457@debbugs.gnu.org
>
> > There must be some other factor at work here, because I don't
> > understand how you get your truncated spec.
>
> Yes, sorry. This is what I was doing, with var FONT as input:
>
> (save-match-data
> (let ((xlfd-regexp "\\`\\(-[^-]*-[^-]*-[^-]*-[^-]*-[^-]*-[^-]*\\)\
> -[^-]*-[^-]*-[^-]*-[^-]*-[^-]*-[^-]*-[^-]*-[^-]*\\'"))
> (or (not (string-match xlfd-regexp font))
> (setq font (replace-match "\\1" nil nil font)))))
>
> I truncated it because I am not interested in anything except the
> first 6 fields of the XLFD string.
The right way is to replace the other fields with "*", not chop them
off.
> I have fixed my code now so that the main feature works. But `font-info'
> still complains about some of the fonts I have. I've wrapped the
> `font-info' call in an `ignore-errors' to ignore that, but this means that
> I cannot get font info for those few fonts. So be it.
>
> FYI, here are some problematic fonts. It is no doubt the addition of
> extra fields that makes them invalid.
>
> -outline-MingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-big5-0
> -outline-MingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso10646-1
> -outline-MingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso8859-1
> -outline-MingLiU_HKSCS-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-big5-0
> -outline-MingLiU_HKSCS-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso10646-1
> -outline-MingLiU_HKSCS-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso8859-1
> -outline-PMingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-big5-0
> -outline-PMingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso10646-1
> -outline-PMingLiU-ExtB-normal-normal-normal-serif-*-*-*-*-p-*-iso8859-1
> -outline-SimSun-ExtB-normal-normal-normal-mono-*-*-*-*-c-*-gb2312.1980-0
> -outline-SimSun-ExtB-normal-normal-normal-mono-*-*-*-*-c-*-iso10646-1
> -outline-SimSun-ExtB-normal-normal-normal-mono-*-*-*-*-c-*-iso8859-1
Yes, I think the problem is in that "-ExtB", which I think is part of
the font name, but Emacs's XLFD parser thinks it is a separate field.
Perhaps Handa-san, or someone else who knows more about fonts, could
tell how to handle these font names correctly. It looks like a bug to
me, FWIW.