]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/htmlroff/t6.c
9bootfat: rename open() to fileinit and make it static as its really a internal funct...
[plan9front.git] / sys / src / cmd / htmlroff / t6.c
1 #include "a.h"
2
3 /*
4  * Section 6 - line length and indenting.
5  */
6
7 /* set line length */
8 void
9 ll(int v)
10 {
11         if(v == 0)
12                 v = getnr(L(".l0"));
13         nr(L(".l0"), getnr(L(".l")));
14         nr(L(".l"), v);
15 }
16 void
17 r_ll(int argc, Rune **argv)
18 {
19         if(argc < 2)
20                 ll(0);
21         else if(argv[1][0] == '+')
22                 ll(getnr(L(".l"))+evalscale(argv[1]+1, 'v'));
23         else if(argv[1][0] == '-')
24                 ll(getnr(L(".l"))-evalscale(argv[1]+1, 'v'));
25         else
26                 ll(evalscale(argv[1], 'm'));
27         if(argc > 2)
28                 warn("extra arguments to .ll");
29 }
30
31 void
32 in(int v)
33 {
34         nr(L(".i0"), getnr(L(".i")));
35         nr(L(".i"), v);
36         nr(L(".ti"), 0);
37         /* XXX */
38 }
39 void
40 r_in(int argc, Rune **argv)
41 {
42         br();
43         if(argc < 2)
44                 in(getnr(L(".i0")));
45         else if(argv[1][0] == '+')
46                 in(getnr(L(".i"))+evalscale(argv[1]+1, 'm'));
47         else if(argv[1][0] == '-')
48                 in(getnr(L(".i"))-evalscale(argv[1]+1, 'm'));
49         else
50                 in(evalscale(argv[1], 'm'));
51         if(argc > 3)
52                 warn("extra arguments to .in");
53 }
54
55 void
56 ti(int v)
57 {
58         nr(L(".ti"), v);
59 }
60 void
61 r_ti(int argc, Rune **argv)
62 {
63         USED(argc);
64         br();
65         ti(evalscale(argv[1], 'm'));
66 }
67
68 void
69 t6init(void)
70 {
71         addreq(L("ll"), r_ll, -1);
72         addreq(L("in"), r_in, -1);
73         addreq(L("ti"), r_ti, 1);
74         
75         nr(L(".l"), eval(L("6.5i")));
76 }
77