emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: macos.texi updated


From: Adrian Robert
Subject: Re: macos.texi updated
Date: Mon, 24 Oct 2005 08:24:44 -0400

On Oct 20, 2005, at 12:55 AM, Richard M. Stallman wrote:

      At the elisp-
    wielding-user-visible level this manifests in what you pass to and
    get back from x-list-fonts, as well as any font-setting functions,

Could you explain what "font-setting functions" means?
Could you name some "font-setting functions"?

User-visible, that I know of:

set-frame-font
create-fontset-from-fontset-spec


    setting font as a frame parameter, etc...

That parameter basically exists for the sake of those who might
want to specify an XLFD font name.  It's not the normal way to
do things.

As far as I understand the code, and I could easily be wrong here, a default font specification in an X resource (or, on the GNUstep port, a user 'defaults database' value) makes it into the first emacs frame via a frame parameter. (Faces then get defined off of this.) In emacs-20, you could get away with just a font family and bold/italic spec here, since there was also a font size frame parameter, but this was removed in 22/23.

(Maybe in this case the answer is that emacs is trying to get away from other preferences persistence mechanisms besides .emacs? But is .emacs read before the first frame is made?)


As for x-list-fonts, that uses XLFD because on X that was the
normal interface to use.  Is there a better way to do this now?

Right, but unfortunately x-list-fonts is not just used on X. Ideally, there would be a "w-list-fonts" function that returns a list of lists specifying all the information in structured lisp form. No lisp code calling this would need to muck about with window-system-specific string representations. In practice, X was first and alone, so each port tended to just redefine its own version of x-list-fonts which translates its own font names into XLFD. This is evil, but understandable given how things evolved.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]