On Mon, 22 Oct 2007, Eeri Kask wrote:

(I always considered the significantly simpler approach being enough:
the user in enabling TWM_USE_XFT voluntarily passes "the point of no
return"; if xft-font problems arise, then these are to be solved.)

Well, that's the point.  As you have it, the end user does _not_ in fact
decide on TWM_USE_XFT.  The distributor does.

I not quite sure if this is the essential point in our case who and how
compiles twm, but which fonts are installed and what stands in
system.twmrc for a user not wishing to touch the default,
distributor-provided configuration.

Having not verified, but I strongly suspect if starting the unmodified
twm having first removed the 'misc/' font directory entirely, then X is
not going to find 'fixed', and as of now, twm refuses to start. It
appears, 'fixed' is an alias to something like
according to misc/fonts.alias;  and the key is, this name is XLFD compliant.

So, luckily we are now a step closed to the solution:  let's not use
'fixed' as coded-in-default in twm.c if TWM_USE_XFT is defined, but
'-*-fixed-*-*-*-*-*-*-*-*-*-*-*-*', and neither XListFonts() nor
XftFontOpenXlfd() have any further difficulties!  (Is XListFonts()
supposed to translate font alias names at all?)  This looks a good idea,
in fact this is what you suggested first: let XListFonts() resolve
'fixed' and then use it.  Now we know how to do that. :-)

(As a backside, we then remove the flexibility in twm to use the
'fixed'-alias-redirection to an arbitrary font.)

First, the X server does not even start if it cannot resolve 'fixed'. In that case, whether or not `twm` starts is a moot point.

Secondly, there are likely to be .twmrc's out there that specify other aliases, such as '7x13' and so on. Thus, it is important to fall back to a raster font when Xft cannot resolve a font name, whether or not that name is a default. This makes it unnecessary to change twm's default font names.


|  Marc Aurele La France           |  work:   1-780-492-9310          |
|  Academic Information and        |  fax:    1-780-492-1729          |
|    Communications Technologies   |  email:  [EMAIL PROTECTED]         |
|  352 General Services Building   +----------------------------------+
|  University of Alberta           |                                  |
|  Edmonton, Alberta               |    Standard disclaimers apply    |
|  T6G 2H1                         |                                  |
|  CANADA                          |                                  |
XFree86 developer and VP.  ATI driver and X server internals.
Devel mailing list

Reply via email to