|
|
1.1 root 1: /*************************************************************************
2: * This is 'tabepson.c' for an Epson FX80. Default spacing is elite. *
3: * This represents a combination and very slight modification of two *
4: * nroff driving tables. Specifically : *
5: * *
6: * tablpr.c by UCB Computing Center (the approximation of greek) *
7: * *
8: * tabfx80p.c by [email protected] (Epson print mode switching) *
9: * replaces big curly bracket parts with the following: *
10: * *
11: * PRINT MODE: CHARACTER SEQUENCE *
12: * FX80 set Double Strike \(lt *
13: * FX80 cancels D.S. \(lb *
14: * FX80 set Condensed \(rt *
15: * FX80 cancels Condensed \(rb *
16: * FX80 set Pica size \(lk *
17: * FX80 set Elite size \(rk *
18: * FX80 set Proportional \(bv *
19: * FX80 set Expanded Mode \(lf *
20: * FX80 cancel Expanded Mode \(rf *
21: * FX80 underline on \(lc *
22: * FX80 underline off \(rc *
23: * *
24: * --> J. Michael Cherry, 1/18/85 molbio@ucblapis or *
25: * ucbvax!molbio!mike *
26: * *
27: *************************************************************************/
28:
29: #define INCH 240
30:
31: struct {
32: int bset; /* terminal driver set */
33: int breset; /* terminal driver reset */
34: int Hor; /* horizontal resolution */
35: int Vert; /* vetical resolution */
36: int Newline; /* length on one line feed */
37: int Char; /* character size increment */
38: int Em; /* em size */
39: int Halfline; /* length of half line feed */
40: int Adj; /* white size increment */
41: char *twinit; /* initialize string to printer */
42: char *twrest; /* reset string to printer */
43: char *twnl; /* newline string */
44: char *hlr; /* half-line-feed-reverse */
45: char *hlf; /* half-line-feed-forward */
46: char *flr; /* full-line-feed-reverse */
47: char *bdon; /* bold-on string */
48: char *bdoff; /* bold-off string */
49: char *ploton; /* plot on string */
50: char *plotoff; /* plot off string */
51: char *up; /* these strings move as */
52: char *down; /* indicated in plot mode */
53: char *right; /* in best available */
54: char *left; /* resolution */
55: char *codetab[256-32]; /* see the table */
56: int zzz;
57: } t = {
58: /*bset*/ 0,
59: /*breset*/ 0,
60: /*Hor*/ INCH/120, /* must be consisten with plot increments */
61: /*Vert*/ INCH/48, /* ditto */
62: /*Newline*/ INCH/6,
63: /*Char*/ INCH/12, /* the character unit for the code table */
64: /*Em*/ INCH/12, /* the nominal space size */
65: /*Halfline*/ INCH/12,
66: /*Adj*/ INCH/12, /* the white caused by a single plot move */
67: /*twinit*/ "\033M", /* invoke elite */
68: /*twrest*/ "\033@", /* reset printer to deflauts */
69: /*twnl*/ "\n", /* newline code */
70: /*hlr*/ "\033j\022",
71: /*hlf*/ "\033J\022", /* forward feed */
72: /*flr*/ "\033j\044",
73: /*bdon*/ "\033G", /* Alternate chars. '\fB' to invoke */
74: /*bdoff*/ "\033H", /* Standard chars. '\fP' to invoke */
75: /*ploton*/ "",
76: /*plotoff*/ "",
77: /*up*/ "",
78: /*down*/ "",
79: /*right*/ "",
80: /*left*/ "",
81:
82: "\001 ", /*space*/
83: "\001!", /*!*/
84: "\001\"", /*"*/
85: "\001#", /*#*/
86: "\001$", /*$*/
87: "\001%", /*%*/
88: "\001&", /*&*/
89: "\001'", /*' close*/
90: "\001(", /*(*/
91: "\001)", /*)*/
92: "\001*", /***/
93: "\001+", /*+*/
94: "\001,", /*,*/
95: "\001-", /*- hyphen*/
96: "\001.", /*.*/
97: "\001/", /*/*/
98: "\2010", /*0*/
99: "\2011", /*1*/
100: "\2012", /*2*/
101: "\2013", /*3*/
102: "\2014", /*4*/
103: "\2015", /*5*/
104: "\2016", /*6*/
105: "\2017", /*7*/
106: "\2018", /*8*/
107: "\2019", /*9*/
108: "\001:", /*:*/
109: "\001;", /*;*/
110: "\001<", /*<*/
111: "\001=", /*=*/
112: "\001>", /*>*/
113: "\001?", /*?*/
114: "\001@", /*@*/
115: "\201A", /*A*/
116: "\201B", /*B*/
117: "\201C", /*C*/
118: "\201D", /*D*/
119: "\201E", /*E*/
120: "\201F", /*F*/
121: "\201G", /*G*/
122: "\201H", /*H*/
123: "\201I", /*I*/
124: "\201J", /*J*/
125: "\201K", /*K*/
126: "\201L", /*L*/
127: "\201M", /*M*/
128: "\201N", /*N*/
129: "\201O", /*O*/
130: "\201P", /*P*/
131: "\201Q", /*Q*/
132: "\201R", /*R*/
133: "\201S", /*S*/
134: "\201T", /*T*/
135: "\201U", /*U*/
136: "\201V", /*V*/
137: "\201W", /*W*/
138: "\201X", /*X*/
139: "\201Y", /*Y*/
140: "\201Z", /*Z*/
141: "\001[", /*[*/
142: "\001\\", /*\*/
143: "\001]", /*]*/
144: "\001^", /*^*/
145: "\001_", /*_ dash*/
146: "\001`", /*` open*/
147: "\201a", /*a*/
148: "\201b", /*b*/
149: "\201c", /*c*/
150: "\201d", /*d*/
151: "\201e", /*e*/
152: "\201f", /*f*/
153: "\201g", /*g*/
154: "\201h", /*h*/
155: "\201i", /*i*/
156: "\201j", /*j*/
157: "\201k", /*k*/
158: "\201l", /*l*/
159: "\201m", /*m*/
160: "\201n", /*n*/
161: "\201o", /*o*/
162: "\201p", /*p*/
163: "\201q", /*q*/
164: "\201r", /*r*/
165: "\201s", /*s*/
166: "\201t", /*t*/
167: "\201u", /*u*/
168: "\201v", /*v*/
169: "\201w", /*w*/
170: "\201x", /*x*/
171: "\201y", /*y*/
172: "\201z", /*z*/
173: "\001{", /*{*/
174: "\001|", /*|*/
175: "\001}", /*}*/
176: "\001~", /*~*/
177: "\001", /* narrow sp */
178: "\001-", /*hyphen*/
179: "\001\033j\003.\033J\003", /*bullet*/
180: "\002\[]", /*square*/
181: "\001-", /*3/4 em*/
182: "\001_", /*rule*/
183: "\0031/4", /*1/4*/
184: "\0031/2", /*1/2*/
185: "\0033/4", /*3/4*/
186: "\001-", /*minus*/
187: "\202fi", /*fi*/
188: "\202fl", /*fl*/
189: "\202ff", /*ff*/
190: "\203ffi", /*ffi*/
191: "\203ffl", /*ffl*/
192: "\001\033j\013o\033J\013", /*degree*/
193: "\001|\b\033j\002-\033J\002", /*dagger*/
194: "\001 ", /* section*/
195: "\001'", /*foot mark*/
196: "\001'", /*acute accent*/
197: "\001`", /*grave accent*/
198: "\001_", /*underrule*/
199: "\001/", /*slash (longer)*/
200: "\001\0", /*half narrow space => 1/12 em */
201: "\001 ", /*unpaddable space*/
202: "\201o\b(", /*alpha*/
203: "\2018\b|", /*beta*/
204: "\201>\b/", /*gamma*/
205: "\201d\b`", /*delta*/
206: "\201C\b-", /*epsilon*/
207: "\000\0", /*zeta*/
208: "\201n", /*eta*/
209: "\201o\b-", /*theta*/
210: "\201i", /*iota*/
211: "\201k", /*kappa*/
212: "\201,\b\\", /*lambda*/
213: "\201u", /*mu*/
214: "\201v", /*nu*/
215: "\000\0", /*xi*/
216: "\201o", /*omicron*/
217: "\202i\b~i\b~", /*pi*/
218: "\201p", /*rho*/
219: "\201o\b~", /*sigma*/
220: "\201i\b~", /*tau*/
221: "\201u", /*upsilon*/
222: "\201o\b|", /*phi*/
223: "\201x", /*chi*/
224: "\201u\b|", /*psi*/
225: "\201w", /*omega*/
226: "\201I\b~", /*Gamma*/
227: "\202/\b_\\\b_", /*Delta*/
228: "\201O\b-", /*Theta*/
229: "\202/\\", /*Lambda*/
230: "\201=\b_", /*Xi*/
231: "\202TT", /*Pi*/
232: "\201>\b_\b~", /*Sigma*/
233: "\000", /**/
234: "\201Y", /*Upsilon*/
235: "\201O\b|", /*Phi*/
236: "\201U\b|", /*Psi*/
237: "\201O\b_", /*Omega*/
238: "\001v\b/", /*square root*/
239: "\000\0", /*terminal sigma*/
240: "\001~", /*root en*/
241: "\001>\b_", /*>=*/
242: "\001<\b_", /*<=*/
243: "\001=\b_", /*identically equal*/
244: "\001-", /*equation minus*/
245: "\001~\b_", /*approx =*/
246: "\001~", /*approximates*/
247: "\001=\b/", /*not equal*/
248: "\002->", /*right arrow*/
249: "\002<-", /*left arrow*/
250: "\001|\b^", /*up arrow*/
251: "\001|\bv", /*down arrow*/
252: "\001=", /*equation equal*/
253: "\001x", /*multiply*/
254: "\001:\b-", /*divide*/
255: "\001+\b_", /*plus-minus*/
256: "\002(\b~)\b~", /*cup (union)*/
257: "\002(\b_)\b_", /*cap (intersection)*/
258: "\002(=", /*subset of*/
259: "\002=)", /*superset of*/
260: "\002(=\b_", /*improper subset*/
261: "\002=\b_)", /*improper superset*/
262: "\002oo", /*infinity*/
263: "\001o\b`", /*partial derivative*/
264: "\002\\\b~/\b~", /*gradient*/
265: "\000\0", /*not*/
266: "\000\0", /*integral sign*/
267: "\002oc", /*proportional to*/
268: "\001O\b/", /*empty set*/
269: "\001<\b-", /*member of*/
270: "\001+", /*equation plus*/
271: "\003(R)", /*registered*/
272: "\003(C)", /*copyright*/
273: "\001|", /*box rule */
274: "\001c\b/", /*cent sign*/
275: "\001|\b=", /*dbl dagger*/
276: "\002=>", /*right hand*/
277: "\002<=", /*left hand*/
278: "\001*", /*math * */
279: "\000\0", /*bell system sign*/
280: "\001|", /*or (was star)*/
281: "\001O", /*circle*/
282: "\000\033G", /* FX80 set Double Strike */ /* \(lt */
283: "\000\033H", /* FX80 cancels D.S. */ /* \(lb */
284: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.