Mercurial > emacs
view src/epaths.in @ 3881:9d92b383b584
Separate parameter faces (those created and modified by the user)
from the computed faces (the combinations created by
compute_char_face), so that we don't waste global face id's.
* xterm.h (struct x_display): Replace the fields faces and n_faces
with fields param_faces, n_param_faces, computed_faces,
n_computed_faces, and size_computed_faces.
(FRAME_FACES, FRAME_N_FACES): Replaced by...
(FRAME_COMPUTED_FACES, FRAME_N_COMPUTED_FACES, FRAME_PARAM_FACES,
FRAME_N_PARAM_FACES): New macros.
* xfaces.c: Doc fixes.
(init_frame_faces): Call new_computed_face to create entries for
the default and mode line faces. Use the FRAME...PARAM_FACES
macros.
(free_frame_faces): Use the FRAME...PARAM_FACES and
FRAME...COMPUTED_FACES macros. Don't use the copy flag; all
parameter faces have real X resources, and all computed faces just
have copies. Free both the parameter and computed face arrays.
(new_computed_face): New function.
(intern_computed_face): Renamed from intern_frame_face; callers
changed. Call new_computed_face.
(ensure_face_ready, compute_char_face, compute_glyph_face): Use the
FRAME...PARAM_FACES macros.
(recompute_basic_faces): Use the FRAME...PARAM_FACES and
FRAME...COMPUTED_FACES macros. Produce the computed faces by
starting with the base faces and merging in the parameter faces.
(Fset_face_attribute_internal): Use the FRAME...PARAM_FACES
macros. Just call recompute_basic_faces if the default or mode
line faces have changed.
* xfns.c (Fx_list_fonts): Use the FRAME...PARAM_FACES macros.
* xterm.c (dumpglyphs): Use the FRAME...COMPUTED_FACES macros.
* dispextern.h (struct face): Remove the copy member. This is no
longer necessary; all computed faces are copies, and no parameter
faces are.
* xfns.c (Fx_open_connection): Remember to block input while
calling x_load_resources.
* xrdb.c: Undo change of June 19th; it was a BLOCK_INPUT problem,
not a server-specific bug.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Tue, 22 Jun 1993 07:25:11 +0000 |
parents | fa5466904709 |
children | 07507709e0fe |
line wrap: on
line source
/* Hey Emacs, this is -*- C -*- code! */ /* The default search path for Lisp function "load". This sets load-path. */ #define PATH_LOADSEARCH "/usr/local/lib/emacs/lisp" /* Like PATH_LOADSEARCH, but used only when Emacs is dumping. This path is usually identical to PATH_LOADSEARCH except that the entry for the directory containing the installed lisp files has been replaced with ../lisp. */ #define PATH_DUMPLOADSEARCH "../lisp" /* The extra search path for programs to invoke. This is appended to whatever the PATH environment variable says to set the Lisp variable exec-path and the first file name in it sets the Lisp variable exec-directory. exec-directory is used for finding executables and other architecture-dependent files. */ #define PATH_EXEC "/usr/local/lib/emacs/etc" /* Where Emacs should look for its architecture-independent data files, like the docstring file. The lisp variable data-directory is set to this value. */ #define PATH_DATA "/usr/local/lib/emacs/data" /* The name of the directory that contains lock files with which we record what files are being modified in Emacs. This directory should be writable by everyone. THE STRING MUST END WITH A SLASH!!! */ #define PATH_LOCK "/usr/local/lib/emacs/lock/" /* Where the configuration process believes the info tree lives. The lisp variable configure-info-directory gets its value from this macro, and is then used to set the Info-default-directory-list. */ #define PATH_INFO "/usr/local/info"