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§ion=$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/</</g' -e 's/>/>/g' -e 's/&/\&/g' | less -M |
pankso@67 | 74 |
pankso@67 | 75 exit 0 |