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 | |
8 | the Free Software Foundation; either version 1, or (at your option) | |
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 | |
18 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |
19 | ||
20 | ||
21 | #define Ctl(c) ((c)&037) | |
22 | ||
6ce387e6 JB |
23 | /* Define the names of keymaps, just so people can refer to them in |
24 | calls to initial_define_key. These should *not* be used after | |
25 | initialization; use-global-map doesn't affect these; it sets | |
26 | current_global_map instead. */ | |
cd645247 | 27 | extern Lisp_Object global_map; |
cd645247 | 28 | extern Lisp_Object meta_map; |
cd645247 JB |
29 | extern Lisp_Object control_x_map; |
30 | ||
cd645247 JB |
31 | extern Lisp_Object Vminibuffer_local_map; |
32 | ||
33 | extern Lisp_Object Vminibuffer_local_ns_map; | |
34 | ||
35 | /* keymap used for minibuffers when doing completion */ | |
36 | extern Lisp_Object Vminibuffer_local_completion_map; | |
37 | ||
38 | /* keymap used for minibuffers when doing completion and require a match */ | |
39 | extern Lisp_Object Vminibuffer_local_must_match_map; | |
40 | ||
41 | /* Last character of last key sequence. */ | |
42 | extern Lisp_Object last_command_char; | |
43 | ||
07f4ea75 RS |
44 | /* Last input character read as a command, not counting menus |
45 | reached by the mouse. */ | |
46 | extern Lisp_Object last_nonmenu_event; | |
47 | ||
dbc4e1c1 | 48 | /* List of command events to be re-read, or Qnil. */ |
1ad698af | 49 | extern Lisp_Object Vunread_command_events; |
ef733244 | 50 | |
346dae05 RS |
51 | /* Command char event to be re-read, or -1 if none. |
52 | Setting this is obsolete, but some things should still check it. */ | |
53 | extern int unread_command_char; | |
54 | ||
c5a02c74 RS |
55 | /* Last command executed by the editor command loop, not counting |
56 | commands that set the prefix argument. */ | |
57 | ||
58 | extern Lisp_Object last_command; | |
59 | ||
60 | /* The command being executed by the command loop. | |
61 | Commands may set this, and the value set will be copied into last_command | |
62 | instead of the actual command. */ | |
63 | extern Lisp_Object this_command; | |
64 | ||
ef733244 JB |
65 | /* If not Qnil, this is a switch-frame event which we decided to put |
66 | off until the end of a key sequence. This should be read as the | |
1ad698af | 67 | next command input, after any Vunread_command_events. |
ef733244 JB |
68 | |
69 | read_key_sequence uses this to delay switch-frame events until the | |
70 | end of the key sequence; Fread_char uses it to put off switch-frame | |
71 | events until a non-ASCII event is acceptable as input. */ | |
72 | extern Lisp_Object unread_switch_frame; | |
cd645247 JB |
73 | |
74 | /* Previous command symbol found here for comparison */ | |
75 | extern Lisp_Object last_command; | |
76 | ||
0f5f2096 | 77 | /* The value of point when the last command was executed. */ |
01314b95 KH |
78 | extern int last_point_position; |
79 | ||
0f5f2096 RS |
80 | /* The buffer that was current when the last command was started. */ |
81 | extern Lisp_Object last_point_position_buffer; | |
82 | ||
cd645247 JB |
83 | /* Nonzero means ^G can quit instantly */ |
84 | extern int immediate_quit; | |
85 | ||
86 | extern Lisp_Object Vexecuting_macro; | |
87 | ||
88 | /* Nonzero if input is coming from the keyboard */ | |
89 | ||
265a9e55 | 90 | #define INTERACTIVE (NILP (Vexecuting_macro) && !noninteractive) |
cd645247 JB |
91 | |
92 | /* Set this nonzero to force reconsideration of mode line. */ | |
93 | ||
94 | extern int update_mode_lines; | |
95 | ||
96 | /* Nonzero means reading single-character input with prompt | |
97 | so put cursor on minibuffer after the prompt. */ | |
98 | ||
99 | extern int cursor_in_echo_area; |