cookutils diff web/cooker.cgi @ rev 815

cooker.cgi: add info support
author Pascal Bellard <pascal.bellard@slitaz.org>
date Wed Jul 06 19:05:12 2016 +0200 (2016-07-06)
parents c660416ff9f2
children 6c2d5b07b30b
line diff
     1.1 --- a/web/cooker.cgi	Wed Jul 06 16:57:55 2016 +0200
     1.2 +++ b/web/cooker.cgi	Wed Jul 06 19:05:12 2016 +0200
     1.3 @@ -112,6 +112,20 @@
     1.4  }
     1.5  
     1.6  
     1.7 +# Tiny texinfo browser
     1.8 +
     1.9 +info2html() {
    1.10 +	sed	-e 's|^\* \(.*\)::$|* <a href="#\1">\1</a>|' \
    1.11 +		-e '/^File: /s|(dir)|Top|g' \
    1.12 +		-e '/^File: /s|Node: \([^,]*\)|Node: <a name="\1"></a>\1|' \
    1.13 +		-e '/^File: /s|Next: \([^,]*\)|Next: <a href="#\1">\1</a>|' \
    1.14 +		-e '/^File: /s|Prev: \([^,]*\)|Prev: <a href="#\1">\1</a>|' \
    1.15 +		-e '/^File: /s|Up: \([^,]*\)|Up: <a href="#\1">\1</a>|' \
    1.16 +		-e '/^File: /s|^.*$|<i>&</i>|' \
    1.17 +		-e '/^Tag Table:$/,/^End Tag Table$/d'
    1.18 +}
    1.19 +
    1.20 +
    1.21  # Put some colors in log and DB files.
    1.22  
    1.23  syntax_highlighter() {
    1.24 @@ -277,6 +291,9 @@
    1.25  			if [ -d $wok/$pkg/install/usr/doc -o -d $wok/$pkg/install/usr/share/doc ]; then
    1.26  				echo "<a href='?doc=$PACKAGE'>doc</a>"
    1.27  			fi
    1.28 +			if [ -d $wok/$pkg/install/usr/info -o -d $wok/$pkg/install/usr/share/info ]; then
    1.29 +				echo "<a href='?info=$PACKAGE'>info</a>"
    1.30 +			fi
    1.31  			echo "<a href='ftp://${HTTP_HOST%:*}/$pkg/'>browse</a>"
    1.32  		else
    1.33  			if [ $(ls $wok/*$pkg*/receipt 2> /dev/null | wc -l) -eq 0 ]; then
    1.34 @@ -432,7 +449,7 @@
    1.35  			echo "<pre>No description for: $pkg</pre>"
    1.36  		fi ;;
    1.37  
    1.38 -	man=*|doc=*)
    1.39 +	man=*|doc=*|info=*)
    1.40  		type=${QUERY_STRING%%=*}
    1.41  		pkg=$(GET $type)
    1.42  		dir=$WOK/$pkg/install/usr/share/$type
    1.43 @@ -454,6 +471,10 @@
    1.44  		tmp="$(mktemp)"
    1.45  		docat "$dir/$page" > $tmp
    1.46  		[ -s "$tmp" ] && case "$type" in
    1.47 +		info)
    1.48 +			echo '<pre>'
    1.49 +			info2html < "$tmp"
    1.50 +			echo '</pre>' ;;
    1.51  		doc)
    1.52  			echo '<pre>'
    1.53  			case "$page" in