bug#2824: 23.0.91; font-selection weirdness with `set-frame-attribute' of default face

Kenichi Handa <[email protected]>
Newsgroups gmane.emacs.bugs,gmane.emacs.pretest.bugs
Message-ID <E1LoSJZ-0002P5-40@etlken>
In article <[email protected]>, Miles Bader <[email protected]> writes:

> Emacs seems to use different fonts to display ascii vs. non-ascii
> characters when one uses `set-frame-attribute' to set the default font.

I can't reproduce the problem with the latest code.  It may
be because of the fix I installed last night.  Does your
Emacs have this change?

2009-03-30  Kenichi Handa  <[email protected]>

	* fontset.c (fontset_from_font): Specify only registry in a
	font-spec for all characters supported by that registry.

If not yet, could you please try again with the latest code?

---
Kenichi Handa
[email protected]

> To reproduce (using X):

>  (1) In a shell, evaluate the following commands:

>        xrdb -remove
>        echo '*Font: Dejavu Sans Mono-11' > /tmp/.Xdefaults
>        echo '(set-face-attribute '\''default nil :family "Liberation Mono")' > /tmp/.emacs
>        HOME=/tmp emacs -no-splash -eval '(insert "café")'&

>  (2) Position the cursor over the "c" in "café", and use C-u C-x =

>      Notice it says that the font used is "Liberation Mono", which is
>      the correct default font.

>  (3) Position the cursor over the "é" in "café", and use C-u C-x =

>      Notice that it says the font used is "Dejavu Sans Mono", which is
>      _not_ the correct default font, but rather was the startup font.


> This problem only seems to occur if one uses `set-face-attribute' to set
> the default font.  If one uses `set-frame-font' (etc), it seems to work
> correctly; e.g., try using the shell command:

>    echo '(set-frame-font "Liberation Mono")' > /tmp/.emacs

> and then start emacs as in the original recipe; the "é" should
> correctly be displayed using the current default font.


> Thanks,

> -Miles


> In GNU Emacs 23.0.91.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.16.0)
>  of 2009-03-30 on catnip
> Windowing system distributor `The X.Org Foundation', version 11.0.10599902
> Important settings:
>   value of $LC_ALL: nil
>   value of $LC_COLLATE: nil
>   value of $LC_CTYPE: nil
>   value of $LC_MESSAGES: nil
>   value of $LC_MONETARY: nil
>   value of $LC_NUMERIC: nil
>   value of $LC_TIME: nil
>   value of $LANG: en_US.UTF-8
>   value of $XMODIFIERS: nil
>   locale-coding-system: utf-8-unix
>   default-enable-multibyte-characters: t

> Major mode: Text

> Minor modes in effect:
>   rcirc-track-minor-mode: t
>   tooltip-mode: t
>   mouse-wheel-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   blink-cursor-mode: t
>   global-auto-composition-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   line-number-mode: t
>   transient-mark-mode: t

> Recent input:
> <help-echo> C-x g C-x C-v . e m a c s <return> <escape> 
> > C-x C-v . e m a SPC ? . SPC C-g C-x b a s d f <return> 
> c a f e <backspace> C-x 8 ' e C-b C-u C-x = C-b C-u 
> C-x = = <backspace> C-f C-n <return> <C-down-mouse-3> 
> <options> <menu-set-font> C-p C-x = C-u C-x = <escape> 
> x r e p o r SPC <return>

> Recent messages:
> Checking new news...done
> Mark set
> Making completion list... [2 times]
> xding
> Quit
> Type C-x 1 to delete the help window.
> Char: é (233, #o351, #xe9, file ...) point=4 of 4 (75%) column=3
> Char: f (102, #o146, #x66) point=3 of 4 (50%) column=2
> xding
> Char: c (99, #o143, #x63) point=1 of 5 (0%) column=0 [2 times]

> -- 
> Brain, n. An apparatus with which we think we think.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.