GNU bug report logs - #39656
27.0.60; ordering of fonts in fontset is ignored

Previous Next

Package: emacs;

Reported by: ynyaaa <at> gmail.com

Date: Tue, 18 Feb 2020 13:15:02 UTC

Severity: normal

Found in version 27.0.60

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39656 in the body.
You can then email your comments to 39656 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#39656; Package emacs. (Tue, 18 Feb 2020 13:15:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to ynyaaa <at> gmail.com:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 18 Feb 2020 13:15:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: ynyaaa <at> gmail.com
To: bug-gnu-emacs <at> gnu.org
Subject: 27.0.60; ordering of fonts in fontset is ignored
Date: Tue, 18 Feb 2020 22:13:47 +0900
If font list in fontset includes the font for ASCII,
the ordering may be ignored and the font for ASCII is used prior to
front fonts.

I tried to setup fontset to display "MS Gothic" as a primary font,
and "SimHei" as a secondary font, except for ASCII characters.
And "SimHei" is used for ASCII characters.
("MS Gothic" has YEN SIGN glyph for #x5C(\).)

Evaluating the form below, every character is displayed with "SimHei"
if glyphs are defined in both "SImHei" and "MS Gothic".
For example, most of CJK Ideographs are displayed with "SimHei".
"MS Gothic" is not used between U+3400 and U+9FA5.

(let* ((ascii "SimHei")
       (primary "MS Gothic")
       (secondary ascii))
  (setq use-default-font-for-symbols nil)
  (set-frame-font ascii)
  (set-fontset-font nil '(#x80 . #x10FFFF) primary)
  (set-fontset-font nil '(#x80 . #x10FFFF) secondary nil 'append))


In GNU Emacs 27.0.60 (build 1, x86_64-w64-mingw32)
 of 2019-12-29 built on CIRROCUMULUS
Repository revision: 21c3020fcec0a32122d2680a391864a75393031b
Repository branch: emacs-27
Windowing system distributor 'Microsoft Corp.', version 10.0.18363
System Description: Microsoft Windows 10 Pro (v10.0.1909.18363.657)

Recent messages:

Configured using:
 'configure --without-dbus --host=x86_64-w64-mingw32
 --without-compress-install -C 'CFLAGS=-O2 -static -g3''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY W32NOTIFY ACL GNUTLS LIBXML2
HARFBUZZ ZLIB TOOLKIT_SCROLL_BARS MODULES THREADS PDUMPER LCMS2 GMP

Important settings:
  value of $LANG: JPN
  locale-coding-system: cp932

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr term/bobcat emacsbug message rmc puny dired
dired-loaddefs format-spec rfc822 mml easymenu mml-sec password-cache
epa derived epg epg-config gnus-util rmail rmail-loaddefs
text-property-search time-date subr-x seq byte-opt gv bytecomp
byte-compile cconv mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils japan-util tooltip
eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel
dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode elisp-mode lisp-mode prog-mode register page
tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse
jit-lock font-lock syntax facemenu font-core term/tty-colors frame
minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite charscript charprop case-table epa-hook jka-cmpr-hook help
simple abbrev obarray cl-preloaded nadvice loaddefs button faces
cus-face macroexp files text-properties overlay sha1 md5 base64 format
env code-pages mule custom widget hashtable-print-readable backquote
threads w32notify w32 lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 50170 10170)
 (symbols 48 6076 1)
 (strings 32 16941 1597)
 (string-bytes 1 526852)
 (vectors 16 10747)
 (vector-slots 8 209005 13172)
 (floats 8 22 43)
 (intervals 56 331 0)
 (buffers 1000 12))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39656; Package emacs. (Wed, 19 Feb 2020 11:03:01 GMT) Full text and rfc822 format available.

Message #8 received at 39656 <at> debbugs.gnu.org (full text, mbox):

From: Alan Third <alan <at> idiocy.org>
To: ynyaaa <at> gmail.com
Cc: 39656 <at> debbugs.gnu.org
Subject: Re: bug#39656: 27.0.60; ordering of fonts in fontset is ignored
Date: Wed, 19 Feb 2020 11:02:44 +0000
On Tue, Feb 18, 2020 at 10:13:47PM +0900, ynyaaa <at> gmail.com wrote:
> 
> If font list in fontset includes the font for ASCII,
> the ordering may be ignored and the font for ASCII is used prior to
> front fonts.
> 
> I tried to setup fontset to display "MS Gothic" as a primary font,
> and "SimHei" as a secondary font, except for ASCII characters.
> And "SimHei" is used for ASCII characters.
> ("MS Gothic" has YEN SIGN glyph for #x5C(\).)
> 
> Evaluating the form below, every character is displayed with "SimHei"
> if glyphs are defined in both "SImHei" and "MS Gothic".
> For example, most of CJK Ideographs are displayed with "SimHei".
> "MS Gothic" is not used between U+3400 and U+9FA5.
> 
> (let* ((ascii "SimHei")
>        (primary "MS Gothic")
>        (secondary ascii))
>   (setq use-default-font-for-symbols nil)
>   (set-frame-font ascii)
>   (set-fontset-font nil '(#x80 . #x10FFFF) primary)
>   (set-fontset-font nil '(#x80 . #x10FFFF) secondary nil 'append))

As I understand it the fontsets are used as fallbacks if the default
font doesn’t contain the desired glyph. Since SimHei DOES contain the
glyph and has been set as the default (set-frame-font) we would expect
to see it displayed with SimHei.
-- 
Alan Third




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39656; Package emacs. (Wed, 19 Feb 2020 15:52:01 GMT) Full text and rfc822 format available.

Message #11 received at 39656 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Alan Third <alan <at> idiocy.org>
Cc: ynyaaa <at> gmail.com, 39656 <at> debbugs.gnu.org
Subject: Re: bug#39656: 27.0.60; ordering of fonts in fontset is ignored
Date: Wed, 19 Feb 2020 17:51:32 +0200
> Date: Wed, 19 Feb 2020 11:02:44 +0000
> From: Alan Third <alan <at> idiocy.org>
> Cc: 39656 <at> debbugs.gnu.org
> 
> > Evaluating the form below, every character is displayed with "SimHei"
> > if glyphs are defined in both "SImHei" and "MS Gothic".
> > For example, most of CJK Ideographs are displayed with "SimHei".
> > "MS Gothic" is not used between U+3400 and U+9FA5.
> > 
> > (let* ((ascii "SimHei")
> >        (primary "MS Gothic")
> >        (secondary ascii))
> >   (setq use-default-font-for-symbols nil)
> >   (set-frame-font ascii)
> >   (set-fontset-font nil '(#x80 . #x10FFFF) primary)
> >   (set-fontset-font nil '(#x80 . #x10FFFF) secondary nil 'append))
> 
> As I understand it the fontsets are used as fallbacks if the default
> font doesn’t contain the desired glyph. Since SimHei DOES contain the
> glyph and has been set as the default (set-frame-font) we would expect
> to see it displayed with SimHei.

Yes, that is true, AFAIU.  Commenting out this line:

  (set-frame-font ascii)

makes more characters use MS Gothic.  However, CJK Ideographs are
still not displayed with MS Gothic, but with SimHei (I don't have that
font on my system, so I used SimSun instead).  But I don't see a
problem here, because MS Gothic covers only a very small fraction of
CJK Ideographs.  So Emacs does TRT here, although I couldn't figure
out why it rejects MS Gothic for these characters.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39656; Package emacs. (Mon, 14 Jun 2021 14:27:01 GMT) Full text and rfc822 format available.

Message #14 received at 39656 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Alan Third <alan <at> idiocy.org>, 39656 <at> debbugs.gnu.org, ynyaaa <at> gmail.com
Subject: Re: bug#39656: 27.0.60; ordering of fonts in fontset is ignored
Date: Mon, 14 Jun 2021 16:26:37 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

> Yes, that is true, AFAIU.  Commenting out this line:
>
>   (set-frame-font ascii)
>
> makes more characters use MS Gothic.  However, CJK Ideographs are
> still not displayed with MS Gothic, but with SimHei (I don't have that
> font on my system, so I used SimSun instead).  But I don't see a
> problem here, because MS Gothic covers only a very small fraction of
> CJK Ideographs.  So Emacs does TRT here, although I couldn't figure
> out why it rejects MS Gothic for these characters.

Skimming this thread, it seems like Emacs is behaving properly, and I'm
closing this bug report.  If there's something that should be done here,
please respond to the debbugs address and we'll reopen.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug closed, send any further explanations to 39656 <at> debbugs.gnu.org and ynyaaa <at> gmail.com Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 14 Jun 2021 14:27:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 13 Jul 2021 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 281 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.