commit 264cb8387c5c81983b12459ece9ca3c1d4c1e4a8
parent 9a598a8a2a46dd4783b07413de0c92a1b444ee12
Author: ukai <ukai>
Date: Wed, 18 Dec 2002 16:48:02 +0000
[w3m-dev 03583] w3mman
* scripts/w3mman/README: W3MMAN_W3M, W3MMAN_MAN
* scripts/w3mman/w3mman.1.in: add ENVIRONMENT
* scripts/w3mman/w3mman.in: $ENV{'W3MMAN_W3M'}, $ENV{'W3MMAN_MAN'}
* scripts/w3mman/w3mman2html.cgi.in: $ENV{'W3MMAN_MAN'}
hyphenation
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
Diffstat:
5 files changed, 49 insertions(+), 5 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -1,5 +1,14 @@
2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * [w3m-dev 03583] w3mman
+ * scripts/w3mman/README: W3MMAN_W3M, W3MMAN_MAN
+ * scripts/w3mman/w3mman.1.in: add ENVIRONMENT
+ * scripts/w3mman/w3mman.in: $ENV{'W3MMAN_W3M'}, $ENV{'W3MMAN_MAN'}
+ * scripts/w3mman/w3mman2html.cgi.in: $ENV{'W3MMAN_MAN'}
+ hyphenation
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
* [w3m-dev 03582] add config options graphic_char and use_proxy
* NEWS: rc: graphic_char, use_proxy
* fm.h (Do_no_use_proxy): macro using use_proxy
diff --git a/scripts/w3mman/README b/scripts/w3mman/README
@@ -11,6 +11,13 @@ w3mman
w3mman [<section>] <command>
w3mman -k <keyword>
+環境変数
+
+ W3MMAN_W3M
+ 使用する w3m コマンドを指定します(デフォルトは w3m)
+ W3MMAN_MAN
+ 使用する man コマンドを指定します(デフォルトは man)
+
インストール
make install
diff --git a/scripts/w3mman/w3mman.1.in b/scripts/w3mman/w3mman.1.in
@@ -34,6 +34,13 @@ as MANPATH.
.B \-k " keyword"
Specify
.I keyword.
+.SH ENVIRONMENT
+.TP
+.B W3MMAN_W3M
+If W3MMAN_W3M is set, its value is used instead of @W3M@.
+.TP
+.B W3MMAN_MAN
+If W3MMAN_MAN is set, its value is used instead of @MAN@.
.SH FILES
.TP
.I @LIB_DIR@/w3mman2html.cgi
diff --git a/scripts/w3mman/w3mman.in b/scripts/w3mman/w3mman.in
@@ -1,7 +1,7 @@
#!@PERL@
-@W3M = split(' ', '@W3M@');
-$ENV{'MAN'} = '@MAN@';
+@W3M = split(' ', $ENV{'W3MMAN_W3M'} || '@W3M@');
+$ENV{'W3MMAN_MAN'} ||= '@MAN@';
$SCRIPT = 'file:///$LIB/w3mman2html.cgi';
sub usage {
diff --git a/scripts/w3mman/w3mman2html.cgi.in b/scripts/w3mman/w3mman2html.cgi.in
@@ -1,6 +1,6 @@
#!@PERL@
-$MAN = $ENV{'MAN'} || '@MAN@';
+$MAN = $ENV{'W3MMAN_MAN'} || '@MAN@';
$QUERY = $ENV{'QUERY_STRING'} || $ARGV[0];
$SCRIPT_NAME = $ENV{'SCRIPT_NAME'} || $0;
$CGI = "file://$SCRIPT_NAME";
@@ -89,6 +89,8 @@ open(F, "$MAN $section $man 2> /dev/null |");
$ok = 0;
undef $header;
$blank = -1;
+$cmd = "";
+$prev = "";
while(<F>) {
if (! defined($header)) {
/^\s*$/ && next;
@@ -147,11 +149,30 @@ EOF
s@(http|ftp)://[\w.\-/~]+[\w/]@<a href="$&">$&</a>@g;
s@(\W)(mailto:)?(\w[\w.\-]*\@\w[\w.\-]*\.[\w.\-]*\w)@$1<a href="mailto:$3">$2$3</a>@g;
- s@(\W)(\~?/[\w.][/\w.\-]*)@$1 . &file_ref($2)@ge;
- s@(include(<\/?[bu]\>|\s)*\<)([/\w.\-]+)@$1 . &include_ref($3)@ge;
+ s@(\W)(\~?/[\w.][\w.\-/~]*)@$1 . &file_ref($2)@ge;
+ s@(include(<\/?[bu]\>|\s)*\<)([\w.\-/]+)@$1 . &include_ref($3)@ge;
+ if ($prev && m@^\s*(\<[bu]\>)*(\w[\w.\-]*)(\</[bu]\>)*(\([\dm]\w*\))@) {
+ $cmd .= "$2$4";
+ $prev =~ s@(\w[\w.\-]*-)((\</[bu]\>)*\s*)$@<a href="$CGI?$cmd">$1</a>$2@;
+ print $prev;
+ $prev = '';
+ s@^(\s*(\<[bu]\>)*)(\w[\w.\-]*)@@;
+ print "$1<a href=\"$CGI?$cmd\">$3</a>";
+ } elsif ($prev) {
+ print $prev;
+ $prev = '';
+ }
s@(\w[\w.\-]*)((\</[bu]\>)*)(\([\dm]\w*\))@<a href="$CGI?$1$4">$1</a>$2$4@g;
+ if (m@(\w[\w.\-]*)-(\</[bu]\>)*\s*$@) {
+ $cmd = $1;
+ $prev = $_;
+ next;
+ }
print;
}
+if ($prev) {
+ print $prev;
+}
close(F);
if (! $ok) {
if ($query{'quit'}) {