1 /* cmds.h -- declarations for cmds.c.
2 $Id: cmds.h,v 1.9 2004/11/26 00:48:35 karl Exp $
4 Copyright (C) 1998, 1999, 2002, 2003, 2004 Free Software Foundation,
7 This program 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 2, or (at your option)
12 This program 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.
17 You should have received a copy of the GNU General Public License along
18 with this program; if not, write to the Free Software Foundation, Inc.,
19 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
24 /* The three arguments a command can get are a flag saying whether it is
25 before argument parsing (START) or after (END), the starting position
26 of the arguments, and the ending position. */
27 typedef void COMMAND_FUNCTION (); /* So we can say COMMAND_FUNCTION *foo; */
29 /* Each command has an associated function. When the command is
30 encountered in the text, the associated function is called with START
31 as the argument. If the function expects arguments in braces, it
32 remembers itself on the stack. When the corresponding close brace is
33 encountered, the function is called with END as the argument. */
37 /* Does the command expect braces? */
38 #define NO_BRACE_ARGS 0
40 #define MAYBE_BRACE_ARGS 2
45 COMMAND_FUNCTION
*proc
;
46 int argument_in_braces
;
49 extern COMMAND command_table
[];
51 typedef struct acronym_desc
53 struct acronym_desc
*next
;
58 /* Texinfo commands. */
59 extern void insert_self (int arg
),
60 insert_space (int arg
),
61 cm_ignore_line (void),
62 cm_ignore_arg (int arg
, int start_pos
, int end_pos
),
66 /* Document structure and meta information. */
67 extern void cm_setfilename (void),
69 cm_documentdescription (void),
73 cm_dircategory (void),
78 extern void cm_include (void),
79 cm_verbatiminclude (void);
81 /* Cross referencing commands. */
82 extern void cm_anchor (int arg
),
89 /* Special insertions. */
90 extern void cm_LaTeX (int arg
),
95 cm_copyright (int arg
),
100 cm_expansion (int arg
),
102 cm_insert_copying (void),
107 cm_registeredsymbol (int arg
),
110 /* Emphasis and markup. */
111 extern void cm_acronym (int arg
),
114 cm_cite (int arg
, int position
),
116 cm_dfn (int arg
, int position
),
124 cm_not_fixed_width (int arg
, int start
, int end
),
126 cm_sansserif (int arg
),
127 cm_sc (int arg
, int start_pos
, int end_pos
),
128 cm_slanted (int arg
),
129 cm_strong (int arg
, int start_pos
, int end_pos
),
131 cm_indicate_url (int arg
, int start
, int end
),
132 cm_var (int arg
, int start_pos
, int end_pos
),
135 /* Block environments. */
136 extern void cm_cartouche (void),
139 cm_smalldisplay (void),
141 cm_smallexample (void),
145 cm_smallformat (void),
149 cm_flushright (void),
153 /* Tables, lists, enumerations. */
154 extern void cm_table (void),
159 cm_multitable (void),
165 extern void cm_center (void),
169 cm_noindent_cmd (void);
171 /* Line and page breaks. */
172 extern void cm_asterisk (void),
176 /* Non breaking words. */
177 extern void cm_tie (int arg
),
180 /* Title page creation. */
181 extern void cm_titlepage (void),
183 cm_titlepage_cmds (void),
184 cm_titlefont (int arg
),
188 extern void cm_float (void),
189 cm_caption (int arg
),
190 cm_shortcaption (void),
191 cm_listoffloats (void);
194 extern void cm_kindex (void),
201 cm_defcodeindex (void),
203 cm_printindex (void);
206 extern void cm_set (void),
211 cm_value (int arg
, int start_pos
, int end_pos
);