Hello Stephen and Alexander,
Thank you so much for helping me!
I followed your advice and added "xrandr --fbmm 520x320" at the end of
/etc/gdm/Init/Default.
The "Xft.dpi: 108" returned by "xrdb -query" is now consistent with
Gnome's "Preferences".
"xdpyinfo" reports the correct screen size. "xdpyinfo" still shows
"resolution: 94x95 dots per inch" but may be that's ok .
This change did not affect my current XEmacs installations. I tried to
build the Xft-enabled XEmacs manually (the current installation was done
with yum).
The new version indeed has a much larger fonts. For somewhat reason the
size of the new fonts depends on the installation config options. Here
is the screen shot of 3 installations
of 21.5.b28 side-by-side:
http://picasaweb.google.com/theothersimonian/XEmacsScreenshot#52695349159...
From left to right:
(1) Manual installation with ./configure
'--with-xft=emacs,menubars,tabs,gauges' '--with-error-checking=none'
(2) Manual installation with the same config options as in yum
installation except '--with-xfs' and
'--with-lispdir=/usr/share/xemacs-21.5-b28/lisp', and with
'--with-xft=emacs,menubars,tabs,gauges'
(3) Original yum installation (without xft)
Another unexpected change is the font type. It was "Courier" when
installed with yum, and the manual installations have "DejaVu Sans
Mono". The "Options->Font" and "Options->Font Size" in both
manual
installations do not respond to the attempts to change the parameters.
The "OK" and "Cancel" buttons in "Find File" window look
"flat" in both
manual installations. A part of the path in the "Save As.." menu window
cannot be selected by dragging the mouse with the left button pressed.
The entire path can be selected though.
I had 2 minor problems during the build:
- Linking failed with "font-mgr.c:912 undefined reference to
`FcConfigGetRescanInverval_REPLACE_BY_FcConfigGetRescanInterval'.
Replacing FcConfigGetRescanInverval/FcConfigSetRescanInverval in
"font-mgr.c" with FcConfigGetRescanInterval/FcConfigSetRescanInterval
fixed the problem.
- I removed "--with-lispdir=/usr/share/xemacs-21.5-b28/lisp' option in
(2) above because otherwise "make install" failed with the following
messages
Testing for Lisp shadows ...
./xemacs -no-packages -batch -l check-features.el
xemacs exiting.
Cannot open load file: "check-features.el"make[1]: *** [check-features]
Error 255
make[1]: Leaving directory `/usr/src/xemacs-21.5.28/src'
Apparently something went wrong since the "manual" versions looked so
different. Is it possible to enable xft while installing with yum? I'm
attaching the installation files for (1)-(3) in case you need to look at
them.
Thanks and best regards,
Roni.
This is a screenshot of "yum" and "manual" 21.5.b28 side-by-side
/etc/gdm/Init/Default
Alexander Taler writes:
> >>>>> "Roni" == Roni Simonian
<v.simonian(a)comcast.net> writes:
> Roni> The resolution is correct but the size is not
>
> Hi Roni, I had a similar problem with fonts in some apps being
> incorrect because the system was reporting an incorrect size for
> the screen. I 'corrected' it by adding a call to xrandr
> specifying the correct physical screen size in the gdm config:
>
> /etc/gdm/Init/Default
>
> xrandr --fbmm 339x212
Short story: Based on the information you sent in another message, I
second this recommendation. Get your Xft resolution (whose bright
idea was that, Mr. Packard?!) and your X11 resolution in sync, and
you will get consistent font-sizing behavior across modern and legacy
apps.
If you're still not 100% satisfied, we'll give you a full refund of
the price you paid us. :-) Seriously, please do report how you like
the result. Since it's an X11-level issue I don't know if there's
anything we can do about it except document it (the alternative would
be to dig into the Xft resources and use that to rescale font requests
on the fly, which is a bad idea).
Geoffrey Chaucer version: What's happening here is that the Xorg guys
have basically stopped supporting legacy bitmap fonts. This isn't a
problem in the West, where repertoires are small and font vendors
understand the benefits and inevitability of open source. Both
factors fail in Asian languages, so bitmap fonts have remained
prevalent until recently, and there is even a recent thread on
xemacs-beta where a couple of people (Julian Bradfield and Olivier
Galibert) complain about this problem while proclaiming the glories of
their favorite -misc-fixed-* fonts. :-) In general, I think Emacs
users probably tend to be happier with highly readable, slightly
klunky fonts than the average user.
Anyway, if you switch to an Xft-enabled XEmacs for 21.5, the "problem"
will probably fix itself because XEmacs/Xft will respect the Xft.dpi
setting. If it doesn't, that's a bug and I hope you will report it.
For 21.4 which only supports legacy fonts (there is an Xft patch for
it but you'll have to dig, and it will not be supported by the XEmacs
Project), you have to fix the information provided by xdpyinfo, which
is the information that the X library (and/or X font server) uses to
compute the appropriate font to return for "12 point".
The fact that Xorg.log.0 contains correct monitor dimensions but
xpyinfo returns something different I don't understand. Older
monitors were unable to communicate their dimensions, so I have been
in the habit of setting resolution by hand with "X -dpi ..." etc
("xrandr -fbmm ..." will work too if you have RANDR enabled in your X
server). But I'm surprised that recent X.org still doesn't get that
right somehow.
uname -a: Linux toro 2.6.26.6-79.fc9.x86_64 #1 SMP Fri Oct 17 14:20:33 EDT 2008 x86_64
x86_64 x86_64 GNU/Linux
./configure '--with-xft=emacs,menubars,tabs,gauges'
'--with-error-checking=none'
XEmacs 21.5-b28 "fuki" configured for `x86_64-unknown-linux'.
Compilation Environment and Installation Defaults:
Source code location: /usr/src/xemacs-21.5.28
Installation prefix: /usr/local
Operating system description file: `s/linux.h'
Not using any machine description file
Compiler version: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8)
- GCC specs file: specs.
- Compiler command: gcc -Wall -Wno-switch -Wundef -Wsign-compare
-Wno-char-subscripts -Wpacked -Wunused-parameter -g
libc version: glibc-2.8-8.x86_64
glibc-2.8-8.i686
Relocating allocator for buffers: no
GNU version of malloc: yes
- Using Doug Lea's new malloc from the GNU C Library.
Window System:
Compiling in support for the X window system:
- X Windows headers location:
- X Windows libraries location: /usr/lib64
- Handling WM_COMMAND properly.
- Using fontconfig to manage fonts.
- Compiling in support for Xft antialiased fonts (EXPERIMENTAL).
Compiling in support for the Athena widget set:
- Athena headers location: X11/Xaw
- Athena library to link: Xaw
Using Lucid menubars.
- Using Xft to render antialiased fonts in menubars.
WARNING: This feature will be replaced with a face.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
- Using Xft to render antialiased fonts in tab controls.
WARNING: This feature will be replaced with a face.
- Using Xft to render antialiased fonts in progress bars.
WARNING: This feature will be replaced with a face.
WARNING: This feature not yet implemented; setting ignored.
TTY:
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Images:
Compiling in support for GIF images (builtin).
Compiling in support for XPM images.
Compiling in support for PNG images.
Compiling in support for JPEG images.
Compiling in support for TIFF images.
Sound:
Compiling in support for sound (native).
Compiling in support for ALSA (Advanced Linux Sound Architecture).
Databases:
Compiling in support for Berkeley database.
Compiling in support for LDAP.
Internationalization:
Mail:
Compiling in support for "file" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Using the new GC mark algorithms (KKCC).
WARNING: ---------------------------------------------------------
WARNING: The new algorithms are experimental. They are enabled by
WARNING: default for this release. Use `--disable-kkcc' to
WARNING: turn it off.
WARNING: ---------------------------------------------------------
Using the new portable dumper.
Dumping into executable.
Compiling in support for extra debugging code.
uname -a: Linux toro 2.6.26.6-79.fc9.x86_64 #1 SMP Fri Oct 17 14:20:33 EDT 2008 x86_64
x86_64 x86_64 GNU/Linux
./configure '--with-xft=emacs,menubars,tabs,gauges'
'--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu'
'--target=x86_64-redhat-linux-gnu' '--program-prefix='
'--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin'
'--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share'
'--includedir=/usr/include' '--libdir=/usr/lib64'
'--libexecdir=/usr/libexec' '--localstatedir=/var'
'--sharedstatedir=/usr/com' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--mandir=/usr/share/man/man1'
'--with-archlibdir=/usr/lib64/xemacs-21.5-b28/x86_64-redhat-linux'
'--with-moduledir=/usr/lib64/xemacs-21.5-b28/x86_64-redhat-linux/modules'
'--with-etcdir=/usr/share/xemacs-21.5-b28/etc'
'--with-system-packages=/usr/share/xemacs' '--without-msw'
'--with-mule' '--with-clash-detection' '--with-database=no'
'--without-ldap' '--without-postgresql'
'--with-mail-locking=lockf' '--with-pop' '--without-hesiod'
'--with-pdump' '--with-debug' '--with-error-checking=none'
'--with-docdir=/usr/lib64/xemacs-21.5-b28/doc' '--with-athena=next'
'--with-menubars=lucid' '--with-widgets=athena'
'--with-dialogs=athena' '--with-scrollbars=lucid'
'--with-xim=xlib' '--without-wnn'
'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu'
'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64
-mtune=generic -fno-strict-aliasing'
XEmacs 21.5-b28 "fuki" configured for `x86_64-redhat-linux'.
Compilation Environment and Installation Defaults:
Source code location: /usr/src/xemacs-21.5.28
Installation prefix: /usr
Operating system description file: `s/linux.h'
Not using any machine description file
Compiler version: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8)
- GCC specs file: specs.
- Compiler command: gcc -Wall -Wno-switch -Wundef -Wsign-compare
-Wno-char-subscripts -Wpacked -Wunused-parameter -g -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64
-mtune=generic -fno-strict-aliasing
libc version: glibc-2.8-8.x86_64
glibc-2.8-8.i686
Relocating allocator for buffers: no
GNU version of malloc: yes
- Using Doug Lea's new malloc from the GNU C Library.
Window System:
Compiling in support for the X window system:
- X Windows headers location:
- X Windows libraries location: /usr/lib64
- Handling WM_COMMAND properly.
- Using fontconfig to manage fonts.
- Compiling in support for Xft antialiased fonts (EXPERIMENTAL).
Compiling in support for the Athena widget set:
- Athena headers location: X11/neXtaw
- Athena library to link: neXtaw
Using Lucid menubars.
- Using Xft to render antialiased fonts in menubars.
WARNING: This feature will be replaced with a face.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
- Using Xft to render antialiased fonts in tab controls.
WARNING: This feature will be replaced with a face.
- Using Xft to render antialiased fonts in progress bars.
WARNING: This feature will be replaced with a face.
WARNING: This feature not yet implemented; setting ignored.
TTY:
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Images:
Compiling in support for GIF images (builtin).
Compiling in support for XPM images.
Compiling in support for PNG images.
Compiling in support for JPEG images.
Compiling in support for TIFF images.
Sound:
Compiling in support for sound (native).
Compiling in support for ALSA (Advanced Linux Sound Architecture).
Databases:
Internationalization:
Compiling in support for Mule (multi-lingual Emacs).
Compiling in support for XIM (X11R5+ I18N input method).
- Using raw Xlib to provide XIM support.
Mail:
Compiling in support for POP mail retrieval.
Compiling in support for "lockf" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Using the new GC mark algorithms (KKCC).
WARNING: ---------------------------------------------------------
WARNING: The new algorithms are experimental. They are enabled by
WARNING: default for this release. Use `--disable-kkcc' to
WARNING: turn it off.
WARNING: ---------------------------------------------------------
Using the new portable dumper.
Dumping into executable.
Compiling in support for extra debugging code.
uname -a: Linux
xenbuilder4.fedora.phx.redhat.com 2.6.18-53.1.6.el5xen #1 SMP Wed Jan 16
04:10:44 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
./configure '--build=x86_64-redhat-linux-gnu'
'--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu'
'--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr'
'--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc'
'--datadir=/usr/share' '--includedir=/usr/include'
'--libdir=/usr/lib64' '--libexecdir=/usr/libexec'
'--localstatedir=/var' '--sharedstatedir=/usr/com'
'--mandir=/usr/share/man' '--infodir=/usr/share/info'
'--mandir=/usr/share/man/man1'
'--with-archlibdir=/usr/lib64/xemacs-21.5-b28/x86_64-redhat-linux'
'--with-moduledir=/usr/lib64/xemacs-21.5-b28/x86_64-redhat-linux/modules'
'--with-lispdir=/usr/share/xemacs-21.5-b28/lisp'
'--with-etcdir=/usr/share/xemacs-21.5-b28/etc'
'--with-system-packages=/usr/share/xemacs' '--without-msw'
'--with-mule' '--with-clash-detection' '--with-database=no'
'--without-ldap' '--without-postgresql'
'--with-mail-locking=lockf' '--with-pop' '--without-hesiod'
'--with-pdump' '--with-debug' '--with-error-checking=none'
'--with-docdir=/usr/lib64/xemacs-21.5-b28/doc' '--with-xfs'
'--with-athena=next' '--with-menubars=lucid'
'--with-widgets=athena' '--with-dialogs=athena'
'--with-scrollbars=lucid' '--with-xim=xlib' '--without-wnn'
'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu'
'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64
-mtune=generic -fno-strict-aliasing'
XEmacs 21.5-b28 "fuki" configured for `x86_64-redhat-linux'.
Compilation Environment and Installation Defaults:
Source code location: /builddir/build/BUILD/xemacs-21.5.28
Installation prefix: /usr
Operating system description file: `s/linux.h'
Not using any machine description file
Compiler version: gcc (GCC) 4.3.0 20080218 (Red Hat 4.3.0-0.10)
- GCC specs file: specs.
- Compiler command: gcc -Wall -Wno-switch -Wundef -Wsign-compare
-Wno-char-subscripts -Wpacked -Wunused-parameter -g -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64
-mtune=generic -fno-strict-aliasing
libc version: glibc-2.7.90-7.x86_64
Relocating allocator for buffers: no
GNU version of malloc: yes
- Using Doug Lea's new malloc from the GNU C Library.
Window System:
Compiling in support for the X window system:
- X Windows headers location:
- X Windows libraries location: /usr/lib64
- Handling WM_COMMAND properly.
Compiling in support for the Athena widget set:
- Athena headers location: X11/neXtaw
- Athena library to link: neXtaw
Using Lucid menubars.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
TTY:
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Images:
Compiling in support for GIF images (builtin).
Compiling in support for XPM images.
Compiling in support for PNG images.
Compiling in support for JPEG images.
Compiling in support for TIFF images.
Compiling in support for X-Face message headers.
Sound:
Compiling in support for sound (native).
Compiling in support for ALSA (Advanced Linux Sound Architecture).
Databases:
Internationalization:
Compiling in support for Mule (multi-lingual Emacs).
Compiling in support for XIM (X11R5+ I18N input method).
- Using raw Xlib to provide XIM support.
- Using XFontSet to provide bilingual menubar.
Compiling in support for Canna on Mule.
Mail:
Compiling in support for POP mail retrieval.
Compiling in support for "lockf" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Using the new GC mark algorithms (KKCC).
WARNING: ---------------------------------------------------------
WARNING: The new algorithms are experimental. They are enabled by
WARNING: default for this release. Use `--disable-kkcc' to
WARNING: turn it off.
WARNING: ---------------------------------------------------------
Using the new portable dumper.
Dumping into executable.
Compiling in support for extra debugging code.
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta