[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: macos.texi updated
Re: macos.texi updated
25 Sep 2005 10:20:31 -0400
> > screen. I was also trying to maintain backwards compatibility of
> old > XLFDs, which I'm starting to think was unwise. I've made two
> attempts at
> Regarding this, I think it would be good for people working on
> Emacs.app, w32, and Xft to get together and try to figure out what to
> do with the font-naming problem. It seems like the current use of
> XLFD may benefit from an overhaul to adjust to the currently popular
> font technologies.
Even in X11, while XLFD is needed at the lowest level to interact with
the windowing system, is it really necessary to expose the user to it?
In the old days when emacs-X11 was first developed, X11 users were used
to specifying fonts in ...-*-*-*-*-... fashion. Nowadays, most apps
shield them from this. Thus, maybe it's reasonable to develop a new
emacs font specification style that's simpler, and use this even in the
face code until the lowest level where interaction w/the window system
In most applications, users specify a font this way:
float: point size
One question is how to deal with systems that allow more user control.
For example, on OS X, some fonts have "semi-bold", "light", "condensed",
and other versions. On X11, you can specify the DPI screen resolution
the font is optimized for, and font pixel size instead of point size.
The former situation could be handled using a fontspec like this:
("family-name" point-size (list-of-attributes))
Standard emacs faces would use just "bold" and "italic" as attributes,
but users could use others specific to their systems, which the window
system code would recognize. Unrecognized attributes are ignored or
This approach might also handle X11 things like DPI resolution. For
example, one attribute might be "75-dpi".
Finally, a mechanism for ensuring some font family names are
cross-platform would be needed. One approach here would be the
time-honored "map standard postscript names to system-specific ones":
each system would have a list of its equivalent families for "courier",
"times", and so on. Another approach would be the web method of using
generic names like 'sans', 'serif', and 'fixed' in all emacs standard