Commit | Line | Data |
---|---|---|
cd645247 | 1 | /* Definitions needed by most editing commands. |
3a22ee35 | 2 | Copyright (C) 1985, 1994 Free Software Foundation, Inc. |
cd645247 JB |
3 | |
4 | This file is part of GNU Emacs. | |
5 | ||
6 | GNU Emacs is free software; you can redistribute it and/or modify | |
7 | it under the terms of the GNU General Public License as published by | |
7c938215 | 8 | the Free Software Foundation; either version 2, or (at your option) |
cd645247 JB |
9 | any later version. |
10 | ||
11 | GNU Emacs is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | GNU General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU General Public License | |
17 | along with GNU Emacs; see the file COPYING. If not, write to | |
3b7ad313 EN |
18 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
19 | Boston, MA 02111-1307, USA. */ | |
cd645247 JB |
20 | |
21 | ||
22 | #define Ctl(c) ((c)&037) | |
23 | ||
6ce387e6 JB |
24 | /* Define the names of keymaps, just so people can refer to them in |
25 | calls to initial_define_key. These should *not* be used after | |
26 | initialization; use-global-map doesn't affect these; it sets | |
27 | current_global_map instead. */ | |
cd645247 | 28 | extern Lisp_Object global_map; |
cd645247 | 29 | extern Lisp_Object meta_map; |
cd645247 JB |
30 | extern Lisp_Object control_x_map; |
31 | ||
cd645247 JB |
32 | extern Lisp_Object Vminibuffer_local_map; |
33 | ||
34 | extern Lisp_Object Vminibuffer_local_ns_map; | |
35 | ||
36 | /* keymap used for minibuffers when doing completion */ | |
37 | extern Lisp_Object Vminibuffer_local_completion_map; | |
38 | ||
39 | /* keymap used for minibuffers when doing completion and require a match */ | |
40 | extern Lisp_Object Vminibuffer_local_must_match_map; | |
41 | ||
42 | /* Last character of last key sequence. */ | |
43 | extern Lisp_Object last_command_char; | |
44 | ||
07f4ea75 RS |
45 | /* Last input character read as a command, not counting menus |
46 | reached by the mouse. */ | |
47 | extern Lisp_Object last_nonmenu_event; | |
48 | ||
dbc4e1c1 | 49 | /* List of command events to be re-read, or Qnil. */ |
1ad698af | 50 | extern Lisp_Object Vunread_command_events; |
ef733244 | 51 | |
346dae05 RS |
52 | /* Command char event to be re-read, or -1 if none. |
53 | Setting this is obsolete, but some things should still check it. */ | |
54 | extern int unread_command_char; | |
55 | ||
c5a02c74 | 56 | /* The command being executed by the command loop. |
185fd0ec KH |
57 | Commands may set this, and the value set will be copied into |
58 | current_kboard->Vlast_command instead of the actual command. */ | |
c5a02c74 RS |
59 | extern Lisp_Object this_command; |
60 | ||
ef733244 JB |
61 | /* If not Qnil, this is a switch-frame event which we decided to put |
62 | off until the end of a key sequence. This should be read as the | |
1ad698af | 63 | next command input, after any Vunread_command_events. |
ef733244 JB |
64 | |
65 | read_key_sequence uses this to delay switch-frame events until the | |
66 | end of the key sequence; Fread_char uses it to put off switch-frame | |
67 | events until a non-ASCII event is acceptable as input. */ | |
68 | extern Lisp_Object unread_switch_frame; | |
cd645247 | 69 | |
0f5f2096 | 70 | /* The value of point when the last command was executed. */ |
01314b95 KH |
71 | extern int last_point_position; |
72 | ||
0f5f2096 RS |
73 | /* The buffer that was current when the last command was started. */ |
74 | extern Lisp_Object last_point_position_buffer; | |
75 | ||
cd645247 JB |
76 | /* Nonzero means ^G can quit instantly */ |
77 | extern int immediate_quit; | |
78 | ||
79 | extern Lisp_Object Vexecuting_macro; | |
80 | ||
81 | /* Nonzero if input is coming from the keyboard */ | |
82 | ||
265a9e55 | 83 | #define INTERACTIVE (NILP (Vexecuting_macro) && !noninteractive) |
cd645247 JB |
84 | |
85 | /* Set this nonzero to force reconsideration of mode line. */ | |
86 | ||
87 | extern int update_mode_lines; | |
88 | ||
89 | /* Nonzero means reading single-character input with prompt | |
90 | so put cursor on minibuffer after the prompt. */ | |
91 | ||
92 | extern int cursor_in_echo_area; |