URI:
       tt6.c - plan9port - [fork] Plan 9 from user space
  HTML git clone git://src.adamsgaard.dk/plan9port
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
       tt6.c (1165B)
       ---
            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 }