Mercurial > emacs
annotate src/keymap.h @ 94938:5752d7154afc
Throughout the file, delete all USE_FONT_BACKEND
conditionals. Don't check enable_font_backend. Delete all codes
used only when USE_FONT_BACKEND is not defined. Use
FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
(QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
(Qp): Extern them.
(clear_font_table, load_face_font, xlfd_lookup_field_contents):
Deleted.
(struct font_name): Deleted.
(xlfd_numeric_value, xlfd_symbolic_value): Deleted.
(compare_fonts_by_sort_order): New function.
(xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
(xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
Deleted.
(Fx_family_fonts): Use font_list_entities, and sort fonts by
compare_fonts_by_sort_order.
(Fx_font_family_list): Call Ffont_family_list.
(face_numeric_value, face_numeric_weight, face_numeric_slant)
(face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
(face_symbolic_slant, face_symbolic_swidth)
(split_font_name_into_vector, build_font_name_from_vector)
(xlfd_fixed_p, xlfd_point_size, pixel_point_size)
(font_rescale_ratio, split_font_name, build_font_name)
(free_font_names, sort_fonts, x_face_list_fonts)
(face_font_available_p, sorted_font_list, cmp_font_names)
(font_list_1, concat_font_list, font_list, remove_duplicates):
Deleted.
(Fx_list_fonts): Use Ffont_list.
(LFACE_AVGWIDTH): Deleted.
(check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
by FONTP.
(lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
(set_lface_from_font_name): Delete it.
(set_lface_from_font): Renamed from
set_lface_from_font_and_fontset. Caller changed. Don't set
LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
for face.
(merge_face_vectors): Copy font-spec if necessary. Clear
properties of the font-spec if necessary.
(merge_face_ref): Clear properties of the font-spec if necessary.
(Finternal_set_lisp_face_attribute): Likewise.
(set_font_frame_param): Use font_load_for_lface to load a
font-object, and call Fmodify_frame_parameters with it.
(x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
font name by Ffont_xlfd_name.
(Finternal_lisp_face_attribute_values): Don't check QCweight,
QCslant, and QCwidth.
(Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
(lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
Compare fonts by EQ.
(lookup_non_ascii_face): Deleted.
(face_for_font): The 2nd argument changed.
(x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH. Check
atomic font properties by case insensitive.
(realize_non_ascii_face): Set face->overstrike correctly.
(realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
(dump_realized_face): Get font name from
font->props[FONT_NAME_INDEX]. Don't print font_info_id.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Wed, 14 May 2008 01:41:52 +0000 |
parents | d3bf833831d6 |
children | 29adfc9354e7 |
rev | line source |
---|---|
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
1 /* Functions to manipulate keymaps. |
68651
3bd95f4f2941
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64770
diff
changeset
|
2 Copyright (C) 2001, 2002, 2003, 2004, 2005, |
79759 | 3 2006, 2007, 2008 Free Software Foundation, Inc. |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
4 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
5 This file is part of GNU Emacs. |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
6 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
7 GNU Emacs is free software; you can redistribute it and/or modify |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
8 it under the terms of the GNU General Public License as published by |
78260
922696f363b0
Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents:
76885
diff
changeset
|
9 the Free Software Foundation; either version 3, or (at your option) |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
10 any later version. |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
11 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
12 GNU Emacs is distributed in the hope that it will be useful, |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
13 but WITHOUT ANY WARRANTY; without even the implied warranty of |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
15 GNU General Public License for more details. |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
16 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
18 along with GNU Emacs; see the file COPYING. If not, write to |
64084 | 19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 Boston, MA 02110-1301, USA. */ | |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
21 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
22 #ifndef KEYMAP_H |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
23 #define KEYMAP_H |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
24 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
25 #define KEYMAPP(m) (!NILP (get_keymap (m, 0, 0))) |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
26 extern Lisp_Object Qkeymap, Qmenu_bar; |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
27 extern Lisp_Object current_global_map; |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
28 EXFUN (Fmake_sparse_keymap, 1); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
29 EXFUN (Fkeymap_prompt, 1); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
30 EXFUN (Fdefine_key, 3); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
31 EXFUN (Flookup_key, 3); |
76885
fcaf9518268a
(Fcommand_remapping): New optional argument.
Chong Yidong <cyd@stupidchicken.com>
parents:
75348
diff
changeset
|
32 EXFUN (Fcommand_remapping, 3); |
72889
25c755416160
* NEWS: explain new behavior and arguments of `key-binding' and
David Kastrup <dak@gnu.org>
parents:
68651
diff
changeset
|
33 EXFUN (Fkey_binding, 4); |
54926
9d9ed20a61d2
(Fkey_description): Fix prototype.
Kim F. Storm <storm@cua.dk>
parents:
52401
diff
changeset
|
34 EXFUN (Fkey_description, 2); |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
35 EXFUN (Fsingle_key_description, 2); |
43153
d6162a8dc872
(Fkey_binding, Fwhere_is_internal): Update prototype.
Kim F. Storm <storm@cua.dk>
parents:
41292
diff
changeset
|
36 EXFUN (Fwhere_is_internal, 5); |
81609
7e640eac2dcb
* keymaps.texi (Active Keymaps): Document new POSITION argument of
David Kastrup <dak@gnu.org>
parents:
76885
diff
changeset
|
37 EXFUN (Fcurrent_active_maps, 2); |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
38 extern Lisp_Object access_keymap P_ ((Lisp_Object, Lisp_Object, int, int, int)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
39 extern Lisp_Object get_keyelt P_ ((Lisp_Object, int)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
40 extern Lisp_Object get_keymap P_ ((Lisp_Object, int, int)); |
83420
521d3f18b3d1
Reimplement terminal parameters in C; clean up term.c, create terminal.c.
Karoly Lorentey <lorentey@elte.hu>
parents:
64770
diff
changeset
|
41 EXFUN (Fset_keymap_parent, 2); |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
42 extern void describe_map_tree P_ ((Lisp_Object, int, Lisp_Object, Lisp_Object, |
60068
3e2faa2a85ed
(describe_map_tree): Change decl.
Richard M. Stallman <rms@gnu.org>
parents:
54926
diff
changeset
|
43 char *, int, int, int, int)); |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
44 extern int current_minor_maps P_ ((Lisp_Object **, Lisp_Object **)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
45 extern void initial_define_key P_ ((Lisp_Object, int, char *)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
46 extern void initial_define_lispy_key P_ ((Lisp_Object, char *, char *)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
47 extern void syms_of_keymap P_ ((void)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
48 extern void keys_of_keymap P_ ((void)); |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
49 |
50797
5b0873c0b734
(map_keymap_function_t): New type.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
49757
diff
changeset
|
50 typedef void (*map_keymap_function_t) |
81791
98732c4676bc
(map_keymap_function_t): More informative prototype.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
81609
diff
changeset
|
51 P_ ((Lisp_Object key, Lisp_Object val, Lisp_Object args, void* data)); |
50797
5b0873c0b734
(map_keymap_function_t): New type.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
49757
diff
changeset
|
52 extern void map_keymap P_ ((Lisp_Object map, map_keymap_function_t fun, Lisp_Object largs, void* cargs, int autoload)); |
94005
d3bf833831d6
* keymap.h (map_keymap_canonical): Declare.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87649
diff
changeset
|
53 extern void map_keymap_canonical (Lisp_Object map, |
d3bf833831d6
* keymap.h (map_keymap_canonical): Declare.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87649
diff
changeset
|
54 map_keymap_function_t fun, |
d3bf833831d6
* keymap.h (map_keymap_canonical): Declare.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
87649
diff
changeset
|
55 Lisp_Object args, void *data); |
39691
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
56 |
27fe3d5767ed
New file. Extracted from lisp.h.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
57 #endif |
52401 | 58 |
59 /* arch-tag: 7400d5a1-ef0b-43d0-b366-f4d678bf3ba2 | |
60 (do not change this comment) */ |