Annotation of 3BSD/cmd/troff/ni.c, revision 1.1.1.1

1.1       root        1: #include "tdef.h"
                      2: char obuf[OBUFSZ];
                      3: char *obufp = obuf;
                      4: int r[NN] = {
                      5:        PAIR('%',0),
                      6:        PAIR('n','l'),
                      7:        PAIR('y','r'),
                      8:        PAIR('h','p'),
                      9:        PAIR('c','t'),
                     10:        PAIR('d','n'),
                     11:        PAIR('m','o'),
                     12:        PAIR('d','y'),
                     13:        PAIR('d','w'),
                     14:        PAIR('l','n'),
                     15:        PAIR('d','l'),
                     16:        PAIR('s','t'),
                     17:        PAIR('s','b'),
                     18:        PAIR('c','.')};
                     19: int pto = 10000;
                     20: int pfrom = 1;
                     21: int print = 1;
                     22: char nextf[NS] = "/usr/lib/tmac/tmac.xxxxx";
                     23: int nfi = 19;
                     24: #ifdef NROFF
                     25: char termtab[NS] = "/usr/lib/term/tab37";
                     26: int tti = 17;
                     27: #endif
                     28: #ifndef NROFF
                     29: int oldbits = -1;
                     30: #endif
                     31: int init = 1;
                     32: int fc = IMP;
                     33: int eschar = '\\';
                     34: int pl = 11*INCH;
                     35: int po = PO;
                     36: int dfact = 1;
                     37: int dfactd = 1;
                     38: int res = 1;
                     39: int smnt = 4;
                     40: int ascii = ASCII;
                     41: int ptid = PTID;
                     42: char ptname[] = "/dev/cat";
                     43: int lg = LG;
                     44: int pnlist[NPN] = {-1};
                     45: int *pnp = pnlist;
                     46: int npn = 1;
                     47: int npnflg = 1;
                     48: int xflg = 1;
                     49: int dpn = -1;
                     50: int totout = 1;
                     51: int ulfont = 1;
                     52: int ulbit = 1<<9;
                     53: int tabch = TAB;
                     54: int ldrch = LEADER;
                     55: int xxx;
                     56: extern caseds(), caseas(), casesp(), caseft(), caseps(), casevs(),
                     57: casenr(), caseif(), casepo(), casetl(), casetm(), casebp(), casech(),
                     58: casepn(), tbreak(), caseti(), casene(), casenf(), casece(), casefi(),
                     59: casein(), caseli(), casell(), casens(), casemk(), casert(), caseam(),
                     60: casede(), casedi(), caseda(), casewh(), casedt(), caseit(), caserm(),
                     61: casern(), casead(), casers(), casena(), casepl(), caseta(), casetr(),
                     62: caseul(), caselt(), casenx(), caseso(), caseig(), casetc(), casefc(),
                     63: caseec(), caseeo(), caselc(), caseev(), caserd(), caseab(), casefl(),
                     64: done(), casess(), casefp(), casecs(), casebd(), caselg(), casehc(),
                     65: casehy(), casenh(), casenm(), casenn(), casesv(), caseos(), casels(),
                     66: casecc(), casec2(), caseem(), caseaf(), casehw(), casemc(), casepm(),
                     67: casecu(), casepi(), caserr(), caseuf(), caseie(), caseel(), casepc(),
                     68: caseht();
                     69: #ifndef NROFF
                     70: extern casefz();
                     71: #endif
                     72: extern casecf();
                     73: struct contab {
                     74:        int rq;
                     75: /*
                     76:        union {
                     77:  */
                     78:                int (*f)();
                     79: /*
                     80:                unsigned mx;
                     81:        }x;
                     82:  */
                     83: }contab[NM]= {
                     84:        PAIR('d','s'),caseds,
                     85:        PAIR('a','s'),caseas,
                     86:        PAIR('s','p'),casesp,
                     87:        PAIR('f','t'),caseft,
                     88:        PAIR('p','s'),caseps,
                     89:        PAIR('v','s'),casevs,
                     90:        PAIR('n','r'),casenr,
                     91:        PAIR('i','f'),caseif,
                     92:        PAIR('i','e'),caseie,
                     93:        PAIR('e','l'),caseel,
                     94:        PAIR('p','o'),casepo,
                     95:        PAIR('t','l'),casetl,
                     96:        PAIR('t','m'),casetm,
                     97:        PAIR('b','p'),casebp,
                     98:        PAIR('c','h'),casech,
                     99:        PAIR('p','n'),casepn,
                    100:        PAIR('b','r'),tbreak,
                    101:        PAIR('t','i'),caseti,
                    102:        PAIR('n','e'),casene,
                    103:        PAIR('n','f'),casenf,
                    104:        PAIR('c','e'),casece,
                    105:        PAIR('f','i'),casefi,
                    106:        PAIR('i','n'),casein,
                    107:        PAIR('l','i'),caseli,
                    108:        PAIR('l','l'),casell,
                    109:        PAIR('n','s'),casens,
                    110:        PAIR('m','k'),casemk,
                    111:        PAIR('r','t'),casert,
                    112:        PAIR('a','m'),caseam,
                    113:        PAIR('d','e'),casede,
                    114:        PAIR('d','i'),casedi,
                    115:        PAIR('d','a'),caseda,
                    116:        PAIR('w','h'),casewh,
                    117:        PAIR('d','t'),casedt,
                    118:        PAIR('i','t'),caseit,
                    119:        PAIR('r','m'),caserm,
                    120:        PAIR('r','r'),caserr,
                    121:        PAIR('r','n'),casern,
                    122:        PAIR('a','d'),casead,
                    123:        PAIR('r','s'),casers,
                    124:        PAIR('n','a'),casena,
                    125:        PAIR('p','l'),casepl,
                    126:        PAIR('t','a'),caseta,
                    127:        PAIR('t','r'),casetr,
                    128:        PAIR('u','l'),caseul,
                    129:        PAIR('c','u'),casecu,
                    130:        PAIR('l','t'),caselt,
                    131:        PAIR('n','x'),casenx,
                    132:        PAIR('s','o'),caseso,
                    133:        PAIR('i','g'),caseig,
                    134:        PAIR('t','c'),casetc,
                    135:        PAIR('f','c'),casefc,
                    136:        PAIR('e','c'),caseec,
                    137:        PAIR('e','o'),caseeo,
                    138:        PAIR('l','c'),caselc,
                    139:        PAIR('e','v'),caseev,
                    140:        PAIR('r','d'),caserd,
                    141:        PAIR('a','b'),caseab,
                    142:        PAIR('f','l'),casefl,
                    143:        PAIR('e','x'),done,
                    144:        PAIR('s','s'),casess,
                    145:        PAIR('f','p'),casefp,
                    146:        PAIR('c','s'),casecs,
                    147:        PAIR('b','d'),casebd,
                    148:        PAIR('l','g'),caselg,
                    149:        PAIR('h','c'),casehc,
                    150:        PAIR('h','y'),casehy,
                    151:        PAIR('n','h'),casenh,
                    152:        PAIR('n','m'),casenm,
                    153:        PAIR('n','n'),casenn,
                    154:        PAIR('s','v'),casesv,
                    155:        PAIR('o','s'),caseos,
                    156:        PAIR('l','s'),casels,
                    157:        PAIR('c','c'),casecc,
                    158:        PAIR('c','2'),casec2,
                    159:        PAIR('e','m'),caseem,
                    160:        PAIR('a','f'),caseaf,
                    161:        PAIR('h','w'),casehw,
                    162:        PAIR('m','c'),casemc,
                    163:        PAIR('p','m'),casepm,
                    164: #ifdef NROFF
                    165:        PAIR('p','i'),casepi,
                    166: #endif
                    167:        PAIR('u','f'),caseuf,
                    168:        PAIR('p','c'),casepc,
                    169:        PAIR('h','t'),caseht,
                    170: #ifndef NROFF
                    171:        PAIR('f','z'),casefz,
                    172: #endif
                    173:        PAIR('c', 'f'),casecf,
                    174: };
                    175: 
                    176: /*
                    177: troff environment block
                    178: */
                    179: 
                    180: int block = 0;
                    181: int ics = ICS;
                    182: int ic = 0;
                    183: int icf = 0;
                    184: int chbits = 0;
                    185: int spbits = 0;
                    186: int nmbits = 0;
                    187: int apts = PS;
                    188: int apts1 = PS;
                    189: int pts = PS;
                    190: int pts1 = PS;
                    191: int font = FT;
                    192: int font1 = FT;
                    193: int sps = SPS;
                    194: int spacesz = SS;
                    195: int lss = VS;
                    196: int lss1 = VS;
                    197: int ls = 1;
                    198: int ls1 = 1;
                    199: int ll = LL;
                    200: int ll1 = LL;
                    201: int lt = LL;
                    202: int lt1 = LL;
                    203: int ad = 1;
                    204: int nms = 1;
                    205: int ndf = 1;
                    206: int fi = 1;
                    207: int cc = '.';
                    208: int c2 = '\'';
                    209: int ohc = OHC;
                    210: int tdelim = IMP;
                    211: int hyf = 1;
                    212: int hyoff = 0;
                    213: int un1 = -1;
                    214: int tabc = 0;
                    215: int dotc = '.';
                    216: int adsp = 0;
                    217: int adrem = 0;
                    218: int lastl = 0;
                    219: int nel = 0;
                    220: int admod = 0;
                    221: int *wordp = 0;
                    222: int spflg = 0;
                    223: int *linep = 0;
                    224: int *wdend = 0;
                    225: int *wdstart = 0;
                    226: int wne = 0;
                    227: int ne = 0;
                    228: int nc = 0;
                    229: int nb = 0;
                    230: int lnmod = 0;
                    231: int nwd = 0;
                    232: int nn = 0;
                    233: int ni = 0;
                    234: int ul = 0;
                    235: int cu = 0;
                    236: int ce = 0;
                    237: int in = 0;
                    238: int in1 = 0;
                    239: int un = 0;
                    240: int wch = 0;
                    241: int pendt = 0;
                    242: int *pendw = 0;
                    243: int pendnf = 0;
                    244: int spread = 0;
                    245: int it = 0;
                    246: int itmac = 0;
                    247: int lnsize = LNSIZE;
                    248: int *hyptr[NHYP] = {0};
                    249: int tabtab[NTAB] = {DTAB,DTAB*2,DTAB*3,DTAB*4,DTAB*5,DTAB*6,DTAB*7,DTAB*8,
                    250:        DTAB*9,DTAB*10,DTAB*11,DTAB*12,DTAB*13,DTAB*14,DTAB*15,0};
                    251: int line[LNSIZE] = {0};
                    252: int word[WDSIZE] = {0};
                    253: int blockxxx[EVS-68-NHYP-NTAB-WDSIZE-LNSIZE] = {0};
                    254: /*spare 5 words*/
                    255: int oline[LNSIZE+1];

unix.superglobalmegacorp.com

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