GNU bug report logs - #5413
23.1.91; Incorrect font sizes and weights

Previous Next

Package: emacs;

Reported by: Jed Brown <jed <at> 59A2.org>

Date: Mon, 18 Jan 2010 18:53:01 UTC

Severity: normal

Done: Jan Djärv <jan.h.d <at> swipnet.se>

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 5413 in the body.
You can then email your comments to 5413 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 owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5413; Package emacs. (Mon, 18 Jan 2010 18:53:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jed Brown <jed <at> 59A2.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 18 Jan 2010 18:53:01 GMT) Full text and rfc822 format available.

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

From: Jed Brown <jed <at> 59A2.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.1.91; Incorrect font sizes and weights
Date: Mon, 18 Jan 2010 19:53:26 +0100
I want Emacs to use the font that I get with

  $ urxvt -fn 'xft:DejaVu Sans Mono-10'

(or when this font name is given to any other program).  So the obvious
thing to try would be

  $ emacs -Q -fn 'DejaVu Sans Mono-10'

but this resolves to

  xft:-unknown-DejaVu Sans Mono-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1

which is way bigger than I want.  Next, I try manually specifying the
font that 'DejaVu Sans Mono-10.2' resolved to in my last emacs build

  GNU Emacs 23.1.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.16.5) of 2009-10-08 on home.sergej.pp.ru

(I have no idea why this goofyness was required, but 'DejaVu Sans Mono-10' looked bad there.)

  $ emacs -Q -fn '-unknown-DejaVu Sans Mono-normal-normal-normal-*-14-*-*-*-m-0-iso10646-1'

And this font seems to be the correct size, but the weight is too light.
Compare the bottom two frames in the screenshot

  http://imgur.com/TcGj6.png

The bottom-left frame is the rendering I want (using the 23.1.50.1 build
quoted above with 'DejaVu Sans Mono-10.2').  The bottom-right frame is
the latest build with what claims to be the desired font, and the top
frame is the latest build with 'DejaVu Sans Mono-10'.

Why is it so hard to choose my desired font?

Jed



In GNU Emacs 23.1.91.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.18.5)
 of 2010-01-18 on kunyang
Windowing system distributor `The X.Org Foundation', version 11.0.10703902
configured using `configure  '--prefix=/usr' '--sysconfdir=/etc' '--localstatedir=/var' '--libexecdir=/usr/lib' '--mandir=/usr/share/man' '--with-x-toolkit=gtk' '--without-gconf' 'CFLAGS=-march=native -O1 -pipe' 'LDFLAGS=-Wl,--hash-style=gnu -Wl,--as-needed''

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.utf8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Help

Minor modes in effect:
  global-auto-complete-mode: t
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t
  view-mode: t

Recent input:
C-p C-p C-u C-x = C-x 1 C-u C-x = <C-tab> <C-tab> <help-echo> 
<help-echo> C-S-x 0 <help-echo> <help-echo> <help-echo> 
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo> 
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo> 
M-x r e p o r t <tab> <return>

Recent messages:
Setting up CEDET packages...done
Loading /usr/share/emacs/site-lisp/cedet/common/cedet.el (source)...done
ECB 2.40 uses CEDET 1.0pre7 (contains semantic 2.0pre7, eieio 1.2, speedbar 1.0.3).
Loading /home/jed/.emacs-ede...done
Loading /home/jed/.ecb-user-layouts.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.
Type C-x 1 to delete the help window.
Char: ; (59, #o73, #x3b) point=141 of 191 (73%) column=0
Type C-x 1 to delete the help window.
Char: ; (59, #o73, #x3b) point=141 of 191 (73%) column=0

Load-path shadows:
/usr/share/emacs/site-lisp/ecb/ecb2/test hides /usr/share/emacs/site-lisp/cedet/semantic/tests/test
/usr/share/emacs/site-lisp/cedet/common/ezimage hides /usr/share/emacs/23.1.91/lisp/ezimage
/usr/share/emacs/site-lisp/cedet/speedbar/speedbar hides /usr/share/emacs/23.1.91/lisp/speedbar
/usr/share/emacs/site-lisp/cedet/speedbar/dframe hides /usr/share/emacs/23.1.91/lisp/dframe
/usr/share/emacs/site-lisp/cedet/speedbar/sb-image hides /usr/share/emacs/23.1.91/lisp/sb-image
/usr/share/emacs/site-lisp/cedet/eieio/eieio-custom hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-custom
/usr/share/emacs/site-lisp/cedet/eieio/eieio-opt hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-opt
/usr/share/emacs/site-lisp/cedet/eieio/eieio-base hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-base
/usr/share/emacs/site-lisp/cedet/eieio/eieio-comp hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-comp
/usr/share/emacs/site-lisp/cedet/eieio/eieio-datadebug hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-datadebug
/usr/share/emacs/site-lisp/cedet/eieio/chart hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/chart
/usr/share/emacs/site-lisp/cedet/eieio/eieio-speedbar hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio-speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio hides /usr/share/emacs/23.1.91/lisp/emacs-lisp/eieio
/usr/share/emacs/site-lisp/cedet/common/data-debug hides /usr/share/emacs/23.1.91/lisp/cedet/data-debug
/usr/share/emacs/site-lisp/cedet/common/pulse hides /usr/share/emacs/23.1.91/lisp/cedet/pulse
/usr/share/emacs/site-lisp/cedet/common/cedet-global hides /usr/share/emacs/23.1.91/lisp/cedet/cedet-global
/usr/share/emacs/site-lisp/cedet/ede/ede hides /usr/share/emacs/23.1.91/lisp/cedet/ede
/usr/share/emacs/site-lisp/cedet/semantic/semantic hides /usr/share/emacs/23.1.91/lisp/cedet/semantic
/usr/share/emacs/site-lisp/cedet/srecode/srecode hides /usr/share/emacs/23.1.91/lisp/cedet/srecode
/usr/share/emacs/site-lisp/cedet/common/cedet-cscope hides /usr/share/emacs/23.1.91/lisp/cedet/cedet-cscope
/usr/share/emacs/site-lisp/cedet/common/cedet-idutils hides /usr/share/emacs/23.1.91/lisp/cedet/cedet-idutils
/usr/share/emacs/site-lisp/cedet/common/cedet hides /usr/share/emacs/23.1.91/lisp/cedet/cedet
/usr/share/emacs/site-lisp/cedet/common/inversion hides /usr/share/emacs/23.1.91/lisp/cedet/inversion
/usr/share/emacs/site-lisp/cedet/common/mode-local hides /usr/share/emacs/23.1.91/lisp/cedet/mode-local
/usr/share/emacs/site-lisp/cedet/common/cedet-files hides /usr/share/emacs/23.1.91/lisp/cedet/cedet-files

Features:
(shadow sort mail-extr emacsbug eieio-opt pp descr-text help-mode view
semantic-el semantic-bovine bovine-debug semantic-debug ecb-layout-defs
uniquify printing ps-print ps-def lpr preview-latex tex-site auto-loads
caml-font cmake-mode cc-styles cc-align cc-engine cc-vars cc-defs tempo
url url-proxy url-privacy url-expand url-methods url-history url-cookie
url-util url-parse timezone url-vars xml-parse doxymacs auto-complete
easy-mmode expander pulldown ede-cpp-root semantic-mru-bookmark
semantic-idle semantic-decorate-include semantic-decorate-mode
semantic-decorate semantic-gcc semantic-dep semantic-ia pulse senator
which-func semantic-imenu semantic-sb imenu ecb ecb-symboldef silentcomp
ecb-analyse ecb-compatibility ecb-winman-support ecb-autogen autoload
ecb-tod ecb-cycle ecb-eshell ecb-help ecb-jde ecb-method-browser
hideshow ecb-semantic ecb-file-browser ecb-speedbar ecb-layout compile
comint ecb-create-layout ecb-compilation ecb-common-browser ecb-navigate
ecb-cedet-wrapper semanticdb-mode semanticdb-find semanticdb-ref
ecb-mode-line ecb-face tree-buffer ecb-upgrade ecb-util ring thingatpt
cedet cedet-contrib-load contrib-loaddefs cogre-load cogre-loaddefs
cogre-srecode semantic-edit srecode-template-mode srecode-template
srecode-template-wy semantic-wisent wisent srecode-map
srecode-dictionary speedbar-load speedbar-loaddefs ede-load ede-loaddefs
ede-speedbar ede-files ede eieio-speedbar semantic-ia-sb
semantic-analyze semantic-scope semantic-analyze-fcn semantic-sort
semanticdb-el semanticdb semantic-ctxt semantic-format
semantic-util-modes semantic-util semantic semantic-lex semantic-tag
working fame speedbar sb-image ezimage dframe assoc eieio-custom
ede-source eieio-base srecode-load srecode srecode-loaddefs
semantic-load semantic-fw semantic-loaddefs mode-local find-func
eieio-load eieio-loaddefs cedet-load cedet-compat cedet-loaddefs eieio
byte-opt bytecomp byte-compile inversion browse-kill-ring advice
help-fns advice-preload derived ido paren jabber-autoloads starttls
smtpmail notmuch edmacro kmacro message idna sendmail regexp-opt
ecomplete rfc822 mml easymenu mml-sec mailabbrev nnheader gmm-utils
wid-edit mailheader canlock sha1 hex-util hashcash mail-utils mm-view
smime password-cache dig mm-decode gnus-util netrc mm-bodies mm-encode
mailcap mail-parse rfc2231 rfc2047 rfc2045 qp ietf-drums mm-util
time-date mail-prsvr cl cl-19 tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd font-setting tool-bar dnd fontset
image fringe lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mldrag mouse jit-lock font-lock syntax facemenu font-core
frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai
tai-viet lao korean japanese hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help
simple abbrev loaddefs button minibuffer faces cus-face files
text-properties overlay md5 base64 format env code-pages mule custom
widget hashtable-print-readable backquote make-network-process dbusbind
font-render-setting gtk x-toolkit x multi-tty emacs)





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5413; Package emacs. (Tue, 19 Jan 2010 15:03:02 GMT) Full text and rfc822 format available.

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

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Jed Brown <jed <at> 59A2.org>, 5413 <at> debbugs.gnu.org
Subject: Re: bug#5413: 23.1.91; Incorrect font sizes and weights
Date: Tue, 19 Jan 2010 16:02:30 +0100
Jed Brown skrev:
> I want Emacs to use the font that I get with
> 
>   $ urxvt -fn 'xft:DejaVu Sans Mono-10'
> 
> (or when this font name is given to any other program).  So the obvious
> thing to try would be
> 
>   $ emacs -Q -fn 'DejaVu Sans Mono-10'
> 
> but this resolves to
> 
>   xft:-unknown-DejaVu Sans Mono-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1
> 
> which is way bigger than I want.  

What system are you rinning (i.e. Gnome, KDE, other?)?
Does
% xrdb -query|grep Xft
show anything?

How about
% xdpyinfo|grep resolution
?

Emacs now uses the DPI setting from the dekstop settings if available instead 
of the dpi reported by the X server.  You probably have a mismatch there.

> Next, I try manually specifying the
> font that 'DejaVu Sans Mono-10.2' resolved to in my last emacs build
> 
>   GNU Emacs 23.1.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.16.5) of 2009-10-08 on home.sergej.pp.ru
> 
> (I have no idea why this goofyness was required, but 'DejaVu Sans Mono-10' looked bad there.)
> 
>   $ emacs -Q -fn '-unknown-DejaVu Sans Mono-normal-normal-normal-*-14-*-*-*-m-0-iso10646-1'
> 

Get a new version from the trunk and get the value of the lisp variable 
xft-settings (C-h v xft-settings).

> And this font seems to be the correct size, but the weight is too light.

It is not the weight, it is the hinting.  Emacs uses the values from the 
desktop settings if available, or the fontconfig defaults otherwise.

	Jan D.





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5413; Package emacs. (Tue, 19 Jan 2010 15:49:01 GMT) Full text and rfc822 format available.

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

From: Jed Brown <jed <at> 59A2.org>
To: Jan Djärv <jan.h.d <at> swipnet.se>, 5413 <at> debbugs.gnu.org
Subject: Re: bug#5413: 23.1.91; Incorrect font sizes and weights
Date: Tue, 19 Jan 2010 16:44:55 +0100
On Tue, 19 Jan 2010 16:02:30 +0100, Jan Djärv <jan.h.d <at> swipnet.se> wrote:
> What system are you rinning (i.e. Gnome, KDE, other?)?

Archlinux with Xmonad/Gnome, I thought building --without-gconf might
help, but it didn't (although I didn't do a full rebuild so perhaps I
still have stale gconf stuff).

> % xrdb -query|grep Xft

Nothing.

> % xdpyinfo|grep resolution

  resolution:    96x96 dots per inch

> Get a new version from the trunk and get the value of the lisp variable 
> xft-settings (C-h v xft-settings).

"Antialias: 1, Hinting: 1, RGBA: 1, LCDFilter: 0, Hintstyle: 3, DPI: 120.000000"

Setting the Xft.dpi resource does not change this DPI setting.

> It is not the weight, it is the hinting.  Emacs uses the values from the 
> desktop settings if available, or the fontconfig defaults otherwise.

Okay, I changed the settings in Gnome's font rendering details panel and
now I get what I wanted

"Antialias: 1, Hinting: 1, RGBA: 1, LCDFilter: 0, Hintstyle: 1, DPI: 96.000000"

and the fonts look good again with the expected 'DejaVu Sans Mono-10'.

Thanks for the help.

Jed




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5413; Package emacs. (Tue, 19 Jan 2010 15:54:01 GMT) Full text and rfc822 format available.

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

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Jed Brown <jed <at> 59A2.org>
Cc: 5413 <at> debbugs.gnu.org, 5413-done <at> debbugs.gnu.org
Subject: Re: bug#5413: 23.1.91; Incorrect font sizes and weights
Date: Tue, 19 Jan 2010 16:53:01 +0100
Jed Brown skrev:
> On Tue, 19 Jan 2010 16:02:30 +0100, Jan Djärv <jan.h.d <at> swipnet.se> wrote:
>> What system are you rinning (i.e. Gnome, KDE, other?)?
> 
> Archlinux with Xmonad/Gnome, I thought building --without-gconf might
> help, but it didn't (although I didn't do a full rebuild so perhaps I
> still have stale gconf stuff).

The GConf stuff is only for reading the desktop monospace font if you choose 
to use that in Emacs (you must customize font-use-system-font).

> 
>> % xrdb -query|grep Xft
> 
> Nothing.
> 
>> % xdpyinfo|grep resolution
> 
>   resolution:    96x96 dots per inch
> 
>> Get a new version from the trunk and get the value of the lisp variable 
>> xft-settings (C-h v xft-settings).
> 
> "Antialias: 1, Hinting: 1, RGBA: 1, LCDFilter: 0, Hintstyle: 3, DPI: 120.000000"
> 
> Setting the Xft.dpi resource does not change this DPI setting.

The dpi is read from the XSETTINGS mechanism, so they override any X resources.

> 
>> It is not the weight, it is the hinting.  Emacs uses the values from the 
>> desktop settings if available, or the fontconfig defaults otherwise.
> 
> Okay, I changed the settings in Gnome's font rendering details panel and
> now I get what I wanted
> 
> "Antialias: 1, Hinting: 1, RGBA: 1, LCDFilter: 0, Hintstyle: 1, DPI: 96.000000"
> 
> and the fonts look good again with the expected 'DejaVu Sans Mono-10'.
> 

Good!

	Jan D.






Reply sent to Jan Djärv <jan.h.d <at> swipnet.se>:
You have taken responsibility. (Tue, 19 Jan 2010 15:54:02 GMT) Full text and rfc822 format available.

Notification sent to Jed Brown <jed <at> 59A2.org>:
bug acknowledged by developer. (Tue, 19 Jan 2010 15:54:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <bug-gnu-emacs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 17 Feb 2010 12:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 131 days ago.

Previous Next


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