File: 015-hman-urlencode.patch

package info (click to toggle)
man2html 1.6f%2Brepack-1%2Bsqueeze1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 3,416 kB
  • ctags: 2,894
  • sloc: ansic: 9,558; sh: 2,301; makefile: 343; perl: 335; awk: 305; lisp: 171; cs: 170
file content (47 lines) | stat: -rw-r--r-- 1,570 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Properly encode URLs given to browsers, so `hman index++' should work now (closes: #258027)

diff -ruN man-1.6c-old/man2html/hman.sh man-1.6c/man2html/hman.sh
--- man-1.6c-old/man2html/hman.sh	2004-07-27 22:27:22.000000000 +0200
+++ man-1.6c/man2html/hman.sh	2004-07-27 22:45:15.000000000 +0200
@@ -59,6 +59,11 @@
 	fi
 }
 
+urlencode() {
+	echo "$@" | perl -pe 'chomp(); s/([^A-Za-z0-9\ \_\-\.\/])/"%" . unpack("H*", $1)/eg; tr/ /+/;'
+}
+
+
 case "$HMAN_BROWSER" in
      lynxcgi)
 	HMAN_BROWSER=lynx
@@ -77,22 +82,22 @@
      0)   $HMAN_BROWSER "$CG/man2html" ;;
      1)   case "$1" in
 	    1|2|3|4|5|6|7|8|l|n)
-		$HMAN_BROWSER "$CG/mansec?$CG+$1" ;;
+		$HMAN_BROWSER "$CG/mansec?query=$1" ;;
 	    /*)
-		$HMAN_BROWSER "$CG/man2html?$1" ;;
+		$HMAN_BROWSER "$CG/man2html?query=`urlencode "$1"`" ;;
 	    */*)
-		$HMAN_BROWSER "$CG/man2html?$PWD/$1" ;;
+		$HMAN_BROWSER "$CG/man2html?query=`urlencode "$PWD/$1"`" ;;
 	    *)
-		$HMAN_BROWSER "$CG/man2html?$1" ;;
+		$HMAN_BROWSER "$CG/man2html?query=`urlencode "$1"`" ;;
           esac ;;
      2)   case "$1" in
             -k)
-                $HMAN_BROWSER "$CG/mansearch?$2" ;;
+                $HMAN_BROWSER "$CG/mansearch?query=`urlencode "$2"`" ;;
             *)
 		if [ "$2" = index ]; then
-		    $HMAN_BROWSER "$CG/manwhatis?$CG+$1"
+		    $HMAN_BROWSER "$CG/manwhatis?query=`urlencode "$1"`"
                 else
-		    $HMAN_BROWSER "$CG/man2html?$1+$2"
+		    $HMAN_BROWSER "$CG/man2html?query=`urlencode "$1 $2"`"
                 fi ;;
           esac ;;
      *)   echo "bad number of args" ;;