comparison src/ChangeLog @ 5679:a81a739181dc

Add command remapping, a more robust alternative to #'substitute-key-definition src/ChangeLog addition: 2012-09-02 Aidan Kehoe <kehoea@parhasard.net> * keymap.c: Add command remapping, a more robust equivalent to #'substitute-key-definition. * keymap.c (CHECK_REMAPPING_POSITION): New. * keymap.c (keymap_equal): Correct a comment here. * keymap.c (Fdefine_key): Document the command remapping syntax. * keymap.c (Fremap_command): New. * keymap.c (command_remapping): New. * keymap.c (Fcommand_remapping): New. * keymap.c (commands_remapped_to_mapper): New. * keymap.c (commands_remapped_to_traverser): New. * keymap.c (Fcommands_remapped_to): New. * keymap.c (get_relevant_keymaps): Take a new POSITION argument. * keymap.c (Fcurrent_keymaps, event_binding): Supply the new POSITION argument to get_relevant_keymaps. * keymap.c (Fkey_binding): Add new arguments, NO-REMAP and POSITION. * keymap.c (map_keymap_mapper): * keymap.c (Fwhere_is_internal): * keymap.c (where_is_to_char): * keymap.c (where_is_recursive_mapper): Don't expose the key remapping in these functions. This conflicts with GNU, but is more sane for our callers. Access to command remapping is with the functions #'command-remapping, #'commands-remapped-to, and #'remap-command, not with the general keymap functions, apart from the compatibility hack in #'define-key. * keymap.c (syms_of_keymap): * keymap.c (vars_of_keymap): * keymap.c (complex_vars_of_keymap): * lisp.h: New CHECK_COMMAND macro. man/ChangeLog addition: 2012-09-02 Aidan Kehoe <kehoea@parhasard.net> * lispref/keymaps.texi (Keymaps): * lispref/keymaps.texi (Changing Key Bindings): * lispref/keymaps.texi (Scanning Keymaps): * lispref/keymaps.texi (Remapping commands): * lispref/keymaps.texi (XEmacs): New. * lispref/keymaps.texi (Other Keymap Functions): Document the new command remapping functionality in this file. lisp/ChangeLog addition: 2012-09-02 Aidan Kehoe <kehoea@parhasard.net> * help.el (describe-function-1): Document any command remapping that has been done in this function. tests/ChangeLog addition: 2012-09-02 Aidan Kehoe <kehoea@parhasard.net> * automated/keymap-tests.el: Test the new command remapping functionality.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 02 Sep 2012 14:31:40 +0100
parents b0d40183ac79
children 8a2ac78cb97d
comparison
equal deleted inserted replaced
5678:b0d40183ac79 5679:a81a739181dc
18 name. 18 name.
19 19
20 2012-08-02 Stephen J. Turnbull <stephen@xemacs.org> 20 2012-08-02 Stephen J. Turnbull <stephen@xemacs.org>
21 21
22 * XEmacs 21.5.32 "habanero" is released. 22 * XEmacs 21.5.32 "habanero" is released.
23
24 2012-09-02 Aidan Kehoe <kehoea@parhasard.net>
25
26 * keymap.c:
27 Add command remapping, a more robust equivalent to
28 #'substitute-key-definition.
29 * keymap.c (CHECK_REMAPPING_POSITION): New.
30 * keymap.c (keymap_equal): Correct a comment here.
31 * keymap.c (Fdefine_key): Document the command remapping syntax.
32 * keymap.c (Fremap_command): New.
33 * keymap.c (command_remapping): New.
34 * keymap.c (Fcommand_remapping): New.
35 * keymap.c (commands_remapped_to_mapper): New.
36 * keymap.c (commands_remapped_to_traverser): New.
37 * keymap.c (Fcommands_remapped_to): New.
38 * keymap.c (get_relevant_keymaps): Take a new POSITION argument.
39 * keymap.c (Fcurrent_keymaps, event_binding):
40 Supply the new POSITION argument to get_relevant_keymaps.
41 * keymap.c (Fkey_binding):
42 Add new arguments, NO-REMAP and POSITION.
43
44 * keymap.c (map_keymap_mapper):
45 * keymap.c (Fwhere_is_internal):
46 * keymap.c (where_is_to_char):
47 * keymap.c (where_is_recursive_mapper):
48 Don't expose the key remapping in these functions. This conflicts
49 with GNU, but is more sane for our callers. Access to command
50 remapping is with the functions #'command-remapping,
51 #'commands-remapped-to, and #'remap-command, not with the general
52 keymap functions, apart from the compatibility hack in #'define-key.
53
54 * keymap.c (syms_of_keymap):
55 * keymap.c (vars_of_keymap):
56 * keymap.c (complex_vars_of_keymap):
57 * lisp.h: New CHECK_COMMAND macro.
23 58
24 2012-05-14 Aidan Kehoe <kehoea@parhasard.net> 59 2012-05-14 Aidan Kehoe <kehoea@parhasard.net>
25 60
26 * minibuf.c (Ftest_completion): 61 * minibuf.c (Ftest_completion):
27 Correct some documentation here. 62 Correct some documentation here.