aboutsummaryrefslogtreecommitdiffstats
path: root/src/keymap.c
diff options
context:
space:
mode:
authorKaroly Lorentey2004-11-22 11:06:39 +0000
committerKaroly Lorentey2004-11-22 11:06:39 +0000
commit71925ac335f7c3b1fd97fba98cb5b9b4f03a6e23 (patch)
tree63f61c3bebc83c114c16f31dd4ac2b9c0fe17c7d /src/keymap.c
parente417405015c93c81641f5c4a33ec898b5c353772 (diff)
parent83aebfe62204109f19ef7dcca5429c1ddad21c57 (diff)
downloademacs-71925ac335f7c3b1fd97fba98cb5b9b4f03a6e23.tar.gz
emacs-71925ac335f7c3b1fd97fba98cb5b9b4f03a6e23.zip
Merged in changes from CVS trunk.
Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-694 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-695 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-696 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-697 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-698 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-699 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-700 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-701 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-702 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-703 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-704 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-705 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-706 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-707 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-708 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-709 Update from CVS: src/indent.c (Fvertical_motion): Fix last change. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-710 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-711 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-712 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-713 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-72 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-73 Merge from emacs--cvs-trunk--0 git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-268
Diffstat (limited to 'src/keymap.c')
-rw-r--r--src/keymap.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 891e41f0b58..a5e5fbd3f93 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -729,19 +729,23 @@ map_keymap_call (key, val, fun, dummy)
729 call2 (fun, key, val); 729 call2 (fun, key, val);
730} 730}
731 731
732DEFUN ("map-keymap", Fmap_keymap, Smap_keymap, 2, 2, 0, 732DEFUN ("map-keymap", Fmap_keymap, Smap_keymap, 2, 3, 0,
733 doc: /* Call FUNCTION for every binding in KEYMAP. 733 doc: /* Call FUNCTION for every binding in KEYMAP.
734FUNCTION is called with two arguments: the event and its binding. 734FUNCTION is called with two arguments: the event and its binding.
735If KEYMAP has a parent, the parent's bindings are included as well. 735If KEYMAP has a parent, the parent's bindings are included as well.
736This works recursively: if the parent has itself a parent, then the 736This works recursively: if the parent has itself a parent, then the
737grandparent's bindings are also included and so on. */) 737grandparent's bindings are also included and so on.
738 (function, keymap) 738usage: (map-keymap FUNCTION KEYMAP) */)
739 Lisp_Object function, keymap; 739 (function, keymap, sort_first)
740 Lisp_Object function, keymap, sort_first;
740{ 741{
741 if (INTEGERP (function)) 742 if (INTEGERP (function))
742 /* We have to stop integers early since map_keymap gives them special 743 /* We have to stop integers early since map_keymap gives them special
743 significance. */ 744 significance. */
744 Fsignal (Qinvalid_function, Fcons (function, Qnil)); 745 Fsignal (Qinvalid_function, Fcons (function, Qnil));
746 if (! NILP (sort_first))
747 return call3 (intern ("map-keymap-internal"), function, keymap, Qt);
748
745 map_keymap (keymap, map_keymap_call, function, NULL, 1); 749 map_keymap (keymap, map_keymap_call, function, NULL, 1);
746 return Qnil; 750 return Qnil;
747} 751}