]> code.delx.au - gnu-emacs/blob - src/macros.h
Merge from emacs-23.
[gnu-emacs] / src / macros.h
1 /* Definitions for keyboard macro interpretation in GNU Emacs.
2 Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
3 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
4
5 This file is part of GNU Emacs.
6
7 GNU Emacs is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
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
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
19
20
21 /* Number of successful iterations so far
22 for innermost keyboard macro.
23 This is not bound at each level,
24 so after an error, it describes the innermost interrupted macro. */
25
26 extern int executing_kbd_macro_iterations;
27
28 /* This is the macro that was executing.
29 This is not bound at each level,
30 so after an error, it describes the innermost interrupted macro. */
31
32 extern Lisp_Object executing_kbd_macro;
33
34 /* Finish defining the current keyboard macro. */
35
36 extern void end_kbd_macro (void);
37
38 /* Declare that all chars stored so far in the kbd macro being defined
39 really belong to it. This is done in between editor commands. */
40
41 extern void finalize_kbd_macro_chars (void);
42
43 /* Store a character into kbd macro being defined */
44
45 extern void store_kbd_macro_char (Lisp_Object);
46