aboutsummaryrefslogtreecommitdiff
path: root/bin/9man
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-04-21 22:59:14 +0000
committerrsc <devnull@localhost>2004-04-21 22:59:14 +0000
commit3e63e5c271f7a7013dc4b3fedfb83c2d547b8c26 (patch)
treec096425104ba7b78b779dc1a9766dd19fd68dcd3 /bin/9man
parent3db34fda4bc22e9773e795bed26b5ce72f87af78 (diff)
downloadplan9port-3e63e5c271f7a7013dc4b3fedfb83c2d547b8c26.tar.gz
plan9port-3e63e5c271f7a7013dc4b3fedfb83c2d547b8c26.tar.bz2
plan9port-3e63e5c271f7a7013dc4b3fedfb83c2d547b8c26.zip
rename man9 => 9man
sorry
Diffstat (limited to 'bin/9man')
-rwxr-xr-xbin/9man43
1 files changed, 43 insertions, 0 deletions
diff --git a/bin/9man b/bin/9man
new file mode 100755
index 00000000..cbbbd6e4
--- /dev/null
+++ b/bin/9man
@@ -0,0 +1,43 @@
+#! /bin/sh
+root=$PLAN9/man
+
+while [ $# -gt 0 ] ; do
+ case $1 in
+ [0-9]) sec="$sec $1" ;;
+ *) break ;;
+ esac
+ shift
+done
+
+if [ "X$sec" = "X" ] ; then
+ sec=`ls -d $root/man[0-9]* | sed -e 's;/$;;' -e 's;^.*/man;;'`
+fi
+
+pat='^('`echo $* | sed -e 's; ;|;g'`')' ;
+for s in $sec ; do
+ if [ -f $root/$s/INDEX ] ; then
+ try=`grep -E $pat $root/man$s/INDEX | sed -e 's;^[^ ]* ;;'` ;
+ fi
+ if [ "X$try" != "X" ] ; then
+ for f in $try ; do
+ files="$files $root/man$s/$f.$s";
+ done
+ try="";
+ fi
+ for f in $* ; do
+ if [ -f $root/man$s/$f.$s ] ; then
+ files="$files $root/man$s/$f.$s" ;
+ fi
+ done
+done
+
+files=`echo $files | tr ' ' '\n' | sort -u`;
+
+if [ "X$files" = "X" ] ; then
+ echo "No manual entry for $*";
+ exit 1;
+fi
+
+exmac=".de EX\n.ift .ft 5\n.nf\n..\n.de EE\n.ft1\n.fi\n.."
+( echo -e $exmac ; cat $files ) | nroff -man
+