aboutsummaryrefslogtreecommitdiffstats
path: root/src/keyboard.c
diff options
context:
space:
mode:
authorStefan Monnier <[email protected]>2007-11-15 16:03:00 +0000
committerStefan Monnier <[email protected]>2007-11-15 16:03:00 +0000
commit58da34c73b6fb576474c73c29dfc9cf1a9e9751e (patch)
tree7756bae639e70c8b3049f6e34cec61308537d51c /src/keyboard.c
parent21e1464132e49b38ba58a944a2183006c309124f (diff)
* subr.el (event-modifiers): Use internal-event-symbol-parse-modifiers.
* keyboard.c (Fevent_symbol_parse_modifiers): New function. (syms_of_keyboard): Defsubr it.
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 64504535dd..41407b5f62 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -6545,6 +6545,19 @@ parse_modifiers (symbol)
}
}
+DEFUN ("internal-event-symbol-parse-modifiers", Fevent_symbol_parse_modifiers,
+ Sevent_symbol_parse_modifiers, 1, 1, 0,
+ doc: /* Parse the event symbol. For internal use. */)
+ (symbol)
+{
+ /* Fill the cache if needed. */
+ parse_modifiers (symbol);
+ /* Ignore the result (which is stored on Qevent_symbol_element_mask)
+ and use the Lispier representation stored on Qevent_symbol_elements
+ instead. */
+ return Fget (symbol, Qevent_symbol_elements);
+}
+
/* Apply the modifiers MODIFIERS to the symbol BASE.
BASE must be unmodified.
@@ -11946,6 +11959,7 @@ syms_of_keyboard ()
staticpro (&help_form_saved_window_configs);
defsubr (&Scurrent_idle_time);
+ defsubr (&Sevent_symbol_parse_modifiers);
defsubr (&Sevent_convert_list);
defsubr (&Sread_key_sequence);
defsubr (&Sread_key_sequence_vector);