Commit 6612f0bf authored by Paul Eggert's avatar Paul Eggert
Browse files

* keymap.h (KEY_DESCRIPTION_SIZE, push_key_description): Move decls

here ...
* lisp.h: ... from here.  push_key_description is no longer
defined in keyboard.c, so its declaration should not be in
lisp.h's "Defined in keyboard.c" section, and KEY_DESCRIPTION_SIZE
logically belongs with push_key_description.
parent e21bac42
2011-09-11 Paul Eggert <eggert@cs.ucla.edu>
* keymap.h (KEY_DESCRIPTION_SIZE, push_key_description): Move decls
here ...
* lisp.h: ... from here. push_key_description is no longer
defined in keyboard.c, so its declaration should not be in
lisp.h's "Defined in keyboard.c" section, and KEY_DESCRIPTION_SIZE
logically belongs with push_key_description.
2011-09-10 Paul Eggert <eggert@cs.ucla.edu>
* buffer.h: Include <sys/types.h> instead of <time.h>.
......
......@@ -19,6 +19,16 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifndef KEYMAP_H
#define KEYMAP_H
/* The maximum byte size consumed by push_key_description.
All callers should assure that at least this size of memory is
allocated at the place pointed by the second argument.
There are 6 modifiers, each consumes 2 chars.
The octal form of a character code consumes
(1 + CHARACTERBITS / 3 + 1) chars (including backslash at the head).
We need one more byte for string terminator `\0'. */
#define KEY_DESCRIPTION_SIZE ((2 * 6) + 1 + (CHARACTERBITS / 3) + 1 + 1)
#define KEYMAPP(m) (!NILP (get_keymap (m, 0, 0)))
extern Lisp_Object Qkeymap, Qmenu_bar;
extern Lisp_Object Qremap;
......@@ -30,6 +40,7 @@ EXFUN (Fdefine_key, 3);
EXFUN (Fcommand_remapping, 3);
EXFUN (Fkey_binding, 4);
EXFUN (Fkey_description, 2);
extern char *push_key_description (EMACS_INT, char *, int);
EXFUN (Fsingle_key_description, 2);
EXFUN (Fwhere_is_internal, 5);
EXFUN (Fcurrent_active_maps, 2);
......
......@@ -1599,16 +1599,6 @@ typedef unsigned char UCHAR;
itself. */
#define CHARACTERBITS 22
/* The maximum byte size consumed by push_key_description.
All callers should assure that at least this size of memory is
allocated at the place pointed by the second argument.
There are 6 modifiers, each consumes 2 chars.
The octal form of a character code consumes
(1 + CHARACTERBITS / 3 + 1) chars (including backslash at the head).
We need one more byte for string terminator `\0'. */
#define KEY_DESCRIPTION_SIZE ((2 * 6) + 1 + (CHARACTERBITS / 3) + 1 + 1)
/* The glyph datatype, used to represent characters on the display.
It consists of a char code and a face id. */
......@@ -3258,8 +3248,6 @@ extern void force_auto_save_soon (void);
extern void init_keyboard (void);
extern void syms_of_keyboard (void);
extern void keys_of_keyboard (void);
extern char *push_key_description (EMACS_INT, char *, int);
/* Defined in indent.c */
EXFUN (Fvertical_motion, 2);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment