1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-20 19:42:53 -08:00
Commit graph

269 commits

Author SHA1 Message Date
Ken Raeburn
3141e0abe1 (Fdescribe_buffer_bindings): Use const for pointer to
lisp string data.
2002-07-16 19:48:37 +00:00
Ken Raeburn
d5db40779d Most uses of XSTRING combined with STRING_BYTES or indirection changed to
SCHARS, SBYTES, STRING_INTERVALS, SREF, SDATA; explicit size_byte references
left unchanged for now.
2002-07-15 00:01:34 +00:00
Markus Rost
35936c5c67 (Fkey_binding): Fix typo. 2002-07-12 03:38:12 +00:00
Juanma Barranquero
aed1337830 Use macro SPECPDL_INDEX. 2002-07-11 14:18:02 +00:00
Richard M. Stallman
bbc4541dcf (Fdefine_key): Doc fix. 2002-07-02 19:13:12 +00:00
Juanma Barranquero
95296eacc6 (syms_of_keymap): Fix typo. 2002-07-02 15:27:56 +00:00
Thien-Thi Nguyen
744cd66b79 (describe_command): Cast `current_column' return value to int. 2002-06-03 01:39:27 +00:00
Ken Raeburn
c85d524cf7 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
(Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
of XSYMBOL and name field.
(describe_command, describe_translation): Use SYMBOL_NAME and
assignment instead of XSYMBOL and name field and XSETSTRING.
2002-05-20 08:06:00 +00:00
Stefan Monnier
31bea176a6 (keymap_parent): New fun, extracted from Fkeymap_parent.
(Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
(Fset_keymap_parent): Gcpro a bit more.
(access_keymap): Gcpro around meta_map call and around the main loop.
(get_keyelt): Gcpro when following indirect references.
(copy_keymap_item): New fun, extracted from Fcopy_keymap.
(copy_keymap_1, Fcopy_keymap): Use it.  Don't copy the parent map.
(Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
Remove useless ad-hoc remap code.
2002-05-14 03:04:31 +00:00
Kim F. Storm
cd6db61a7a (current_minor_maps): Fixed resizing of cmm_maps;
only update cmm_size if realloc actually succeeds.
Testing with initial size of 2 elements revealed that using
realloc on GNU/Linux would cause a random trap in xmalloc
later on, so I rewrote the code to use malloc/bcopy/free instead
of realloc.
2002-05-10 23:57:14 +00:00
Kim F. Storm
99cbcacac3 (Vemulation_mode_map_alists): New variable.
(syms_of_keymap): DEFVAR_LISP it.
(current_minor_maps): Process keymap alists in that list before
minor-mode-overriding-map-alist and minor-mode-map-alist.
2002-05-10 07:03:20 +00:00
Kim F. Storm
5f24537118 (Flookup_key): Fixed problem in 2001-12-28 patch:
The validation of the event type was too strict as it didn't
allow string events; buffer names are used in bindings for
menu-bar-select-buffer (see `menu-bar-update-buffers').
2002-02-24 00:24:37 +00:00
Kim F. Storm
a1df473f03 The following changes rework my patch of 2002-02-06 which
added command remapping by entering the commands directly into
the keymaps.  Now, command remapping uses an explicit `remap'
prefix in the keymaps, i.e. [remap COMMAND].

(Qremap, remap_command_vector): New variables.
(is_command_symbol): Removed function.
(Fdefine_key): No longer accept a symbol for KEY.  Added
validation of [remap COMMAND] argument for KEY.  The DEF is no
longer required to be a symbol when remapping a command.
(Fremap_command): New function to remap command through keymaps.
(Flookup_key): Perform command remapping initiated by
Fremap_command directly for speed.
(Fkey_binding): Use Fremap_command for command remapping.
(where_is_internal): Handle new command remapping representation.
(syms_of_keymap): Intern Qremap, initialize remap_command_vector,
staticpro them.  Defsubr Fremap_command.
2002-02-23 22:00:37 +00:00
Kim F. Storm
b864457cf8 (where_is_internal): Only check if definition is
remapped if it fulfills is_command_symbol.
2002-02-07 11:12:50 +00:00
Kim F. Storm
0c412762ee (Fdefine_key): Allow symbol as KEY argument for
defining command remapping.  Doc updated.
(Flookup_key): Remap command through keymap if KEY is a symbol.
(is_command_symbol): New function.
(Fkey_binding): Use it.  New optional argument NO-REMAP.  Doc
updated.  Callers changed.  Perform command remapping via
recursive call unless that arg is non-nil.
(where_is_internal): New argument no_remap.  Callers changed.
Call recursively to find original key bindings for a remapped
comand unless that arg is non-nil.
(Fwhere_is_internal): New optional argument NO-REMAP.  Doc
updated.  Callers changed.  Pass arg to where_is_internal.
2002-02-06 22:57:42 +00:00
Richard M. Stallman
d1d070e3c5 (Fcurrent_active_maps): Put the `keymap' property map first.
(Fkey_binding): Try the `keymap' property map first.
(Fdescribe_buffer_bindings): Show `keymap' property bindings before
minor mode bindings.
2002-01-03 21:28:16 +00:00
Richard M. Stallman
15fff01d49 (silly_event_symbol_error): New subrtn, from Fdefine_key.
Handle modifier bits.  Correct typo in error message.
2001-12-29 14:54:28 +00:00
Richard M. Stallman
ade19cac43 Fix previous change; also correct its change log:
(Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
(exclude_keys): New variable.
(Flookup_key): Error message if key has wrong data type.
2001-12-28 18:49:02 +00:00
Richard M. Stallman
2fae9111a4 (Flookup_key): Add error message for trying to bind [DEL], [RET], etc. 2001-12-28 18:39:20 +00:00
Pavel Janík
f0529b5b1a Doc fix. 2001-12-20 19:01:00 +00:00
Stefan Monnier
4dc3eb25ae (access_keymap): Handle t bindings like nil bindings.
Make nil bindings in char-tables transparent.
(store_in_keymap): Turn a nil binding into a t binding for char-tables.
2001-11-26 22:30:21 +00:00
Pavel Janík
1b944d9cd9 (access_keymap): Remove unused variables c1' and c2'. 2001-11-23 07:04:49 +00:00
Stefan Monnier
d55627cca4 (Fdescribe_vector): Add `describer' parameter.
(describe_command, describe_translation): Add dummy second param.
(describe_map): Call elt_describer with two arguments.
(describe_vector_princ): Add `fun' parameter.
Call it instead of the hardcoded `princ'.
(describe_vector): Add arg `args'.
Pass it as a new second argument to elt_describer.
2001-11-19 22:46:37 +00:00
Pavel Janík
335c5470b5 Change doc-string comments to new style' [w/doc:' keyword]. 2001-11-13 07:48:37 +00:00
Pavel Janík
830ddd7780 (access_keymap): Fix compilation error. 2001-11-07 08:47:21 +00:00
Richard M. Stallman
efb916453f (access_keymap): Don't use initializers on Lisp_Object. 2001-11-07 03:35:05 +00:00
Pavel Janík
b782650360 Update usage of CHECK_ macros (remove unused second argument). 2001-11-02 20:46:55 +00:00
Richard M. Stallman
36ca6189c6 (Fdescribe_buffer_bindings): Print character property
bindings along with or instead of the buffer local map.
Make the overriding maps override what they should.
2001-11-01 19:55:42 +00:00
Pavel Janík
13b1a09c3e (access_keymap): Remove unused variable `charset'. 2001-10-28 10:53:43 +00:00
Stefan Monnier
ef879104ac (current_minor_maps): `override' only shadows its
correspondent in minor-mode-map-alist, not the whole tail.
2001-10-18 22:14:45 +00:00
Ken Raeburn
f3fbd15535 Avoid (most) uses of XCAR/XCDR as lvalues, for flexibility in experimenting
with lisp system changes.
2001-10-16 09:09:51 +00:00
Stefan Monnier
845e4cf4d4 (access_keymap): Unify handling of `t' and generic-char.
If a parent is reached and noinherit is set, exit immediately.
Use AREF and ASIZE macros.  Call get_keyelt before checking KEYMAPP.
2001-10-14 22:45:14 +00:00
Stefan Monnier
2b6748c0ac (Fkey_description): Use empty_string.
(Fdescribe_bindings_internal, describe_buffer_bindings): Remove.
(syms_of_keymap): Setup inheritance between maps.
Don't export Sdescribe_bindings_internal any more.
2001-10-12 18:46:30 +00:00
Sam Steingold
0c4d9527dd current-active-maps: quote newlines 2001-10-08 13:33:20 +00:00
Stefan Monnier
8feddab4e0 Include keymap.h. 2001-10-08 11:39:52 +00:00
Stefan Monnier
54cbc3d4cd (Fkeymap_prompt, Fcurrent_active_maps): New funs.
(accessible_keymaps_1): New function.
(Faccessible_keymaps, accessible_keymaps_char_table): Use it.
(Fwhere_is_internal): Use Fcurrent_active_maps.
(Fdescribe_buffer_bindings): Renamed from describe_buffer_bindings.
Insert in current buffer rather than standard-output.
Don't call `help-mode'.  Export to elisp.
(describe_buffer_bindings): New wrapper.
(syms_of_keymap): Defsubr Skeymap_prompt, Scurrent_active_maps
and Sdescribe_buffer_bindings.
2001-10-08 09:47:10 +00:00
Gerd Moellmann
32c82ac0a1 Don't define min/max. 2001-10-08 08:08:08 +00:00
Gerd Moellmann
3ec6401d7b (access_keymap): Return the cdr of the binding of
a generic character instead of its definition (KEY . BINDING).
2001-08-24 08:42:35 +00:00
Gerd Moellmann
62b366ffb3 (access_keymap): Fix last change to not consider
IDX when it has modifiers.
2001-08-22 08:29:20 +00:00
Gerd Moellmann
859ea4b849 (access_keymap): If a binding of the form (GENERIC-CHAR
. BINDING) exists, where GENERIC-CHAR is the generic character of
the charset of IDX, return BINDING, unless there exists or binding
for IDX itself.
2001-08-21 10:42:27 +00:00
Gerd Moellmann
e15e282807 (Fsingle_key_description): NUL-terminate the string
buffer before calling build_string.
2001-05-29 14:09:54 +00:00
Gerd Moellmann
3d9d7a9b30 (Fsingle_key_description): Create a multibyte string
only if necessary.
2001-05-28 16:21:41 +00:00
Gerd Moellmann
d4ae91d2ce (Fsingle_key_description): Replace a build_string with
a make_multibyte_string.  From Kenichi Handa <handa@etl.go.jp>.
2001-05-16 10:49:21 +00:00
Stefan Monnier
fc18e5470d (Faccessible_keymaps): Pass `is_metized' to accessible_keymaps_char_table.
(accessible_keymaps_char_table): Obey `is_metized'.
(where_is_internal, Fwhere_is_internal): Don't confuse int and Lisp_Object.
2001-02-26 17:16:00 +00:00
Stefan Monnier
f58c64946e *** empty log message *** 2001-02-26 17:07:47 +00:00
Stefan Monnier
2ba11bbdcb (where_is_internal): Accept non-ascii integer prefixes. 2001-02-24 17:07:29 +00:00
Stefan Monnier
60dc655805 (Fwhere_is_internal): Use the first valid binding
if no ascii binding is found (when firstonly is t).
2001-01-31 15:19:30 +00:00
Gerd Moellmann
fdbbf26657 Undo last change. 2001-01-29 20:04:42 +00:00
Gerd Moellmann
341e4f2465 (mouse_key_p): New function.
(where_is_internal, Fwhere_is_internal): Use it.
2001-01-29 19:52:22 +00:00
Dave Love
0482803f6b (Fwhere_is_internal): Declare gcpro3, gcpro4. 2001-01-25 12:58:22 +00:00