ref: 8da648a8d1939d68e40c0fc351c5a9b8beb3f16d
dir: /sys/src/cmd/eqn/move.c/
# include "e.h" # include "y.tab.h" void move(int dir, int amt, int p) { double a; yyval = p; a = EM(amt/100.0, ps); printf(".ds %d ", yyval); if (dir == FWD || dir == BACK) printf("\\h'%s%gm'\\*(%d\n", (dir==BACK) ? "-" : "", a, p); else if (dir == UP) printf("\\v'-%gm'\\*(%d\\v'%gm'\n", a, p, a); else if (dir == DOWN) printf("\\v'%gm'\\*(%d\\v'-%gm'\n", a, p, a); dprintf(".\tmove %d dir %d amt %g; h=%g b=%g\n", p, dir, a, eht[yyval], ebase[yyval]); }