slitaz-base-files annotate rootfs/usr/bin/man @ rev 139

Add libtaz and httphelper man a like documentation
author Christophe Lincoln <pankso@slitaz.org>
date Tue Apr 24 10:26:35 2012 +0200 (2012-04-24)
parents 4a0b818014d8
children bffd6c0e7c5b
rev   line source
pankso@67 1 #!/bin/sh
pankso@67 2 #
pankso@67 3 # Tiny man fake using online manuals.
pankso@103 4 # Copyright (C) 2009-2012 SliTaz GNU/Linux.
pankso@67 5 #
pankso@139 6 . /lib/libtaz.sh
pankso@67 7
pankso@67 8 if [ ! -x /usr/bin/retawq ]; then
paul@69 9 echo -e "\nMissing Retawq web browser..."
pankso@67 10 echo -e "Please run: su -c 'tazpkg get-install retawq'\n"
pankso@67 11 exit 0
pankso@67 12 fi
pankso@67 13
pankso@67 14 local i
pankso@67 15 local SECTION
pankso@67 16 local MSG
pankso@67 17 local TOPIC
pankso@67 18 local MAN_SECTION
pankso@67 19
pankso@67 20 case "$1" in
pankso@67 21 ''|-*)
pankso@67 22 cat <<EOT
pankso@67 23
pankso@139 24 $(boldify "Usage:") man [section] command
pankso@67 25
pankso@67 26 EOT
pankso@67 27 return ;;
pankso@67 28 esac
pankso@67 29
pankso@67 30 SECTION=all
pankso@67 31 MAN_SECTION='*'
pankso@67 32 MSG=""
pankso@67 33
pankso@67 34 if [ -n "$2" ]; then
pankso@67 35 SECTION=$1
pankso@67 36 MAN_SECTION=$1
pankso@67 37 MSG=" in section $SECTION"
pankso@67 38 shift
pankso@67 39 fi
pankso@67 40
pankso@67 41 TOPIC=$1
pankso@67 42
pankso@67 43 if [ -x /usr/bin/retawq -a -f /usr/share/doc/$TOPIC/$TOPIC.html ]; then
pankso@67 44 retawq --dump=file:///usr/share/doc/$TOPIC/$TOPIC.html | less -M
pankso@67 45 return
mojo@101 46 elif [ -x /usr/bin/retawq -a -f /usr/share/doc/slitaz-tools/$TOPIC.html ]; then
mojo@101 47 retawq --dump=file:///usr/share/doc/slitaz-tools/$TOPIC.html | less -M
mojo@101 48 return
pankso@139 49 elif [ -f /usr/share/doc/slitaz/$TOPIC.txt ]; then
pankso@139 50 # SliTaz tools/libraries documentation (man a like format)
pankso@139 51 less -M /usr/share/doc/slitaz/$TOPIC.txt
pankso@139 52 return
pankso@67 53 fi
pankso@67 54
pankso@67 55 for i in /usr/share/$LC_ALL/man$MAN_SECTION /usr/share/man$MAN_SECTION; do
pankso@67 56 if [ -f $i/raw-$TOPIC.* ]; then
pankso@67 57 i=$(ls $i/raw-$TOPIC.*)
pankso@67 58 case "$i" in
pankso@67 59 *gz) (zcat $i || unlzma -c $i 2> /dev/null) | less -M;;
pankso@67 60 *) less -M $i;;
pankso@67 61 esac
pankso@67 62 return
pankso@67 63 fi
pankso@67 64 if [ -x /usr/bin/retawq -a -f $i/$TOPIC.html ]; then
pankso@67 65 retawq --dump=file://$i/$TOPIC.html | less -M
pankso@67 66 return
pankso@67 67 fi
pankso@67 68 done
pankso@67 69
pankso@67 70 (wget -O - "http://mirror.slitaz.org/man/$SECTION/$TOPIC.html" || \
pankso@67 71 wget -O - "http://man.he.net/?topic=$TOPIC&section=$SECTION") 2> /dev/null | \
pankso@67 72 awk "BEGIN { s=0; n=0 } /<PRE>/ { s=1 } { if (s) { print; n++} } /<\/PRE>/ { s=0 } END { if (n == 0) print \"No manual entry for $TOPIC$MSG\" }" | \
pankso@67 73 sed -e 's/<[^>]*>//g' -e 's/&lt;/</g' -e 's/&gt;/>/g' -e 's/&amp;/\&/g' | less -M
pankso@67 74
pankso@67 75 exit 0