From 6d7a57dea4e27ace711c44d844d4418fe786160d Mon Sep 17 00:00:00 2001 From: wkj Date: Wed, 21 Apr 2004 03:20:56 +0000 Subject: Import man9 shell script for reading Plan 9 man pages with Unix nroff. Seems to mostly work under FreeBSD; needs some testing under Linux. --- bin/man9 | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 bin/man9 (limited to 'bin') diff --git a/bin/man9 b/bin/man9 new file mode 100755 index 00000000..4eebf7cb --- /dev/null +++ b/bin/man9 @@ -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/[0-9]* | sed -e 's;/$;;' -e 's;^.*/;;'` +fi + +pat='^('`echo $* | sed -e 's; ;|;g'`')' ; +for s in $sec ; do + if [ -f $root/$s/INDEX ] ; then + try=`grep -E $pat $root/$s/INDEX | sed -e 's;^[^ ]* ;;'` ; + fi + if [ "X$try" != "X" ] ; then + for f in $try ; do + files="$files $root/$s/$f"; + done + try=""; + fi + for f in $* ; do + if [ -f $root/$s/$f ] ; then + files="$files $root/$s/$f" ; + 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 + -- cgit v1.2.3