Back to index

tetex-bin  3.0
xml.h
Go to the documentation of this file.
00001 /* xml.h -- xml output declarations.
00002    $Id: xml.h,v 1.24 2004/11/26 00:48:35 karl Exp $
00003 
00004    Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
00005 
00006    This program is free software; you can redistribute it and/or modify
00007    it under the terms of the GNU General Public License as published by
00008    the Free Software Foundation; either version 2, or (at your option)
00009    any later version.
00010 
00011    This program is distributed in the hope that it will be useful,
00012    but WITHOUT ANY WARRANTY; without even the implied warranty of
00013    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014    GNU General Public License for more details.
00015 
00016    You should have received a copy of the GNU General Public License
00017    along with this program; if not, write to the Free Software
00018    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00019 
00020    Originally written by Philippe Martin <feloy@free.fr>.  */
00021 
00022 #ifndef XML_H
00023 #define XML_H
00024 
00025 /* Options. */
00026 
00027 /* Separate index entries into divisions for each letters. */
00028 extern int xml_index_divisions;
00029 extern int xml_sort_index;
00030 
00031 extern int xml_no_indent;
00032 
00033 extern int xml_node_open;
00034 extern int xml_no_para;
00035 extern char *xml_node_id;
00036 extern int xml_last_section_output_position;
00037 
00038 extern int xml_in_xref_token;
00039 extern int xml_in_bookinfo;
00040 extern int xml_in_book_title;
00041 extern int xml_in_abstract;
00042 
00043 /* Non-zero if we are handling an element that can appear between
00044    @item and @itemx, @deffn and @deffnx.  */
00045 extern int xml_dont_touch_items_defs;
00046 
00047 /* Non-zero if whitespace in the source document should be kept as-is.  */
00048 extern int xml_keep_space;
00049 
00050 enum xml_element
00051 {
00052   TEXINFO=0, SETFILENAME, TITLEFONT, SETTITLE, DOCUMENTDESCRIPTION,
00053   /* Node */
00054   NODE, NODENEXT, NODEPREV, NODEUP,
00055   /* Structuring */
00056   CHAPTER, SECTION, SUBSECTION, SUBSUBSECTION,
00057   TOP, UNNUMBERED, UNNUMBEREDSEC, UNNUMBEREDSUBSEC,
00058     UNNUMBEREDSUBSUBSEC,  
00059   APPENDIX, APPENDIXSEC, APPENDIXSUBSEC, APPENDIXSUBSUBSEC, 
00060   MAJORHEADING, CHAPHEADING, HEADING, SUBHEADING, SUBSUBHEADING,
00061   /* Titlepage */
00062   TITLEPAGE, AUTHOR, BOOKTITLE, BOOKSUBTITLE,
00063   /* Menu */
00064   MENU, DETAILMENU, MENUENTRY, MENUTITLE, MENUCOMMENT, MENUNODE,
00065   NODENAME,
00066   /* -- */
00067   ACRONYM, ACRONYMWORD, ACRONYMDESC,
00068   ABBREV, ABBREVWORD, ABBREVDESC,
00069   TT, CODE, COMMAND_TAG, ENV, FILE_TAG, OPTION, SAMP, KBD, URL, KEY,
00070   VAR, SC, DFN, EMPH, STRONG, CITE, NOTFIXEDWIDTH, I, B, R, SLANTED, SANSSERIF,
00071   EXDENT,
00072   TITLE, 
00073   IFINFO, 
00074   SP, CENTER,
00075   DIRCATEGORY,
00076   QUOTATION, EXAMPLE, SMALLEXAMPLE, LISP, SMALLLISP, CARTOUCHE,
00077     COPYING, FORMAT, SMALLFORMAT, DISPLAY, SMALLDISPLAY, VERBATIM,
00078   FOOTNOTE, LINEANNOTATION,
00079   TIP, NOTE, IMPORTANT, WARNING, CAUTION,
00080   ITEMIZE, ITEMFUNCTION, ITEM, ENUMERATE, TABLE, TABLEITEM, TABLETERM,
00081   INDEXTERM, 
00082   MATH, DIMENSION,
00083   XREF, XREFNODENAME, XREFINFONAME, XREFPRINTEDDESC, XREFINFOFILE,
00084     XREFPRINTEDNAME, 
00085   INFOREF, INFOREFNODENAME, INFOREFREFNAME, INFOREFINFONAME, 
00086   UREF, UREFURL, UREFDESC, UREFREPLACEMENT,
00087   EMAIL, EMAILADDRESS, EMAILNAME,
00088   GROUP, FLOAT, FLOATTYPE, FLOATPOS, CAPTION, SHORTCAPTION,
00089   FLOATTABLE, FLOATFIGURE, FLOATEXAMPLE, FLOATCARTOUCHE,
00090   PRINTINDEX, LISTOFFLOATS,
00091   ANCHOR, 
00092   IMAGE, INLINEIMAGE, IMAGEALTTEXT,
00093   PRIMARY, SECONDARY, INFORMALFIGURE, MEDIAOBJECT, IMAGEOBJECT,
00094     IMAGEDATA, TEXTOBJECT,  
00095   INDEXENTRY, PRIMARYIE, SECONDARYIE, INDEXDIV,
00096   MULTITABLE, TGROUP, COLSPEC, THEAD, TBODY, ENTRY, ROW,
00097   BOOKINFO, ABSTRACT, REPLACEABLE, ENVAR, COMMENT, FUNCTION, LEGALNOTICE,
00098   CONTENTS, SHORTCONTENTS, DOCUMENTLANGUAGE,
00099   SETVALUE, CLEARVALUE,
00100   DEFINITION, DEFINITIONTERM, DEFINITIONITEM,
00101   DEFCATEGORY, DEFFUNCTION, DEFVARIABLE, DEFPARAM, DEFDELIMITER, DEFTYPE,
00102   DEFPARAMTYPE, DEFDATATYPE, DEFCLASS, DEFCLASSVAR, DEFOPERATION,
00103   PARA
00104 };
00105 
00106 extern void xml_add_char (int character),
00107   xml_asterisk (void),
00108   xml_insert_element (int elt, int arg),
00109   xml_insert_entity (char *entity_name),
00110   xml_insert_footnote (char *note),
00111   xml_insert_quotation (char *type, int arg),
00112   xml_insert_indexentry (char *entry, char *node),
00113   xml_insert_indexterm (char *indexterm, char *index),
00114   xml_insert_docbook_image (char *name_arg),
00115   xml_synindex (char *from, char *to),
00116   xml_start_para (void),
00117   xml_end_para (void),
00118   xml_begin_document (char *output_filename),
00119   xml_end_document (void),
00120   xml_start_menu_entry (char *tem),
00121   xml_end_menu (void),
00122   xml_end_current_element (void),
00123   xml_open_section (int level, char *name),
00124   xml_close_sections (int level),
00125   xml_begin_node (void),
00126   xml_begin_index (void),
00127   xml_end_index (void),
00128   xml_begin_multitable (int ncolumns, int *column_widths),
00129   xml_end_multitable (void),
00130   xml_end_multitable_row (int first_row),
00131   xml_end_multitable_column (void),
00132   xml_begin_table (int type, char *item_function),
00133   xml_end_table (int type),
00134   xml_begin_item (void),
00135   xml_begin_table_item (void),
00136   xml_continue_table_item (void),
00137   xml_begin_enumerate (char *enum_arg),
00138   xml_end_enumerate (void),
00139   xml_begin_docbook_float (int elt);
00140 
00141 extern char *xml_id (char *id);
00142 
00143 extern void xml_begin_definition (void),
00144   xml_end_definition (void),
00145   xml_process_defun_args (char **defun_args, int auto_var_p),
00146   xml_begin_def_term (int base_type, const char *category,
00147       char *defined_name, char *type_name, char *type_name2),
00148   xml_end_def_term (void);
00149 
00150 extern int xml_current_stack_index (void),
00151   xml_element (char *name);
00152 
00153 #if defined (VA_FPRINTF) && __STDC__
00154 void xml_insert_element_with_attribute (int elt, int arg, char *format, ...);
00155 #else
00156 void xml_insert_element_with_attribute ();
00157 #endif
00158 
00159 #endif /* XML_H */