2000-01-17 10:39:58 +00:00
|
|
|
/* sectioning.h -- all related stuff @chapter, @section... @contents
|
2005-05-23 10:46:22 +00:00
|
|
|
$Id: sectioning.h,v 1.5 2004/04/11 17:56:47 karl Exp $
|
2000-01-17 10:39:58 +00:00
|
|
|
|
2005-05-23 10:46:22 +00:00
|
|
|
Copyright (C) 1999, 2003 Free Software Foundation, Inc.
|
2000-01-17 10:39:58 +00:00
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation; either version 2, or (at your option)
|
|
|
|
any later version.
|
|
|
|
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program; if not, write to the Free Software
|
|
|
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
|
|
|
|
Written by Karl Heinz Marbaise <kama@hippo.fido.de>. */
|
|
|
|
|
|
|
|
#ifndef SECTIONING_H
|
|
|
|
#define SECTIONING_H
|
|
|
|
|
|
|
|
/* Sectioning. */
|
|
|
|
|
2005-05-23 10:46:22 +00:00
|
|
|
/* Level 4. */
|
|
|
|
extern void cm_chapter (void),
|
|
|
|
cm_unnumbered (void),
|
|
|
|
cm_appendix (void),
|
|
|
|
cm_top (void);
|
|
|
|
|
|
|
|
/* Level 3. */
|
|
|
|
extern void cm_section (void),
|
|
|
|
cm_unnumberedsec (void),
|
|
|
|
cm_appendixsec (void);
|
|
|
|
|
|
|
|
/* Level 2. */
|
|
|
|
extern void cm_subsection (void),
|
|
|
|
cm_unnumberedsubsec (void),
|
|
|
|
cm_appendixsubsec (void);
|
|
|
|
|
|
|
|
/* Level 1. */
|
|
|
|
extern void cm_subsubsection (void),
|
|
|
|
cm_unnumberedsubsubsec (void),
|
|
|
|
cm_appendixsubsubsec (void);
|
|
|
|
|
|
|
|
/* Headings. */
|
|
|
|
extern void cm_heading (void),
|
|
|
|
cm_chapheading (void),
|
|
|
|
cm_subheading (void),
|
|
|
|
cm_subsubheading (void),
|
|
|
|
cm_majorheading (void);
|
|
|
|
|
|
|
|
extern void cm_raisesections (void),
|
|
|
|
cm_lowersections (void),
|
|
|
|
cm_ideprecated (int arg, int start, int end);
|
2000-01-17 10:39:58 +00:00
|
|
|
|
|
|
|
extern void
|
2005-05-23 10:46:22 +00:00
|
|
|
sectioning_underscore (char *cmd),
|
|
|
|
insert_and_underscore (int level, char *cmd);
|
2000-01-17 10:39:58 +00:00
|
|
|
|
2005-05-23 10:46:22 +00:00
|
|
|
/* needed in node.c */
|
|
|
|
extern int set_top_section_level (int level);
|
2000-01-17 10:39:58 +00:00
|
|
|
|
2005-05-23 10:46:22 +00:00
|
|
|
extern void sectioning_html (int level, char *cmd);
|
|
|
|
extern int what_section (char *text, char **secname);
|
|
|
|
extern char *current_chapter_number (void),
|
|
|
|
*current_sectioning_number (void),
|
|
|
|
*current_sectioning_name (void);
|
2000-01-17 10:39:58 +00:00
|
|
|
|
|
|
|
/* The argument of @settitle, used for HTML. */
|
|
|
|
extern char *title;
|
|
|
|
|
|
|
|
|
|
|
|
/* Here is a structure which associates sectioning commands with
|
|
|
|
an integer that reflects the depth of the current section. */
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
char *name;
|
|
|
|
int level; /* I can't replace the levels with defines
|
|
|
|
because it is changed during run */
|
|
|
|
int num; /* ENUM_SECT_NO means no enumeration...
|
|
|
|
ENUM_SECT_YES means enumerated version
|
|
|
|
ENUM_SECT_APP appendix (Character enumerated
|
|
|
|
at first position */
|
|
|
|
int toc; /* TOC_NO means do not enter in toc;
|
|
|
|
TOC_YES means enter it in toc */
|
|
|
|
} section_alist_type;
|
|
|
|
|
|
|
|
extern section_alist_type section_alist[];
|
|
|
|
|
|
|
|
/* enumerate sections */
|
|
|
|
#define ENUM_SECT_NO 0
|
|
|
|
#define ENUM_SECT_YES 1
|
|
|
|
#define ENUM_SECT_APP 2
|
|
|
|
|
|
|
|
/* make entries into toc no/yes */
|
|
|
|
#define TOC_NO 0
|
|
|
|
#define TOC_YES 1
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* not SECTIONING_H */
|