Annotation of researchv10no/cmd/eqn/e.h, revision 1.1

1.1     ! root        1: #include <stdio.h>
        !             2: #include <stdlib.h>
        !             3: #include <string.h>
        !             4: 
        !             5: enum charclass {
        !             6:        OTHER, OLET, ILET, DIG, LPAR, RPAR, SLASH, PLUS, ILETF, ILETJ, VBAR,
        !             7:        NONE, LAST
        !             8: };
        !             9: extern int class[LAST][LAST];
        !            10: 
        !            11: #define        dprintf         if (dbg) printf
        !            12: #define        max(x,y)        (((x) >= (y)) ? (x) : (y))      /* beware of side effects */
        !            13: #define        min(x,y)        (((x) <= (y)) ? (x) : (y))
        !            14: 
        !            15: extern char    errbuf[200];
        !            16: extern char    *cmdname;
        !            17: #define        ERROR   sprintf(errbuf,
        !            18: #define        FATAL   ), error(1, errbuf)
        !            19: #define        WARNING ), error(0, errbuf)
        !            20: #define        SYNTAX  ), yyerror(errbuf)
        !            21: 
        !            22: #define        ROM     '1'
        !            23: #define        ITAL    '2'
        !            24: #define        BLD     '3'
        !            25: #define        BDIT    '4'
        !            26: 
        !            27: #define        DEFGAP  -999    /* default gap in piles */
        !            28: 
        !            29: extern int     dbg;
        !            30: extern int     ct;
        !            31: extern int     lp[];
        !            32: extern int     used[];         /* available registers */
        !            33: extern int     ps;             /* dflt init pt size */
        !            34: extern int     deltaps;        /* default change in ps */
        !            35: extern int     dps_set;        /* 1 => -p option used */
        !            36: extern int     gsize;          /* global size */
        !            37: extern int     ft;             /* default font */
        !            38: extern int     display;        /* 1 => inline, 0 => .EQ/.EN */
        !            39: extern int     synerr;         /* 1 if syntax error in this eqn */
        !            40: 
        !            41: extern char    *typesetter;    /* typesetter name for -T... */
        !            42: extern int     minsize;        /* min size it can print */
        !            43: extern int     ttype;          /* actual type of typesetter: */
        !            44: 
        !            45: #define        DEVCAT  1
        !            46: #define        DEV202  2
        !            47: #define        DEVAPS  3
        !            48: #define        DEVPOST 4
        !            49: 
        !            50: extern double  eht[];
        !            51: extern double  ebase[];
        !            52: extern int     lfont[];
        !            53: extern int     rfont[];
        !            54: extern int     lclass[];
        !            55: extern int     rclass[];
        !            56: extern int     yyval;
        !            57: extern int     yylval;
        !            58: extern int     eqnreg;
        !            59: extern double  eqnht;
        !            60: extern int     lefteq, righteq;
        !            61: extern int     markline;       /* 1 if this EQ/EN contains mark or lineup */
        !            62: 
        !            63: #define        TBLSIZE 100
        !            64: 
        !            65: typedef struct s_tbl {
        !            66:        char    *name;          /* e.g., "max" or "sum" */
        !            67:        char    *cval;          /* e.g., "\\f1max\\fP" */
        !            68:        int     ival;           /*    or SUM */
        !            69:        struct s_tbl *next;
        !            70: } tbl;
        !            71: 
        !            72: extern char    *spaceval;      /* use in place of normal \x (for pic) */
        !            73: 
        !            74: #define        String  01
        !            75: #define        Macro   02
        !            76: #define        File    04
        !            77: #define        Char    010
        !            78: #define        Free    040
        !            79: 
        !            80: typedef struct infile {
        !            81:        FILE    *fin;
        !            82:        char    *fname;
        !            83:        int     lineno;
        !            84: } Infile;
        !            85: 
        !            86: typedef struct {       /* input source */
        !            87:        int     type;   /* Macro, String, File */
        !            88:        char    *sp;    /* if String or Macro */
        !            89: } Src;
        !            90: 
        !            91: extern Src     src[], *srcp;   /* input source stack */
        !            92: 
        !            93: #define        MAXARGS 20
        !            94: typedef struct {       /* argument stack */
        !            95:        char    *argstk[MAXARGS];       /* pointers to args */
        !            96:        char    *argval;        /* points to space containing args */
        !            97: } Arg;
        !            98: 
        !            99: typedef struct {       /* font number and name */
        !           100:        int     ft;
        !           101:        char    name[10];
        !           102: } Font;
        !           103: 
        !           104: extern Font    ftstack[];
        !           105: extern Font    *ftp;
        !           106: 
        !           107: extern int     szstack[];
        !           108: extern int     nszstack;
        !           109: 
        !           110: extern Infile  infile[10];
        !           111: extern Infile  *curfile;
        !           112: 
        !           113: extern tbl     *lookup(tbl **tblp, char *name);
        !           114: extern void    install(tbl **tblp, char *name, char *cval, int ival);
        !           115: extern tbl     *keytbl[], *deftbl[], *restbl[], *ftunetbl[];
        !           116: 
        !           117: extern int     salloc(void);
        !           118: extern void    sfree(int);
        !           119: extern void    nrwid(int, int, int);
        !           120: extern char    *ABSPS(int);
        !           121: extern char    *DPS(int, int);
        !           122: extern int     EFFPS(int);
        !           123: extern double  EM(double, int);
        !           124: extern double  REL(double, int);
        !           125: extern char    *pad(int);
        !           126: extern void    getstr(char *, int);
        !           127: extern char    *strsave(char *);
        !           128: 
        !           129: extern int     input(void);
        !           130: extern int     unput(int);
        !           131: extern void    pbstr(char *);
        !           132: extern void    error(int, char *);
        !           133: extern void    yyerror(char *);
        !           134: 
        !           135: extern void    diacrit(int, int);
        !           136: extern void    eqnbox(int, int, int);
        !           137: extern void    setfont(char *);
        !           138: extern void    font(int, int);
        !           139: extern void    globfont(void);
        !           140: extern void    fatbox(int);
        !           141: extern void    fromto(int, int, int);
        !           142: extern void    funny(int);
        !           143: extern void    integral(int, int, int);
        !           144: extern void    setintegral(void);
        !           145: extern void    pushsrc(int, char *);
        !           146: extern void    popsrc(void);
        !           147: extern void    putout(int);
        !           148: extern void    text(int, char *);
        !           149: extern void subsup(int, int, int);
        !           150: extern void bshiftb(int, int, int);
        !           151: extern void shift2(int, int, int);
        !           152: extern void setsize(char *);
        !           153: extern void size(int, int);
        !           154: extern void globsize(void);
        !           155: extern void sqrt(int);
        !           156: extern void text(int, char *);
        !           157: extern void boverb(int, int);
        !           158: extern void lineup(int);
        !           159: extern void mark(int);
        !           160: extern void paren(int, int, int);
        !           161: extern void move(int, int, int);
        !           162: extern void pile(int);
        !           163: extern int startcol(int);
        !           164: extern void column(int, int);
        !           165: extern void matrix(int);

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.