# HG changeset patch # User Richard M. Stallman # Date 1119984662 0 # Node ID f2cc7f306afb298f6fac77dcb6098a03f3098d9d # Parent e1784c56cee594a00fd38760c2ab3515383238cd (Creating Keymaps): Put make-sparse-keymap before make-keymap. diff -r e1784c56cee5 -r f2cc7f306afb lispref/keymaps.texi --- a/lispref/keymaps.texi Tue Jun 28 06:37:26 2005 +0000 +++ b/lispref/keymaps.texi Tue Jun 28 18:51:02 2005 +0000 @@ -257,13 +257,31 @@ Here we describe the functions for creating keymaps. -@c ??? This should come after make-sparse-keymap +@defun make-sparse-keymap &optional prompt +This function creates and returns a new sparse keymap with no entries. +(A sparse keymap is the kind of keymap you usually want.) The new +keymap does not contain a char-table, unlike @code{make-keymap}, and +does not bind any events. + +@example +@group +(make-sparse-keymap) + @result{} (keymap) +@end group +@end example + +If you specify @var{prompt}, that becomes the overall prompt string for +the keymap. The prompt string should be provided for menu keymaps +(@pxref{Defining Menus}). +@end defun + @defun make-keymap &optional prompt This function creates and returns a new full keymap. That keymap contains a char-table (@pxref{Char-Tables}) with slots for all characters without modifiers. The new keymap initially binds all these characters to @code{nil}, and does not bind any other kind of -event. +event. The argument @var{prompt} specifies a +prompt string, as in @code{make-sparse-keymap}. @example @group @@ -272,23 +290,8 @@ @end group @end example -If you specify @var{prompt}, that becomes the overall prompt string for -the keymap. The prompt string should be provided for menu keymaps -(@pxref{Defining Menus}). -@end defun - -@defun make-sparse-keymap &optional prompt -This function creates and returns a new sparse keymap with no entries. -The new keymap does not contain a char-table, unlike @code{make-keymap}, -and does not bind any events. The argument @var{prompt} specifies a -prompt string, as in @code{make-keymap}. - -@example -@group -(make-sparse-keymap) - @result{} (keymap) -@end group -@end example +A full keymap is more efficient than a sparse keymap when it holds +lots of bindings; for just a few, the sparse keymap is better. @end defun @defun copy-keymap keymap