diff options
Diffstat (limited to 'src/keyboard.h')
-rw-r--r-- | src/keyboard.h | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/src/keyboard.h b/src/keyboard.h index ea147cad483..6d046bc98e7 100644 --- a/src/keyboard.h +++ b/src/keyboard.h @@ -23,8 +23,9 @@ Boston, MA 02110-1301, USA. */ /* Length of echobuf field in each KBOARD. */ -/* Each KBOARD represents one logical input stream from which Emacs gets input. - If we are using an ordinary terminal, it has one KBOARD object. +/* Each KBOARD represents one logical input stream from which Emacs + gets input. If we are using ordinary terminals, it has one KBOARD + object for each terminal device. Usually each X display screen has its own KBOARD, but when two of them are on the same X server, we assume they share a keyboard and give them one KBOARD in common. @@ -79,10 +80,12 @@ struct kboard commands that set the prefix argument. */ Lisp_Object Vlast_command; - /* Normally same as last-command, but never modified by - other commands. */ + /* Normally same as last-command, but never modified by other commands. */ Lisp_Object Vreal_last_command; + /* User-supplied table to translate input characters through. */ + Lisp_Object Vkeyboard_translate_table; + /* Last command that may be repeated by `repeat'. */ Lisp_Object Vlast_repeatable_command; @@ -126,6 +129,18 @@ struct kboard /* Cache for modify_event_symbol. */ Lisp_Object system_key_syms; + /* The kind of display: x, w32, ... */ + Lisp_Object Vwindow_system; + + /* Keymap mapping keys to alternative preferred forms. + See the DEFVAR for more documentation. */ + Lisp_Object Vlocal_function_key_map; + + /* Keymap mapping ASCII function key sequences onto their preferred + forms. Initialized by the terminal-specific lisp files. See the + DEFVAR for more documentation. */ + Lisp_Object Vinput_decode_map; + /* Minibufferless frames on this display use this frame's minibuffer. */ Lisp_Object Vdefault_minibuffer_frame; @@ -158,7 +173,7 @@ struct kboard }; #ifdef MULTI_KBOARD -/* Temporarily used before a frame has been opened, and for termcap frames */ +/* Temporarily used before a frame has been opened. */ extern KBOARD *initial_kboard; /* In the single-kboard state, this is the kboard @@ -193,10 +208,6 @@ extern EMACS_INT num_nonmacro_input_events; /* Nonzero means polling for input is temporarily suppressed. */ extern int poll_suppress_count; -/* Keymap mapping ASCII function key sequences onto their preferred forms. - Initialized by the terminal-specific lisp files. */ -extern Lisp_Object Vfunction_key_map; - /* Vector holding the key sequence that invoked the current command. It is reused for each command, and it may be longer than the current sequence; this_command_key_count indicates how many elements @@ -304,18 +315,24 @@ extern Lisp_Object parse_modifiers P_ ((Lisp_Object)); extern Lisp_Object reorder_modifiers P_ ((Lisp_Object)); extern Lisp_Object read_char P_ ((int, int, Lisp_Object *, Lisp_Object, int *, EMACS_TIME *)); -/* User-supplied string to translate input characters through. */ -extern Lisp_Object Vkeyboard_translate_table; + + +/* Parent keymap of terminal-local function-key-map instances. */ +extern Lisp_Object Vfunction_key_map; + +/* Keymap of key translations that can override keymaps. */ +extern Lisp_Object Vkey_translation_map; extern int parse_menu_item P_ ((Lisp_Object, int, int)); extern void echo_now P_ ((void)); extern void init_kboard P_ ((KBOARD *)); extern void delete_kboard P_ ((KBOARD *)); -extern void single_kboard_state P_ ((void)); extern void not_single_kboard_state P_ ((KBOARD *)); +extern void push_kboard P_ ((struct kboard *)); extern void push_frame_kboard P_ ((struct frame *)); -extern void pop_frame_kboard P_ ((void)); +extern void pop_kboard P_ ((void)); +extern void temporarily_switch_to_single_kboard P_ ((struct frame *)); extern void record_asynch_buffer_change P_ ((void)); extern SIGTYPE input_poll_signal P_ ((int)); extern void start_polling P_ ((void)); @@ -349,5 +366,8 @@ extern Lisp_Object menu_item_eval_property P_ ((Lisp_Object)); extern int kbd_buffer_events_waiting P_ ((int)); extern void add_user_signals P_ ((int, const char *)); +extern int tty_read_avail_input P_ ((struct terminal *, int, + struct input_event *)); + /* arch-tag: 769cbade-1ba9-4950-b886-db265b061aa3 (do not change this comment) */ |