=================================================================== RCS file: /cvs/texi2mdoc/extern.h,v retrieving revision 1.1 retrieving revision 1.3 diff -u -p -r1.1 -r1.3 --- texi2mdoc/extern.h 2015/02/20 09:58:50 1.1 +++ texi2mdoc/extern.h 2015/02/21 17:00:33 1.3 @@ -1,4 +1,4 @@ -/* $Id: extern.h,v 1.1 2015/02/20 09:58:50 kristaps Exp $ */ +/* $Id: extern.h,v 1.3 2015/02/21 17:00:33 kristaps Exp $ */ /* * Copyright (c) 2015 Kristaps Dzonsons * @@ -31,6 +31,7 @@ enum texicmd { TEXICMD_APPENDIXSEC, TEXICMD_APPENDIXSUBSEC, TEXICMD_APPENDIXSUBSUBSEC, + TEXICMD_ASIS, TEXICMD_ASTERISK, TEXICMD_AT, TEXICMD_AUTHOR, @@ -53,8 +54,10 @@ enum texicmd { TEXICMD_CONTENTS, TEXICMD_COPYING, TEXICMD_COPYRIGHT, + TEXICMD_DEFCODEINDEX, TEXICMD_DEFFN, TEXICMD_DEFFNX, + TEXICMD_DEFINDEX, TEXICMD_DEFMAC, TEXICMD_DEFMACX, TEXICMD_DEFTP, @@ -86,6 +89,7 @@ enum texicmd { TEXICMD_ENV, TEXICMD_ERROR, TEXICMD_EXAMPLE, + TEXICMD_EXDENT, TEXICMD_EXPANSION, TEXICMD_FILE, TEXICMD_FINALOUT, @@ -97,6 +101,7 @@ enum texicmd { TEXICMD_HEADING, TEXICMD_HEADINGS, TEXICMD_HEADITEM, + TEXICMD_HTML, TEXICMD_HYPHEN, TEXICMD_I, TEXICMD_IFCLEAR, @@ -117,6 +122,7 @@ enum texicmd { TEXICMD_IMAGE, TEXICMD_INCLUDE, TEXICMD_INDENTBLOCK, + TEXICMD_INDEX, TEXICMD_INSERTCOPYING, TEXICMD_ITEM, TEXICMD_ITEMIZE, @@ -128,6 +134,7 @@ enum texicmd { TEXICMD_LOWERSECTIONS, TEXICMD_MATH, TEXICMD_MENU, + TEXICMD_MINUS, TEXICMD_MULTITABLE, TEXICMD_NEED, TEXICMD_NEWLINE, @@ -139,6 +146,7 @@ enum texicmd { TEXICMD_QUOTATION, TEXICMD_PAGE, TEXICMD_PARINDENT, + TEXICMD_PERIOD, TEXICMD_PRINTINDEX, TEXICMD_R, TEXICMD_RAISESECTIONS, @@ -152,6 +160,7 @@ enum texicmd { TEXICMD_SETCHAPNEWPAGE, TEXICMD_SETFILENAME, TEXICMD_SETTITLE, + TEXICMD_SHORTCONTENTS, TEXICMD_SLANTED, TEXICMD_SP, TEXICMD_SPACE, @@ -167,6 +176,8 @@ enum texicmd { TEXICMD_SUBSECTION, TEXICMD_SUBSUBSECTION, TEXICMD_SUBTITLE, + TEXICMD_SUMMARYCONTENTS, + TEXICMD_SYNINDEX, TEXICMD_SYNCODEINDEX, TEXICMD_T, TEXICMD_TAB, @@ -175,6 +186,7 @@ enum texicmd { TEXICMD_TEX, TEXICMD_TEXSYM, TEXICMD_TILDE, + TEXICMD_TINDEX, TEXICMD_TITLE, TEXICMD_TITLEFONT, TEXICMD_TITLEPAGE, @@ -188,6 +200,7 @@ enum texicmd { TEXICMD_URL, TEXICMD_VALUE, TEXICMD_VAR, + TEXICMD_VERBATIM, TEXICMD_VERBATIMINCLUDE, TEXICMD_VINDEX, TEXICMD_VSKIP, @@ -251,8 +264,10 @@ struct texi { char *title; /* title of document */ char *subtitle; /* subtitle of document */ int secoffs; /* see sectioner() */ - struct texivalue *vals; - size_t valsz; + char **indexs; /* @defindex indices */ + size_t indexsz; /* entries in indexs */ + struct texivalue *vals; /* @value entries */ + size_t valsz; /* entries in vals */ /* * The following control what we output to the screen. * The complexity is required to accomodate for mdoc(7). @@ -285,11 +300,13 @@ void parseeoln(struct texi *, const char *, size_t, si void parsesingle(struct texi *, const char *, size_t, size_t *); void parseto(struct texi *, const char *, size_t, size_t *, const char *); -void texiabort(struct texi *, const char *); +void texiabort(struct texi *, const char *) + __attribute__((noreturn)); enum texicmd texicmd(struct texi *, const char *, size_t, size_t, size_t *); void texierr(struct texi *, const char *, ...) - __attribute__((format(printf, 2, 3))); + __attribute__((format(printf, 2, 3))) + __attribute__((noreturn)); void texiexit(struct texi *p); void texifilepop(struct texi *); void teximacro(struct texi *, const char *); @@ -301,6 +318,13 @@ void texiputchars(struct texi *, const char *); void texivspace(struct texi *); void texiwarn(const struct texi *, const char *, ...) __attribute__((format(printf, 2, 3))); + +void valueadd(struct texi *, char *, char *); +const char * + valueblookup(struct texi *, const char *, size_t, size_t *); +void valuelclear(struct texi *, const char *, size_t, size_t *); +const char * + valuellookup(struct texi *, const char *, size_t, size_t *); extern const struct texitok *const texitoks;