joe-3.1jupp31.tgz (die zweite Klappeā€¦)
[alioth/jupp.git] / macro.h
1 /* $MirOS: contrib/code/jupp/macro.h,v 1.2 2008/05/13 13:08:23 tg Exp $ */
2 /*
3  *      Keyboard macros
4  *      Copyright
5  *              (C) 1992 Joseph H. Allen
6  *
7  *      This file is part of JOE (Joe's Own Editor)
8  */
9 #ifndef _JOE_MACRO_H
10 #define _JOE_MACRO_H 1
11
12 #include "config.h"
13 #include "types.h"
14
15 /* Set when macro is recording: for status line */
16 extern struct recmac *recmac;
17
18 /* Macro construction functions */
19 MACRO *mkmacro PARAMS((int k, int arg, int n, CMD *cmd));
20 void addmacro PARAMS((MACRO *macro, MACRO *m));
21 MACRO *dupmacro PARAMS((MACRO *mac));
22 void rmmacro PARAMS((MACRO *macro));
23 MACRO *macstk PARAMS((MACRO *m, int k));
24 MACRO *macsta PARAMS((MACRO *m, int a));
25
26 void chmac PARAMS((void));
27
28 /* Text to macro / Macro to text */
29 MACRO *mparse PARAMS((MACRO *m, unsigned char *buf, int *sta));
30 unsigned char *mtext PARAMS((unsigned char *s, MACRO *m));
31
32 /* Execute a macro */
33 extern MACRO *curmacro;
34 int exemac PARAMS((MACRO *m));
35 int exmacro PARAMS((MACRO *m, int u));
36
37 /* Keyboard macros user interface */
38 int uplay PARAMS((BW *bw, int c));
39 int ustop PARAMS((void));
40 int urecord PARAMS((BW *bw, int c));
41 int uquery PARAMS((BW *bw));
42 int umacros PARAMS((BW *bw));
43
44 /* Repeat prefix user command */
45 int uarg PARAMS((BW *bw));
46 int uuarg PARAMS((BW *bw, int c));
47
48 #endif