1 #ifndef lint 2 static char sccsid[] = "@(#)eqnbox.c 2.1 (CWI) 85/07/18"; 3 #endif lint 4 # include "e.h" 5 6 eqnbox(p1, p2, lu) 7 { 8 float b, h; 9 char *sh; 10 11 yyval = p1; 12 b = max(ebase[p1], ebase[p2]); 13 eht[yyval] = h = b + max(eht[p1]-ebase[p1], 14 eht[p2]-ebase[p2]); 15 ebase[yyval] = b; 16 dprintf(".\tS%d <- %d %d; b=%g, h=%g\n", yyval, p1, p2, b, h); 17 if (rfont[p1] == ITAL && lfont[p2] == ROM) 18 sh = "\\^"; /* was \| */ 19 else 20 sh = ""; 21 if (lu) { 22 printf(".nr %d \\w'\\*(%d%s'\n", p1, p1, sh); 23 printf(".ds %d \\h'|\\n(09u-\\n(%du'\\*(%d\n", p1, p1, p1); 24 } 25 printf(".as %d \"%s\\*(%d\n", yyval, sh, p2); 26 rfont[p1] = rfont[p2]; 27 sfree(p2); 28 } 29