1 /* sectioning.h -- all related stuff @chapter, @section... @contents
2 $Id: sectioning.h,v 1.8 2007/07/01 21:20:33 karl Exp $
4 Copyright (C) 1999, 2003, 2007 Free Software Foundation, Inc.
6 This program 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 3 of the License, or
9 (at your option) any later version.
11 This program 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.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 Written by Karl Heinz Marbaise <kama@hippo.fido.de>. */
27 extern void cm_chapter (void),
33 extern void cm_section (void),
34 cm_unnumberedsec (void),
35 cm_appendixsec (void);
38 extern void cm_subsection (void),
39 cm_unnumberedsubsec (void),
40 cm_appendixsubsec (void);
43 extern void cm_subsubsection (void),
44 cm_unnumberedsubsubsec (void),
45 cm_appendixsubsubsec (void);
48 extern void cm_heading (void),
49 cm_chapheading (void),
51 cm_subsubheading (void),
52 cm_majorheading (void);
54 extern void cm_raisesections (void),
55 cm_lowersections (void),
56 cm_ideprecated (int arg, int start, int end);
59 sectioning_underscore (char *cmd),
60 insert_and_underscore (int level, char *cmd);
62 /* needed in node.c */
63 extern int set_top_section_level (int level);
65 extern void sectioning_html (int level, char *cmd);
66 extern int what_section (char *text, char **secname);
67 extern char *current_chapter_number (void),
68 *current_sectioning_number (void),
69 *current_sectioning_name (void);
71 /* The argument of @settitle, used for HTML. */
75 /* Here is a structure which associates sectioning commands with
76 an integer that reflects the depth of the current section. */
80 int level; /* I can't replace the levels with defines
81 because it is changed during run */
82 int num; /* ENUM_SECT_NO means no enumeration...
83 ENUM_SECT_YES means enumerated version
84 ENUM_SECT_APP appendix (Character enumerated
86 int toc; /* TOC_NO means do not enter in toc;
87 TOC_YES means enter it in toc */
90 extern section_alist_type section_alist[];
92 /* enumerate sections */
93 #define ENUM_SECT_NO 0
94 #define ENUM_SECT_YES 1
95 #define ENUM_SECT_APP 2
97 /* make entries into toc no/yes */
102 #endif /* not SECTIONING_H */