tImport man9 shell script for reading Plan 9 man pages with Unix nroff. Seems to mostly work under FreeBSD; needs some testing under Linux. - plan9port - [fork] Plan 9 from user space
(HTM) git clone git://src.adamsgaard.dk/plan9port
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 6d7a57dea4e27ace711c44d844d4418fe786160d
(DIR) parent 146cf9377d5af7ec9d49d54b861fc62d5fe04aac
(HTM) Author: wkj <devnull@localhost>
Date: Wed, 21 Apr 2004 03:20:56 +0000
Import man9 shell script for reading Plan 9 man pages with Unix nroff.
Seems to mostly work under FreeBSD; needs some testing under Linux.
Diffstat:
A bin/man9 | 43 ++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/bin/man9 b/bin/man9
t@@ -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
+