]> git.lizzy.rs Git - plan9front.git/blobdiff - rc/bin/man
Remove ap(1)
[plan9front.git] / rc / bin / man
old mode 100644 (file)
new mode 100755 (executable)
index 37043d1..f002c21
@@ -59,8 +59,8 @@ fn page {
 search=yes
 while(~ $d 0) {
        if(~ $#* 0) {
-               echo 'Usage: man [-bntpPSw] [0-9] [0-9] ... name1 name2 ...' >[1=2]
-               exit
+               echo 'usage: man [-bntpPSw] [0-9] [0-9] ... name1 name2 ...' >[1=2]
+               exit usage
        }
        if(test -d $S/$1){
                sec=($sec $1)
@@ -109,41 +109,49 @@ if(~ $#fils 0) {
                exit 'no man'
        }
 }
-for(i in $fils) {
-       if(! /bin/test -f $i)
-               echo need $i >[1=2]
-       if not {
-               switch($cmd) {
-               case w
-                       echo $i
+switch($cmd) {
+case p; out=proof
+case P; out=page
+case *; out=cat
+}
+{
+       for(i in $fils) {
+               if(! /bin/test -f $i)
+                       echo need $i >[1=2]
+               if not {
+                       switch($cmd) {
+                       case w
+                               echo $i
 
-               case t
-                       roff t $i
+                       case t
+                               roff t $i
 
-               case p
-                       roff t $i | grep -v '^x X html' | proof
+                       case p
+                               roff t $i | grep -v '^x X html'
 
-               case P
-                       roff t $i | page
+                       case P
+                               roff t $i
 
-               case n
-                       roff n $i | sed '
-                               ${
-                                      /^$/p
-                               }
-                               //N
-                               /^\n$/D'
+                       case n
+                               roff n $i | sed '
+                                       ${
+                                              /^$/p
+                                       }
+                                       //N
+                                       /^\n$/D'
 
-               case b
-                       x=`{echo $i | sed 's;/sys/man/(.*)/(.*);\1 \2;'}
-                       if(~ $x(2) 0intro) x=($x(1) intro)
-                       roff n $i | sed '
-                               ${
-                                      /^$/p
-                               }
-                               //N
-                               /^\n$/D' |
-                       plumb -i -d edit -a 'action=showdata filename=/man/'$x(2)^'('$x(1)^')'
+                       case b
+                               x=`{echo $i | sed 's;/sys/man/(.*)/(.*);\1 \2;'}
+                               if(~ $x(2) 0intro) x=($x(1) intro)
+                               roff n $i | sed '
+                                       ${
+                                              /^$/p
+                                       }
+                                       //N
+                                       /^\n$/D' |
+                               plumb -i -d edit -a 'action=showdata filename=/man/'$x(2)^'('$x(1)^')'
+                       }
                }
        }
-}
+} | $out
+