[I'd sent this the first time a little bit ago to xemacs-patches,
before realizing that -beta might be a better location for it. So here
it is.]
Here's a patch against 21.1.12 that gives xemacs the ability to
take advantage of the XRender extension and use antialiased fonts for
display. A new configure flag, --enable-xrender, turns this on.
Fonts are specified using "XFT:font name:size". There are still a few
issues, but by and large it works. It also doesn't handle
non-proportional fonts gracefully (it does the maximum-width thing).
The patch is at
http://www.intrepid.com/~vladimir/xemacs21_aa.patch.gz .
Screenshot at
http://www.intrepid.com/~vladimir/xemacs_aa.png
Xrender setup bits are at
http://www.xfree86.org/~keithp/render/,
it's included in xfree86 CVS or the 4.0.1z release. (I /think/
the latest debian woody should do fine, but you may have to end up
rebuilding X so that you can define FREETYPE2.. it's not defined
in the debian X dist for yet :-P)
Try "xemacs -fn 'XFT:Lucida Console:24'" and drool ;-)
Things left to do:
- bug in clipping. lines which should be half-drawn will draw
over the modeline. this involves getting the right bits to
XftDrawSetClip.
- get rid of XFT:blah. this is a hack, as the fonts come from
a different namespace. However, the right way to do this would
be to parse the fontspec string with a family of -xft-...; this
would enable lisp code which modifies these strings (i.e. to make
bold/italic variants) work corrently.
- a color bug that I need to hunt down.
Let me know what you think!
(Please keep me in the Cc line of any responses, I'm not subscribed to
xemacs-beta.)
- Vlad