9base

revived minimalist port of Plan 9 userland to Unix
git clone git://git.suckless.org/9base
Log | Files | Refs | README | LICENSE

sh.me (1489B)


      1 .nr _0 \n(c.
      2 .\"	@(#)sh.me	2.1	8/18/80
      3 .\" This version has had comments stripped; an unstripped version is available.
      4 .de sh
      5 .if (\\n(si>0)&(\\n(si<1n) \
      6 .	nr si \\n(sin
      7 .ce 0
      8 .@d "\\$1" +1 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
      9 .if !"\\$2"_" \
     10 \{\
     11 .	ds |x \&\\$2
     12 .	$p "\\*(|x" "\\*($n" \\n($0
     13 .	$0 "\\*(|x" "\\*($n" \\n($0
     14 .	rm |x
     15 .\}
     16 .nr $p 0 1
     17 ..
     18 .de @d
     19 .if !""\\$1" \
     20 .	nr $0 \\$1
     21 .if \\n($0&(\\n(.$>1) \
     22 .	nr $\\n($0 \\$2
     23 .ds $n \&\"
     24 .ie \\n($0>=1 \
     25 \{\
     26 .	if \\n($1=0 \
     27 .		nr $1 1
     28 .	if (\\n(.$>=3) .if !"\\$3"-" \
     29 .		nr $1 \\$3
     30 .	as $n \\n($1
     31 .\}
     32 .el \
     33 .	nr $1 0
     34 .ie \\n($0>=2 \
     35 \{\
     36 .	if \\n($2=0 \
     37 .		nr $2 1
     38 .	if (\\n(.$>=4) .if !"\\$4"-" \
     39 .		nr $2 \\$4
     40 .	as $n .\\n($2
     41 .\}
     42 .el \
     43 .	nr $2 0
     44 .ie \\n($0>=3 \
     45 \{\
     46 .	if \\n($3=0 \
     47 .		nr $3 1
     48 .	if (\\n(.$>=5) .if !"\\$5"-" \
     49 .		nr $3 \\$5
     50 .	as $n .\\n($3
     51 .\}
     52 .el \
     53 .	nr $3 0
     54 .ie \\n($0>=4 \
     55 \{\
     56 .	if \\n($4=0 \
     57 .		nr $4 1
     58 .	if (\\n(.$>=6) .if !"\\$6"-" \
     59 .		nr $4 \\$6
     60 .	as $n .\\n($4
     61 .\}
     62 .el \
     63 .	nr $4 0
     64 .ie \\n($0>=5 \
     65 \{\
     66 .	if \\n($5=0 \
     67 .		nr $5 1
     68 .	if (\\n(.$>=7) .if !"\\$7"-" \
     69 .		nr $5 \\$7
     70 .	as $n .\\n($5
     71 .\}
     72 .el \
     73 .	nr $5 0
     74 .ie \\n($0>=6 \
     75 \{\
     76 .	if \\n($6=0 \
     77 .		nr $6 1
     78 .	if (\\n(.$>=8) .if !"\\$8"-" \
     79 .		nr $6 \\$8
     80 .	as $n .\\n($6
     81 .\}
     82 .el \
     83 .	nr $6 0
     84 ..
     85 .de sx
     86 .ce 0
     87 .ul 0
     88 .nr _0 \\n($0-1
     89 .if \\n(.$ .nr _0 +1
     90 .if \\n(.$ .nr _0 \\$1
     91 .@d \\n(_0
     92 .rr _0
     93 .$p "" "" \\n($0
     94 .nr $p 0 1
     95 ..
     96 .de uh
     97 .$p "\\$1"
     98 .$0 "\\$1"
     99 ..
    100 .if \n(sf<=0 \
    101 .	nr sf 8
    102 .if \n(sp<=0 \
    103 .	nr sp 10
    104 .if \n(ss<=0 \
    105 .	nr ss 12p
    106 .if \n(si<=0 \
    107 .	nr si 0
    108 .nr c. \n(_0