Commit | Line | Data |
---|---|---|
cd645247 | 1 | /* Definitions needed by most editing commands. |
429ab54e | 2 | Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004, |
8cabe764 | 3 | 2005, 2006, 2007, 2008 Free Software Foundation, Inc. |
cd645247 JB |
4 | |
5 | This file is part of GNU Emacs. | |
6 | ||
b9b1cc14 | 7 | GNU Emacs is free software: you can redistribute it and/or modify |
cd645247 | 8 | it under the terms of the GNU General Public License as published by |
b9b1cc14 GM |
9 | the Free Software Foundation, either version 3 of the License, or |
10 | (at your option) any later version. | |
cd645247 JB |
11 | |
12 | GNU Emacs is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
b9b1cc14 | 18 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
cd645247 JB |
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 | ||
90385b3d EZ |
38 | /* keymap used for minibuffers when doing completion in filenames*/ |
39 | extern Lisp_Object Vminibuffer_local_filename_completion_map; | |
40 | ||
cd645247 JB |
41 | /* keymap used for minibuffers when doing completion and require a match */ |
42 | extern Lisp_Object Vminibuffer_local_must_match_map; | |
43 | ||
90385b3d EZ |
44 | /* keymap used for minibuffers when doing completion in filenames |
45 | and require a match */ | |
8ba31f36 | 46 | extern Lisp_Object Vminibuffer_local_filename_must_match_map; |
90385b3d | 47 | |
cd645247 JB |
48 | /* Last character of last key sequence. */ |
49 | extern Lisp_Object last_command_char; | |
50 | ||
07f4ea75 RS |
51 | /* Last input character read as a command, not counting menus |
52 | reached by the mouse. */ | |
53 | extern Lisp_Object last_nonmenu_event; | |
54 | ||
dbc4e1c1 | 55 | /* List of command events to be re-read, or Qnil. */ |
1ad698af | 56 | extern Lisp_Object Vunread_command_events; |
ef733244 | 57 | |
346dae05 RS |
58 | /* Command char event to be re-read, or -1 if none. |
59 | Setting this is obsolete, but some things should still check it. */ | |
31ade731 | 60 | extern EMACS_INT unread_command_char; |
346dae05 | 61 | |
c5a02c74 | 62 | /* The command being executed by the command loop. |
185fd0ec KH |
63 | Commands may set this, and the value set will be copied into |
64 | current_kboard->Vlast_command instead of the actual command. */ | |
e717e6d7 | 65 | extern Lisp_Object Vthis_command; |
c5a02c74 | 66 | |
ef733244 JB |
67 | /* If not Qnil, this is a switch-frame event which we decided to put |
68 | off until the end of a key sequence. This should be read as the | |
1ad698af | 69 | next command input, after any Vunread_command_events. |
ef733244 JB |
70 | |
71 | read_key_sequence uses this to delay switch-frame events until the | |
72 | end of the key sequence; Fread_char uses it to put off switch-frame | |
73 | events until a non-ASCII event is acceptable as input. */ | |
74 | extern Lisp_Object unread_switch_frame; | |
cd645247 | 75 | |
74338b5e | 76 | /* The value of point when the last command was started. */ |
01314b95 KH |
77 | extern int last_point_position; |
78 | ||
0f5f2096 RS |
79 | /* The buffer that was current when the last command was started. */ |
80 | extern Lisp_Object last_point_position_buffer; | |
81 | ||
74338b5e RS |
82 | /* The window that was selected when the last command was started. */ |
83 | extern Lisp_Object last_point_position_window; | |
84 | ||
cd645247 JB |
85 | /* Nonzero means ^G can quit instantly */ |
86 | extern int immediate_quit; | |
87 | ||
0aed526e | 88 | extern Lisp_Object Vexecuting_kbd_macro; |
cd645247 JB |
89 | |
90 | /* Nonzero if input is coming from the keyboard */ | |
91 | ||
0aed526e | 92 | #define INTERACTIVE (NILP (Vexecuting_kbd_macro) && !noninteractive) |
cd645247 JB |
93 | |
94 | /* Set this nonzero to force reconsideration of mode line. */ | |
95 | ||
96 | extern int update_mode_lines; | |
97 | ||
98 | /* Nonzero means reading single-character input with prompt | |
99 | so put cursor on minibuffer after the prompt. */ | |
100 | ||
101 | extern int cursor_in_echo_area; | |
ab5796a9 MB |
102 | |
103 | /* arch-tag: 4f7ca0b7-6a56-4b20-8bf5-b67a99921d1d | |
104 | (do not change this comment) */ |