aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTatsuya Kinoshita <tats@debian.org>2015-07-31 10:07:31 +0000
committerTatsuya Kinoshita <tats@debian.org>2015-07-31 10:07:31 +0000
commitce2f7f56e92a4e79a4e7308f7baa901b4b7a8665 (patch)
tree98f5b293ed9bd21e1cdbd96908ce5feec56c6982
parentUpdate ChangeLog (diff)
parentmodified: Bonus/goodict.cgi, update to the current URL (diff)
downloadw3m-ce2f7f56e92a4e79a4e7308f7baa901b4b7a8665.tar.gz
w3m-ce2f7f56e92a4e79a4e7308f7baa901b4b7a8665.zip
Merge pull request #4 from yshl/goodict.cgi
update Bonus/goodict.cgi
Diffstat (limited to '')
-rwxr-xr-xBonus/goodict.cgi34
1 files changed, 24 insertions, 10 deletions
diff --git a/Bonus/goodict.cgi b/Bonus/goodict.cgi
index 8f443c1..5fb6581 100755
--- a/Bonus/goodict.cgi
+++ b/Bonus/goodict.cgi
@@ -1,14 +1,20 @@
#!/usr/bin/perl
# ~/.w3m/urimethodmap
-# e: file:/cgi-bin/goodict.cgi?%s
-# w: file:/cgi-bin/goodict.cgi?%s
-# j: file:/cgi-bin/goodict.cgi?%s
+# e: file:/cgi-bin/goodict.cgi?%s Englich-Japanese
+# w: file:/cgi-bin/goodict.cgi?%s Japanese-English
+# j: file:/cgi-bin/goodict.cgi?%s Japanese
+# a: file:/cgi-bin/goodict.cgi?%s All
+#
+# e:0:word start with word
+# e:1:word perfect match
+# e:2:word end with word
+# e:3:word search body text
+# e:6:word search title
+# e:word perfect match
-use NKF;
-#$mode = 0; # substring
-$mode = 1; # perfect match
-#$mode = 3; # search body text
+use Encode;
+use Encode::Guess qw/euc-jp utf8/;
$url = "http://dictionary.goo.ne.jp";
$_ = $ENV{"QUERY_STRING"};
if (/^e:/) {
@@ -17,14 +23,22 @@ if (/^e:/) {
$kind = 'je';
} elsif (/^j:/) {
$kind = 'jn';
+} elsif (/^a:/) {
+ $kind = 'all'
+}
+s@^[ewja]:@@ && s@^//@@ && s@/$@@;
+if (/^([01236]):/) {
+ $mode=$1;
+ s/^[01236]://;
+}else{
+ $mode="1";
}
-s@^[ewjs]:@@ && s@^//@@ && s@/$@@;
if ($_) {
s/\+/ /g;
s/%([\da-f][\da-f])/pack('C', hex($1))/egi;
- $_ = nkf("-e", $_);
+ $_ = encode("utf8", decode("Guess", $_));
s/[\000-\040\+:#?&%<>"\177-\377]/sprintf('%%%02X', unpack('C', $&))/eg;
- $url .= "/search.php?MT=$_&kind=$kind&mode=$mode";
+ $url .= "/srch/$kind/$_/m$mode"."u/";
} else {
$input = "w3m-control: GOTO_LINK";
}