1*426d2b71SDavid du Colombier #include "a.h"
2*426d2b71SDavid du Colombier
3*426d2b71SDavid du Colombier /*
4*426d2b71SDavid du Colombier * 11. Local Horizontal and Vertical Motions, and the Width Function.
5*426d2b71SDavid du Colombier */
6*426d2b71SDavid du Colombier
7*426d2b71SDavid du Colombier int
e_0(void)8*426d2b71SDavid du Colombier e_0(void)
9*426d2b71SDavid du Colombier {
10*426d2b71SDavid du Colombier /* digit-width space */
11*426d2b71SDavid du Colombier return ' ';
12*426d2b71SDavid du Colombier }
13*426d2b71SDavid du Colombier
14*426d2b71SDavid du Colombier int
dv(int d)15*426d2b71SDavid du Colombier dv(int d)
16*426d2b71SDavid du Colombier {
17*426d2b71SDavid du Colombier Rune sub[6];
18*426d2b71SDavid du Colombier
19*426d2b71SDavid du Colombier d += getnr(L(".dv"));
20*426d2b71SDavid du Colombier nr(L(".dv"), d);
21*426d2b71SDavid du Colombier
22*426d2b71SDavid du Colombier runestrcpy(sub, L("<sub>"));
23*426d2b71SDavid du Colombier sub[0] = Ult;
24*426d2b71SDavid du Colombier sub[4] = Ugt;
25*426d2b71SDavid du Colombier if(d < 0){
26*426d2b71SDavid du Colombier sub[3] = 'p';
27*426d2b71SDavid du Colombier ihtml(L(".dv"), sub);
28*426d2b71SDavid du Colombier }else if(d > 0)
29*426d2b71SDavid du Colombier ihtml(L(".dv"), sub);
30*426d2b71SDavid du Colombier else
31*426d2b71SDavid du Colombier ihtml(L(".dv"), nil);
32*426d2b71SDavid du Colombier return 0;
33*426d2b71SDavid du Colombier }
34*426d2b71SDavid du Colombier
35*426d2b71SDavid du Colombier int
e_v(void)36*426d2b71SDavid du Colombier e_v(void)
37*426d2b71SDavid du Colombier {
38*426d2b71SDavid du Colombier dv(eval(getqarg()));
39*426d2b71SDavid du Colombier return 0;
40*426d2b71SDavid du Colombier }
41*426d2b71SDavid du Colombier
42*426d2b71SDavid du Colombier int
e_u(void)43*426d2b71SDavid du Colombier e_u(void)
44*426d2b71SDavid du Colombier {
45*426d2b71SDavid du Colombier dv(eval(L("-0.5m")));
46*426d2b71SDavid du Colombier return 0;
47*426d2b71SDavid du Colombier }
48*426d2b71SDavid du Colombier
49*426d2b71SDavid du Colombier int
e_d(void)50*426d2b71SDavid du Colombier e_d(void)
51*426d2b71SDavid du Colombier {
52*426d2b71SDavid du Colombier dv(eval(L("0.5m")));
53*426d2b71SDavid du Colombier return 0;
54*426d2b71SDavid du Colombier }
55*426d2b71SDavid du Colombier
56*426d2b71SDavid du Colombier int
e_r(void)57*426d2b71SDavid du Colombier e_r(void)
58*426d2b71SDavid du Colombier {
59*426d2b71SDavid du Colombier dv(eval(L("-1m")));
60*426d2b71SDavid du Colombier return 0;
61*426d2b71SDavid du Colombier }
62*426d2b71SDavid du Colombier
63*426d2b71SDavid du Colombier int
e_h(void)64*426d2b71SDavid du Colombier e_h(void)
65*426d2b71SDavid du Colombier {
66*426d2b71SDavid du Colombier getqarg();
67*426d2b71SDavid du Colombier return 0;
68*426d2b71SDavid du Colombier }
69*426d2b71SDavid du Colombier
70*426d2b71SDavid du Colombier int
e_w(void)71*426d2b71SDavid du Colombier e_w(void)
72*426d2b71SDavid du Colombier {
73*426d2b71SDavid du Colombier Rune *a;
74*426d2b71SDavid du Colombier Rune buf[40];
75*426d2b71SDavid du Colombier
76*426d2b71SDavid du Colombier a = getqarg();
77*426d2b71SDavid du Colombier runesnprint(buf, sizeof buf, "%ld", runestrlen(a));
78*426d2b71SDavid du Colombier pushinputstring(buf);
79*426d2b71SDavid du Colombier nr(L("st"), 0);
80*426d2b71SDavid du Colombier nr(L("sb"), 0);
81*426d2b71SDavid du Colombier nr(L("ct"), 0);
82*426d2b71SDavid du Colombier return 0;
83*426d2b71SDavid du Colombier }
84*426d2b71SDavid du Colombier
85*426d2b71SDavid du Colombier int
e_k(void)86*426d2b71SDavid du Colombier e_k(void)
87*426d2b71SDavid du Colombier {
88*426d2b71SDavid du Colombier getname();
89*426d2b71SDavid du Colombier warn("%Ck not available", backslash);
90*426d2b71SDavid du Colombier return 0;
91*426d2b71SDavid du Colombier }
92*426d2b71SDavid du Colombier
93*426d2b71SDavid du Colombier void
t11init(void)94*426d2b71SDavid du Colombier t11init(void)
95*426d2b71SDavid du Colombier {
96*426d2b71SDavid du Colombier addesc('|', e_nop, 0);
97*426d2b71SDavid du Colombier addesc('^', e_nop, 0);
98*426d2b71SDavid du Colombier addesc('v', e_v, 0);
99*426d2b71SDavid du Colombier addesc('h', e_h, 0);
100*426d2b71SDavid du Colombier addesc('w', e_w, 0);
101*426d2b71SDavid du Colombier addesc('0', e_0, 0);
102*426d2b71SDavid du Colombier addesc('u', e_u, 0);
103*426d2b71SDavid du Colombier addesc('d', e_d, 0);
104*426d2b71SDavid du Colombier addesc('r', e_r, 0);
105*426d2b71SDavid du Colombier addesc('k', e_k, 0);
106*426d2b71SDavid du Colombier }
107*426d2b71SDavid du Colombier
108