home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V7 / usr / src / cmd / troff / tab3.c < prev    next >
Encoding:
C/C++ Source or Header  |  1979-01-10  |  15.5 KB  |  893 lines

  1. #define BYTE 8
  2. #define PAIR(A,B) (A|(B<<BYTE))
  3. /*
  4. character name and code tables
  5. default width tables
  6. modified for BTL special font version 4
  7. and Commercial II
  8. */
  9.  
  10. int chtab [] = {
  11. PAIR('h','y'), 0200,    /*hyphen*/
  12. PAIR('b','u'), 0201,    /*bullet*/
  13. PAIR('s','q'), 0202,    /*square*/
  14. PAIR('e','m'), 0203,    /*3/4em*/
  15. PAIR('r','u'), 0204,    /*rule*/
  16. PAIR('1','4'), 0205,    /*1/4*/
  17. PAIR('1','2'), 0206,    /*1/2*/
  18. PAIR('3','4'), 0207,    /*3/4*/
  19. PAIR('m','i'), 0302,    /*equation minus*/
  20. PAIR('f','i'), 0211,    /*fi*/
  21. PAIR('f','l'), 0212,    /*fl*/
  22. PAIR('f','f'), 0213,    /*ff*/
  23. PAIR('F','i'), 0214,    /*ffi*/
  24. PAIR('F','l'), 0215,    /*ffl*/
  25. PAIR('d','e'), 0216,    /*degree*/
  26. PAIR('d','g'), 0217,    /*dagger*/
  27. PAIR('s','c'), 0220,    /*section*/
  28. PAIR('f','m'), 0221,    /*foot mark*/
  29. PAIR('a','a'), 0222,    /*acute accent*/
  30. PAIR('g','a'), 0223,    /*grave accent*/
  31. PAIR('u','l'), 0224,    /*underrule*/
  32. PAIR('s','l'), 0225,    /*slash (longer)*/
  33. PAIR('*','a'), 0230,    /*alpha*/
  34. PAIR('*','b'), 0231,    /*beta*/
  35. PAIR('*','g'), 0232,    /*gamma*/
  36. PAIR('*','d'), 0233,    /*delta*/
  37. PAIR('*','e'), 0234,    /*epsilon*/
  38. PAIR('*','z'), 0235,    /*zeta*/
  39. PAIR('*','y'), 0236,    /*eta*/
  40. PAIR('*','h'), 0237,    /*theta*/
  41. PAIR('*','i'), 0240,    /*iota*/
  42. PAIR('*','k'), 0241,    /*kappa*/
  43. PAIR('*','l'), 0242,    /*lambda*/
  44. PAIR('*','m'), 0243,    /*mu*/
  45. PAIR('*','n'), 0244,    /*nu*/
  46. PAIR('*','c'), 0245,    /*xi*/
  47. PAIR('*','o'), 0246,    /*omicron*/
  48. PAIR('*','p'), 0247,    /*pi*/
  49. PAIR('*','r'), 0250,    /*rho*/
  50. PAIR('*','s'), 0251,    /*sigma*/
  51. PAIR('*','t'), 0252,    /*tau*/
  52. PAIR('*','u'), 0253,    /*upsilon*/
  53. PAIR('*','f'), 0254,    /*phi*/
  54. PAIR('*','x'), 0255,    /*chi*/
  55. PAIR('*','q'), 0256,    /*psi*/
  56. PAIR('*','w'), 0257,    /*omega*/
  57. PAIR('*','A'), 0101,    /*Alpha*/
  58. PAIR('*','B'), 0102,    /*Beta*/
  59. PAIR('*','G'), 0260,    /*Gamma*/
  60. PAIR('*','D'), 0261,    /*Delta*/
  61. PAIR('*','E'), 0105,    /*Epsilon*/
  62. PAIR('*','Z'), 0132,    /*Zeta*/
  63. PAIR('*','Y'), 0110,    /*Eta*/
  64. PAIR('*','H'), 0262,    /*Theta*/
  65. PAIR('*','I'), 0111,    /*Iota*/
  66. PAIR('*','K'), 0113,    /*Kappa*/
  67. PAIR('*','L'), 0263,    /*Lambda*/
  68. PAIR('*','M'), 0115,    /*Mu*/
  69. PAIR('*','N'), 0116,    /*Nu*/
  70. PAIR('*','C'), 0264,    /*Xi*/
  71. PAIR('*','O'), 0117,    /*Omicron*/
  72. PAIR('*','P'), 0265,    /*Pi*/
  73. PAIR('*','R'), 0120,    /*Rho*/
  74. PAIR('*','S'), 0266,    /*Sigma*/
  75. PAIR('*','T'), 0124,    /*Tau*/
  76. PAIR('*','U'), 0270,    /*Upsilon*/
  77. PAIR('*','F'), 0271,    /*Phi*/
  78. PAIR('*','X'), 0130,    /*Chi*/
  79. PAIR('*','Q'), 0272,    /*Psi*/
  80. PAIR('*','W'), 0273,    /*Omega*/
  81. PAIR('s','r'), 0274,    /*square root*/
  82. PAIR('t','s'), 0275,    /*terminal sigma*/
  83. PAIR('r','n'), 0276,    /*root en*/
  84. PAIR('>','='), 0277,    /*>=*/
  85. PAIR('<','='), 0300,    /*<=*/
  86. PAIR('=','='), 0301,    /*identically equal*/
  87. PAIR('~','='), 0303,    /*approx =*/
  88. PAIR('a','p'), 0304,    /*approximates*/
  89. PAIR('!','='), 0305,    /*not equal*/
  90. PAIR('-','>'), 0306,    /*right arrow*/
  91. PAIR('<','-'), 0307,    /*left arrow*/
  92. PAIR('u','a'), 0310,    /*up arrow*/
  93. PAIR('d','a'), 0311,    /*down arrow*/
  94. PAIR('e','q'), 0312,    /*equation equal*/
  95. PAIR('m','u'), 0313,    /*multiply*/
  96. PAIR('d','i'), 0314,    /*divide*/
  97. PAIR('+','-'), 0315,    /*plus-minus*/
  98. PAIR('c','u'), 0316,    /*cup (union)*/
  99. PAIR('c','a'), 0317,    /*cap (intersection)*/
  100. PAIR('s','b'), 0320,    /*subset of*/
  101. PAIR('s','p'), 0321,    /*superset of*/
  102. PAIR('i','b'), 0322,    /*improper subset*/
  103. PAIR('i','p'), 0323,    /*  " superset*/
  104. PAIR('i','f'), 0324,    /*infinity*/
  105. PAIR('p','d'), 0325,    /*partial derivative*/
  106. PAIR('g','r'), 0326,    /*gradient*/
  107. PAIR('n','o'), 0327,    /*not*/
  108. PAIR('i','s'), 0330,    /*integral sign*/
  109. PAIR('p','t'), 0331,    /*proportional to*/
  110. PAIR('e','s'), 0332,    /*empty set*/
  111. PAIR('m','o'), 0333,    /*member of*/
  112. PAIR('p','l'), 0334,    /*equation plus*/
  113. PAIR('r','g'), 0335,    /*registered*/
  114. PAIR('c','o'), 0336,    /*copyright*/
  115. PAIR('b','r'), 0337,    /*box vert rule*/
  116. PAIR('c','t'), 0340,    /*cent sign*/
  117. PAIR('d','d'), 0341,    /*dbl dagger*/
  118. PAIR('r','h'), 0342,    /*right hand*/
  119. PAIR('l','h'), 0343,    /*left hand*/
  120. PAIR('*','*'), 0344,    /*math * */
  121. PAIR('b','s'), 0345,    /*bell system sign*/
  122. PAIR('o','r'), 0346,    /*or*/
  123. PAIR('c','i'), 0347,    /*circle*/
  124. PAIR('l','t'), 0350,    /*left top (of big curly)*/
  125. PAIR('l','b'), 0351,    /*left bottom*/
  126. PAIR('r','t'), 0352,    /*right top*/
  127. PAIR('r','b'), 0353,    /*right bot*/
  128. PAIR('l','k'), 0354,    /*left center of big curly bracket*/
  129. PAIR('r','k'), 0355,    /*right center of big curly bracket*/
  130. PAIR('b','v'), 0356,    /*bold vertical*/
  131. PAIR('l','f'), 0357,    /*left floor (left bot of big sq bract)*/
  132. PAIR('r','f'), 0360,    /*right floor (rb of ")*/
  133. PAIR('l','c'), 0361,    /*left ceiling (lt of ")*/
  134. PAIR('r','c'), 0362,    /*right ceiling (rt of ")*/
  135. 0,0};
  136.  
  137. char codetab[256-32] = {    /*cat codes*/
  138. 00,    /*space*/
  139. 0145,    /*!*/
  140. 0230,    /*"*/
  141. 0337,    /*#*/
  142. 0155,    /*$*/
  143. 053,    /*%*/
  144. 050,    /*&*/
  145. 032,    /*' close*/
  146. 0132,    /*(*/
  147. 0133,    /*)*/
  148. 0122,    /***/
  149. 0143,    /*+*/
  150. 047,    /*,*/
  151. 040,    /*- hyphen*/
  152. 044,    /*.*/
  153. 043,    /*/*/
  154. 0110,    /*0*/
  155. 0111,    /*1*/
  156. 0112,    /*2*/
  157. 0113,    /*3*/
  158. 0114,    /*4*/
  159. 0115,    /*5*/
  160. 0116,    /*6*/
  161. 0117,    /*7*/
  162. 0120,    /*8*/
  163. 0121,    /*9*/
  164. 0142,    /*:*/
  165. 023,    /*;*/
  166. 0303,    /*<*/
  167. 0140,    /*=*/
  168. 0301,    /*>*/
  169. 0147,    /*?*/
  170. 0222,    /*@*/
  171. 0103,    /*A*/
  172. 075,    /*B*/
  173. 070,    /*C*/
  174. 074,    /*D*/
  175. 072,    /*E*/
  176. 0101,    /*F*/
  177. 065,    /*G*/
  178. 060,    /*H*/
  179. 066,    /*I*/
  180. 0105,    /*J*/
  181. 0107,    /*K*/
  182. 063,    /*L*/
  183. 062,    /*M*/
  184. 061,    /*N*/
  185. 057,    /*O*/
  186. 067,    /*P*/
  187. 055,    /*Q*/
  188. 064,    /*R*/
  189. 076,    /*S*/
  190. 056,    /*T*/
  191. 0106,    /*U*/
  192. 071,    /*V*/
  193. 0104,    /*W*/
  194. 0102,    /*X*/
  195. 077,    /*Y*/
  196. 073,    /*Z*/
  197. 0134,    /*[*/
  198. 0241,    /*\*/
  199. 0135,    /*]*/
  200. 0336,    /*^*/
  201. 0240,    /*_*/
  202. 030,    /*` open*/
  203. 025,    /*a*/
  204. 012,    /*b*/
  205. 027,    /*c*/
  206. 011,    /*d*/
  207. 031,    /*e*/
  208. 014,    /*f*/
  209. 045,    /*g*/
  210. 001,    /*h*/
  211. 006,    /*i*/
  212. 015,    /*j*/
  213. 017,    /*k*/
  214. 005,    /*l*/
  215. 004,    /*m*/
  216. 003,    /*n*/
  217. 033,    /*o*/
  218. 021,    /*p*/
  219. 042,    /*q*/
  220. 035,    /*r*/
  221. 010,    /*s*/
  222. 002,    /*t*/
  223. 016,    /*u*/
  224. 037,    /*v*/
  225. 041,    /*w*/
  226. 013,    /*x*/
  227. 051,    /*y*/
  228. 007,    /*z*/
  229. 0332,    /*{*/
  230. 0151,    /*|*/
  231. 0333,    /*}*/
  232. 0342,    /*~*/
  233. 00,    /*narrow space*/
  234. 040,    /*hyphen*/
  235. 0146,    /*bullet*/
  236. 0154,    /*square*/
  237. 022,    /*3/4 em*/
  238. 026,    /*rule*/
  239. 034,    /*1/4*/
  240. 036,    /*1/2*/
  241. 046,    /*3/4*/
  242. 0123,    /*minus*/
  243. 0124,    /*fi*/
  244. 0125,    /*fl*/
  245. 0126,    /*ff*/
  246. 0131,    /*ffi*/
  247. 0130,    /*ffl*/
  248. 0136,    /*degree*/
  249. 0137,    /*dagger*/
  250. 0355,    /*section*/
  251. 0150,    /*foot mark*/
  252. 0334,    /*acute accent*/
  253. 0335,    /*grave accent*/
  254. 0240,    /*underrule*/
  255. 0304,    /*slash (longer)*/
  256. 00,    /*half nar sp*/
  257. 00,    /**/
  258. 0225,    /*alpha*/
  259. 0212,    /*beta*/
  260. 0245,    /*gamma*/
  261. 0211,    /*delta*/
  262. 0231,    /*epsilon*/
  263. 0207,    /*zeta*/
  264. 0214,    /*eta*/
  265. 0202,    /*theta*/
  266. 0206,    /*iota*/
  267. 0217,    /*kappa*/
  268. 0205,    /*lambda*/
  269. 0204,    /*mu*/
  270. 0203,    /*nu*/
  271. 0213,    /*xi*/
  272. 0233,    /*omicron*/
  273. 0221,    /*pi*/
  274. 0235,    /*rho*/
  275. 0210,    /*sigma*/
  276. 0237,    /*tau*/
  277. 0216,    /*upsilon*/
  278. 0215,    /*phi*/
  279. 0227,    /*chi*/
  280. 0201,    /*psi*/
  281. 0251,    /*omega*/
  282. 0265,    /*Gamma*/
  283. 0274,    /*Delta*/
  284. 0256,    /*Theta*/
  285. 0263,    /*Lambda*/
  286. 0302,    /*Xi*/
  287. 0267,    /*Pi*/
  288. 0276,    /*Sigma*/
  289. 00,    /**/
  290. 0306,    /*Upsilon*/
  291. 0255,    /*Phi*/
  292. 0242,    /*Psi*/
  293. 0257,    /*Omega*/
  294. 0275,    /*square root*/
  295. 0262,    /*terminal sigma (was root em)*/
  296. 0261,    /*root en*/
  297. 0327,    /*>=*/
  298. 0326,    /*<=*/
  299. 0330,    /*identically equal*/
  300. 0264,    /*equation minus*/
  301. 0277,    /*approx =*/
  302. 0272,    /*approximates*/
  303. 0331,    /*not equal*/
  304. 0354,    /*right arrow*/
  305. 0234,    /*left arrow*/
  306. 0236,    /*up arrow*/
  307. 0223,    /*down arrow*/
  308. 0232,    /*equation equal*/
  309. 0323,    /*multiply*/
  310. 0324,    /*divide*/
  311. 0325,    /*plus-minus*/
  312. 0260,    /*cup (union)*/
  313. 0305,    /*cap (intersection)*/
  314. 0270,    /*subset of*/
  315. 0271,    /*superset of*/
  316. 0350,    /*improper subset*/
  317. 0246,    /* improper superset*/
  318. 0244,    /*infinity*/
  319. 0273,    /*partial derivative*/
  320. 0253,    /*gradient*/
  321. 0307,    /*not*/
  322. 0266,    /*integral sign*/
  323. 0247,    /*proportional to*/
  324. 0343,    /*empty set*/
  325. 0341,    /*member of*/
  326. 0353,    /*equation plus*/
  327. 0141,    /*registered*/
  328. 0153,    /*copyright*/
  329. 0346,    /*box rule (was parallel sign)*/
  330. 0127,    /*cent sign*/
  331. 0345,    /*dbl dagger*/
  332. 0250,    /*right hand*/
  333. 0340,    /*left hand*/
  334. 0347,    /*math * */
  335. 0243,    /*bell system sign*/
  336. 0226,    /*or (was star)*/
  337. 0351,    /*circle*/
  338. 0311,    /*left top (of big curly)*/
  339. 0314,    /*left bottom*/
  340. 0315,    /*right top*/
  341. 0317,    /*right bot*/
  342. 0313,    /*left center of big curly bracket*/
  343. 0316,    /*right center of big curly bracket*/
  344. 0312,    /*bold vertical*/
  345. 0321,    /*left floor (left bot of big sq bract)*/
  346. 0320,    /*right floor (rb of ")*/
  347. 0322,    /*left ceiling (lt of ")*/
  348. 0310};    /*right ceiling (rt of ")*/
  349.  
  350. /*modified for Commercial II*/
  351. char W1[256-32] = {    /*Times Roman widths*/
  352. 12,     /*space*/
  353. 12,     /*!*/
  354. 0,     /*"*/
  355. 0,     /*#*/
  356. 19,     /*$*/
  357. 29,     /*%*/
  358. 28,     /*&*/
  359. 12,     /*' close*/
  360. 16,     /*(*/
  361. 16,     /*)*/
  362. 16,     /***/
  363. 36,     /*+*/
  364. 12,     /*,*/
  365. 13,     /*- hyphen*/
  366. 10,     /*.*/
  367. 17,     /*/*/
  368. 19+0200, /*0*/
  369. 19+0200, /*1*/
  370. 19+0200, /*2*/
  371. 19+0200, /*3*/
  372. 19+0200, /*4*/
  373. 19+0200, /*5*/
  374. 19+0200, /*6*/
  375. 19+0200, /*7*/
  376. 19+0200, /*8*/
  377. 19+0200, /*9*/
  378. 10,     /*:*/
  379. 12,     /*;*/
  380. 0,     /*<*/
  381. 36,     /*=*/
  382. 0,     /*>*/
  383. 20,     /*?*/
  384. 0,     /*@*/
  385. 29+0200, /*A*/
  386. 23+0200, /*B*/
  387. 26+0200, /*C*/
  388. 30+0200, /*D*/
  389. 24+0200, /*E*/
  390. 23+0200, /*F*/
  391. 30+0200, /*G*/
  392. 29+0200, /*H*/
  393. 13+0200, /*I*/
  394. 16+0200, /*J*/
  395. 28+0200, /*K*/
  396. 24+0200, /*L*/
  397. 35+0200, /*M*/
  398. 29+0200, /*N*/
  399. 27+0200, /*O*/
  400. 22+0200, /*P*/
  401. 27+0300, /*Q*/
  402. 27+0200, /*R*/
  403. 20+0200, /*S*/
  404. 24+0200, /*T*/
  405. 29+0200, /*U*/
  406. 27+0200, /*V*/
  407. 36+0200, /*W*/
  408. 28+0200, /*X*/
  409. 27+0200, /*Y*/
  410. 23+0200, /*Z*/
  411. 14,     /*[*/
  412. 0,     /*\*/
  413. 14,     /*]*/
  414. 0,     /*^*/
  415. 0,     /*_*/
  416. 12,     /*` open*/
  417. 17,     /*a*/
  418. 20+0200, /*b*/
  419. 16,     /*c*/
  420. 20+0200, /*d*/
  421. 18,     /*e*/
  422. 13+0200, /*f*/
  423. 18+0100, /*g*/
  424. 21+0200, /*h*/
  425. 10+0200, /*i*/
  426. 9+0300, /*j*/
  427. 20+0200, /*k*/
  428. 10+0200, /*l*/
  429. 32,     /*m*/
  430. 21,     /*n*/
  431. 20,     /*o*/
  432. 19+0100, /*p*/
  433. 19+0100, /*q*/
  434. 14,     /*r*/
  435. 15,     /*s*/
  436. 12+0200, /*t*/
  437. 21,     /*u*/
  438. 20,     /*v*/
  439. 26,     /*w*/
  440. 20,     /*x*/
  441. 18+0100, /*y*/
  442. 17,     /*z*/
  443. 0,     /*{*/
  444. 2,     /*|*/
  445. 0,     /*}*/
  446. 0,     /*~*/
  447. 6,     /*narrow space*/
  448. 13,     /*hyphen*/
  449. 27,     /*bullet*/
  450. 27,     /*square*/
  451. 36,     /*3/4 em*/
  452. 18,     /*rule*/
  453. 29,     /*1/4*/
  454. 29,     /*1/2*/
  455. 29,     /*3/4*/
  456. 36,     /*minus*/
  457. 21,     /*fi*/
  458. 21,     /*fl*/
  459. 24,     /*ff*/
  460. 32,     /*ffi*/
  461. 32,     /*ffl*/
  462. 15,     /*degree*/
  463. 20,     /*dagger*/
  464. 0,     /*section*/
  465. 8,     /*foot mark*/
  466. 0,     /*'*/
  467. 0,     /*`*/
  468. 0,     /*_*/
  469. 0,
  470. 3,    /*half nar sp*/
  471. 0,
  472. 0,0,0,0,0,0,0,0,
  473. 0,0,0,0,0,0,0,0,
  474. 0,0,0,0,0,0,0,0,
  475. 0,0,0,0,0,0,0,0,
  476. 0,0,0,0,0,0,0,0,
  477. 0,0,0,0,0,0,0,0,
  478. 0,0,0,0,0,0,0,0,
  479. 0,0,0,0,0,0,0,0,
  480. 0,0,0,0,0,
  481. 20,     /*registered*/
  482. 20,     /*copyright*/
  483. 0,
  484. 19,     /*cent*/
  485. };
  486.  
  487. char W2[256-32] = {    /*Times Italic widths*/
  488. 12,     /*space*/
  489. 13,     /*!*/
  490. 0,     /*"*/
  491. 0,     /*#*/
  492. 19,     /*$*/
  493. 27,     /*%*/
  494. 26,     /*&*/
  495. 11,     /*' close*/
  496. 15,     /*(*/
  497. 15,     /*)*/
  498. 16,     /***/
  499. 36,     /*+*/
  500. 11,     /*,*/
  501. 13,     /*- hyphen*/
  502. 11,     /*.*/
  503. 9,     /*/*/
  504. 19+0200, /*0*/
  505. 19+0200, /*1*/
  506. 19+0200, /*2*/
  507. 19+0200, /*3*/
  508. 19+0200, /*4*/
  509. 19+0200, /*5*/
  510. 19+0200, /*6*/
  511. 19+0200, /*7*/
  512. 19+0200, /*8*/
  513. 19+0200, /*9*/
  514. 11,     /*:*/
  515. 11,     /*;*/
  516. 0,     /*<*/
  517. 36,     /*=*/
  518. 0,     /*>*/
  519. 20,     /*?*/
  520. 0,     /*@*/
  521. 25+0200, /*A*/
  522. 24+0200, /*B*/
  523. 26+0200, /*C*/
  524. 27+0200, /*D*/
  525. 23+0200, /*E*/
  526. 21+0200, /*F*/
  527. 27+0200, /*G*/
  528. 29+0200, /*H*/
  529. 14+0200, /*I*/
  530. 16+0200, /*J*/
  531. 28+0200, /*K*/
  532. 24+0200, /*L*/
  533. 34+0200, /*M*/
  534. 27+0200, /*N*/
  535. 27+0200, /*O*/
  536. 22+0200, /*P*/
  537. 27+0300, /*Q*/
  538. 27+0200, /*R*/
  539. 20+0200, /*S*/
  540. 23+0200, /*T*/
  541. 28+0200, /*U*/
  542. 25+0200, /*V*/
  543. 36+0200, /*W*/
  544. 24+0200, /*X*/
  545. 24+0200, /*Y*/
  546. 25+0200, /*Z*/
  547. 13,     /*[*/
  548. 0,     /*\*/
  549. 13,     /*]*/
  550. 0,     /*^*/
  551. 0,     /*_*/
  552. 11,     /*` open*/
  553. 19,     /*a*/
  554. 18+0200, /*b*/
  555. 15,     /*c*/
  556. 18+0200, /*d*/
  557. 16,     /*e*/
  558. 11+0200, /*f*/
  559. 17+0100, /*g*/
  560. 19+0200, /*h*/
  561. 9+0200, /*i*/
  562. 9+0300, /*j*/
  563. 19+0200, /*k*/
  564. 9+0200, /*l*/
  565. 28,     /*m*/
  566. 19,     /*n*/
  567. 18,     /*o*/
  568. 17+0100, /*p*/
  569. 18+0100, /*q*/
  570. 13,     /*r*/
  571. 14,     /*s*/
  572. 10+0200, /*t*/
  573. 19,     /*u*/
  574. 16,     /*v*/
  575. 24,     /*w*/
  576. 18,     /*x*/
  577. 16+0100, /*y*/
  578. 14,     /*z*/
  579. 0,     /*{*/
  580. 2,     /*|*/
  581. 0,     /*}*/
  582. 0,     /*~*/
  583. 6,     /*narrow space*/
  584. 13,     /*hyphen*/
  585. 27,     /*bullet*/
  586. 27,     /*square*/
  587. 36,     /*3/4 em*/
  588. 18,     /*rule*/
  589. 27,     /*1/4*/
  590. 27,     /*1/2*/
  591. 27,     /*3/4*/
  592. 36,     /*minus*/
  593. 21,     /*fi*/
  594. 21,     /*fl*/
  595. 21,     /*ff*/
  596. 31,     /*ffi*/
  597. 31,     /*ffl*/
  598. 15,     /*degree*/
  599. 19,     /*dagger*/
  600. 16,     /*section*/
  601. 7,     /*foot mark*/
  602. 0,     /*'*/
  603. 0,     /*`*/
  604. 0,     /*_*/
  605. 0,
  606. 3,    /*half nar sp*/
  607. 0,
  608. 0,0,0,0,0,0,0,0,
  609. 0,0,0,0,0,0,0,0,
  610. 0,0,0,0,0,0,0,0,
  611. 0,0,0,0,0,0,0,0,
  612. 0,0,0,0,0,0,0,0,
  613. 0,0,0,0,0,0,0,0,
  614. 0,0,0,0,0,0,0,0,
  615. 0,0,0,0,0,0,0,0,
  616. 0,0,0,0,0,
  617. 20,     /*registered*/
  618. 20,     /*copyright*/
  619. 0,
  620. 19,     /*cent*/
  621. };
  622. char W3[256-32] = {    /*Times Bold widths*/
  623. 12,     /*space*/
  624. 13,     /*!*/
  625. 0,     /*"*/
  626. 0,     /*#*/
  627. 18,     /*$*/
  628. 28,     /*%*/
  629. 27,     /*&*/
  630. 12,     /*' close*/
  631. 16,     /*(*/
  632. 16,     /*)*/
  633. 18,     /***/
  634. 36,     /*+*/
  635. 12,     /*,*/
  636. 14,     /*- hyphen*/
  637. 12,     /*.*/
  638. 18,     /*/*/
  639. 19+0200, /*0*/
  640. 19+0200, /*1*/
  641. 19+0200, /*2*/
  642. 19+0200, /*3*/
  643. 19+0200, /*4*/
  644. 19+0200, /*5*/
  645. 19+0200, /*6*/
  646. 19+0200, /*7*/
  647. 19+0200, /*8*/
  648. 19+0200, /*9*/
  649. 13,     /*:*/
  650. 13,     /*;*/
  651. 0,     /*<*/
  652. 36,     /*=*/
  653. 0,     /*>*/
  654. 22,     /*?*/
  655. 0,     /*@*/
  656. 28+0200, /*A*/
  657. 26+0200, /*B*/
  658. 26+0200, /*C*/
  659. 29+0200, /*D*/
  660. 25+0200, /*E*/
  661. 23+0200, /*F*/
  662. 28+0200, /*G*/
  663. 32+0200, /*H*/
  664. 16+0200, /*I*/
  665. 21+0200, /*J*/
  666. 28+0200, /*K*/
  667. 25+0200, /*L*/
  668. 36+0200, /*M*/
  669. 30+0200, /*N*/
  670. 29+0200, /*O*/
  671. 25+0200, /*P*/
  672. 29+0300, /*Q*/
  673. 28+0200, /*R*/
  674. 23+0200, /*S*/
  675. 25+0200, /*T*/
  676. 29+0200, /*U*/
  677. 27+0200, /*V*/
  678. 36+0200, /*W*/
  679. 27+0200, /*X*/
  680. 28+0200, /*Y*/
  681. 27+0200, /*Z*/
  682. 12,     /*[*/
  683. 0,     /*\*/
  684. 12,     /*]*/
  685. 0,     /*^*/
  686. 0,     /*_*/
  687. 12,     /*` open*/
  688. 19,     /*a*/
  689. 19+0200, /*b*/
  690. 16,     /*c*/
  691. 19+0200, /*d*/
  692. 17,     /*e*/
  693. 13+0200, /*f*/
  694. 18+0100, /*g*/
  695. 22+0200, /*h*/
  696. 12+0200, /*i*/
  697. 12+0300, /*j*/
  698. 23+0200, /*k*/
  699. 12+0200, /*l*/
  700. 32,     /*m*/
  701. 22,     /*n*/
  702. 18,     /*o*/
  703. 20+0100, /*p*/
  704. 19+0100, /*q*/
  705. 15,     /*r*/
  706. 17,     /*s*/
  707. 13+0200, /*t*/
  708. 21,     /*u*/
  709. 19,     /*v*/
  710. 27,     /*w*/
  711. 21,     /*x*/
  712. 19+0100, /*y*/
  713. 17,     /*z*/
  714. 0,     /*{*/
  715. 2,     /*|*/
  716. 0,     /*}*/
  717. 0,     /*~*/
  718. 6,     /*narrow space*/
  719. 14,     /*hyphen*/
  720. 27,     /*bullet*/
  721. 27,     /*square*/
  722. 36,     /*3/4 em*/
  723. 18,     /*rule*/
  724. 28,     /*1/4*/
  725. 28,     /*1/2*/
  726. 28,     /*3/4*/
  727. 36,     /*minus*/
  728. 22,     /*fi*/
  729. 22,     /*fl*/
  730. 23,     /*ff*/
  731. 33,     /*ffi*/
  732. 33,     /*ffl*/
  733. 15,     /*degree*/
  734. 20,     /*dagger*/
  735. 0,     /*section*/
  736. 9,     /*foot mark*/
  737. 0,     /*'*/
  738. 0,     /*`*/
  739. 0,     /*_*/
  740. 0,
  741. 3,    /*half nar sp*/
  742. 0,
  743. 0,0,0,0,0,0,0,0,
  744. 0,0,0,0,0,0,0,0,
  745. 0,0,0,0,0,0,0,0,
  746. 0,0,0,0,0,0,0,0,
  747. 0,0,0,0,0,0,0,0,
  748. 0,0,0,0,0,0,0,0,
  749. 0,0,0,0,0,0,0,0,
  750. 0,0,0,0,0,0,0,0,
  751. 0,0,0,0,0,
  752. 20,     /*registered*/
  753. 20,     /*copyright*/
  754. 0,
  755. 19,     /*cent*/
  756. };
  757.  
  758. /*
  759. Modified for Commercial II
  760. and with +, -, and = for equations
  761. */
  762. char W4[256-32] = {    /*Special font widths*/
  763. 0,0,         /*.=Sw+042-40*/
  764. 13,     /*"*/
  765. 29,     /*#*/
  766. 0,0,0,0,         /*.=Sw+074-40*/
  767. 0,0,0,0,0,0,0,0,
  768. 0,0,0,0,0,0,0,0,
  769. 0,0,0,0,
  770. 36,     /*<*/
  771. 0,         /*.=Sw+076-40*/
  772. 36,     /*>*/
  773. 0,         /*.=Sw+100-40*/
  774. 36,     /*@*/
  775. 0,0,0,0,0,0,0,    /*.=Sw+134-40*/
  776. 0,0,0,0,0,0,0,0,
  777. 0,0,0,0,0,0,0,0,
  778. 0,0,0,0,
  779. 15,     /*\\*/
  780. 0,         /*.=Sw+136-40*/
  781. 15,     /*^*/
  782. 18,     /*_ underrule*/
  783. 0,0,0,0,0,0,0,0,
  784. 0,0,0,0,0,0,0,0,
  785. 0,0,0,0,0,0,0,0,
  786. 0,0,0,
  787. 14,     /*{*/
  788. 0,         /*.=Sw+175-40*/
  789. 14,     /*}*/
  790. 15,     /*~*/
  791. 0,         /*.=Sw+220-40*/
  792. 0,0,0,0,0,0,0,0,
  793. 0,0,0,0,0,0,0,0,
  794. 17,     /*section*/
  795. 0,        /*.=Sw+222-40*/
  796. 10,     /*acute accent*/
  797. 10,     /*grave accent*/
  798. 18,     /*underrule*/
  799. 15,     /*slash (longer)*/
  800. 0,     /**/
  801. 0,     /**/
  802. 24,     /*alpha*/
  803. 23+0300, /*beta*/
  804. 23+0100, /*gamma*/
  805. 19+0200, /*delta*/
  806. 18,     /*epsilon*/
  807. 18+0300, /*zeta*/
  808. 23+0100, /*eta*/
  809. 19+0200, /*theta*/
  810. 13,     /*iota*/
  811. 21,     /*kappa*/
  812. 22+0200, /*lambda*/
  813. 25+0100, /*mu*/
  814. 20,     /*nu*/
  815. 20+0300, /*xi*/
  816. 20,     /*omicron*/
  817. 27,     /*pi*/
  818. 21+0100, /*rho*/
  819. 27,     /*sigma*/
  820. 20,     /*tau*/
  821. 21,     /*upsilon*/
  822. 25+0300, /*phi*/
  823. 22+0100, /*chi*/
  824. 24+0300, /*psi*/
  825. 25,     /*omega*/
  826. 24+0200, /*Gamma*/
  827. 26+0200, /*Delta*/
  828. 28+0200, /*Theta*/
  829. 28+0200, /*Lambda*/
  830. 27+0200, /*Xi*/
  831. 29+0200, /*Pi*/
  832. 25+0200, /*Sigma*/
  833. 0,     /**/
  834. 28+0200, /*Upsilon*/
  835. 29+0200, /*Phi*/
  836. 32+0200, /*Psi*/
  837. 36+0200, /*Omega*/
  838. 30,     /*square root*/
  839. 18+0100, /*terminal sigma*/
  840. 18,     /*root en*/
  841. 36,     /*>=*/
  842. 36,     /*<=*/
  843. 36,     /*identically equal*/
  844. 27,     /*minus*/
  845. 36,     /*approx =*/
  846. 36,     /*approximates*/
  847. 36,     /*not equal*/
  848. 36,     /*right arrow*/
  849. 36,     /*left arrow*/
  850. 18,     /*up arrow*/
  851. 18,     /*down arrow*/
  852. 27,     /*equal*/
  853. 27,     /*multiply*/
  854. 27,     /*divide*/
  855. 36,     /*plus-minus*/
  856. 36,     /*cup (union)*/
  857. 36,     /*cap (intersection)*/
  858. 36,     /*subset of*/
  859. 36,     /*superset of*/
  860. 36,     /*improper subset*/
  861. 36,     /*improper superset*/
  862. 34,     /*infinity*/
  863. 21,     /*partial derivative*/
  864. 36+0200, /*gradient*/
  865. 22,     /*not*/
  866. 24,     /*integral sign*/
  867. 27,     /*proportional to*/
  868. 28,     /*empty set*/
  869. 27,     /*member of*/
  870. 27,     /*plus*/
  871. 0,
  872. 0,
  873. 0,     /*box vert rule (was 2.)*/
  874. 0,
  875. 17,     /*dbl dagger*/
  876. 42,     /*right hand*/
  877. 42,     /*left hand*/
  878. 16,     /*math * */
  879. 41,     /*bell system sign*/
  880. 9,     /*or*/
  881. 27,     /*circle*/
  882. 9,     /*left top (of big curly)*/
  883. 9,     /*left bottom*/
  884. 9,     /*right top*/
  885. 9,     /*right bot*/
  886. 9,     /*left center of big curly bracket*/
  887. 9,     /*right center of big curly bracket*/
  888. 9,     /*bold vertical*/
  889. 9,     /*left floor (left bot of big sq bract)*/
  890. 9,     /*right floor (rb of ")*/
  891. 9,     /*left ceiling (lt of ")*/
  892. 9 }; /*right ceiling (rt of ")*/
  893.