diff options
Diffstat (limited to '')
-rwxr-xr-x | Bonus/2ch.cgi | 6 | ||||
-rw-r--r-- | Bonus/README | 80 | ||||
-rw-r--r-- | Bonus/README.eng | 2 | ||||
-rwxr-xr-x | Bonus/goodict.cgi | 34 |
4 files changed, 68 insertions, 54 deletions
diff --git a/Bonus/2ch.cgi b/Bonus/2ch.cgi index 998c202..c52ad8d 100755 --- a/Bonus/2ch.cgi +++ b/Bonus/2ch.cgi @@ -63,7 +63,7 @@ for (0 .. ($lines - 1) / 100) { } $head .= "<a href=\"$cgi/l50\">ŐV50</a>\n"; print <<EOF; -Content-Type: text/html +Content-Type: text/html; charset=Shift_JIS EOF $i = 1; @@ -128,7 +128,7 @@ sub subback { $cmd = "mkdir -p $dir; $WGET -O $tmp $dat >/dev/null 2>&1"; system $cmd; print <<EOF; -Content-Type: text/html +Content-Type: text/html; charset=Shift_JIS EOF @ARGV = ($tmp); @@ -153,7 +153,7 @@ sub post { my $host = $1; my $sock = IO::Socket::INET->new("$host:80") or die; # retrieve posting cookie; this may not work - print "Content-Type: text/html\n\n"; + print "Content-Type: text/html; charset=Shift_JIS\n\n"; print $sock "HEAD /test/bbs.cgi HTTP/1.1\n", "Host: $host\n", diff --git a/Bonus/README b/Bonus/README index af019ce..7e7452c 100644 --- a/Bonus/README +++ b/Bonus/README @@ -1,30 +1,30 @@ 2ch.cgi [w3m-dev 03635] 2ch.cgi - 2ch dat ľɤߤ local CGI Ǥ + 2ch の dat を直読みする local CGI です。 - w3m file:/cgi-bin/2ch.cgi?http://pc.2ch.net/test/read.cgi/unix/1035755937/ + w3m file:/cgi-bin/2ch.cgi?http://toro.2ch.sc/test/read.cgi/unix/1185784998/ - wget κʬž(-c)Ȥޤ - ɤ dat ~/.w3m2ch/ ʲ¸ޤ - ߤϤǤޤ + wget の差分転送(-c)を使います。 + 読んだ dat は ~/.w3m2ch/ 以下に保存します。 + 書き込みはできません。 smb.cgi [w3m-dev 03634] smb.cgi - SMB ˥ local CGI Ǥ - nmblookup,smbclient ȤΤ sabma ȡ뤵Ƥ - ɬפޤ - ѥɤϡ - 1) ~/.w3m/smb ˥ѥɤꤵƤꡢ - smbclient -A ץȤʤ - smbclient -A ~/.w3m/smb ȤϤޤ - 2) Ķѿ PASSWD_FILE (ѥɤΤߤΥե) - ƤϡĶѿ PASSWD_FILE Ȥޤ - 3) ~/.w3m/smb ˥ѥɤꤵƤС - Ķѿ PASSWD_FD ȤäɸϷͳϤޤ - ɤˤ衢ޤɤǤϤʤΤ SMB(CIFS)ץȥ - Ǥ˾ + SMB にアクセスする local CGI です。 + nmblookup,smbclient を使うので sabma がインストールされている + 必要があります。 + パスワードは、 + 1) ~/.w3m/smb にパスワードが設定されており、 + smbclient の -A オプションを使えるなら + smbclient -A ~/.w3m/smb として渡します。 + 2) 環境変数 PASSWD_FILE (パスワードのみのファイル)が設定 + されている場合は、環境変数 PASSWD_FILE を使います。 + 3) ~/.w3m/smb にパスワードが設定されていれば、 + 環境変数 PASSWD_FD を使って標準入力経由で渡します。 + どちらにせよ、あまり良い事ではないので SMB(CIFS)プロトコルを + 喋る版を希望。 google.cgi @@ -32,49 +32,49 @@ google.cgi html2latex - HTMLʸLaTeX ѴޤRubyץȤǤԴǤ - ٤ˤΩĤ⤷ޤ + HTMLの文書をLaTeX に変換します.Rubyスクリプトです.不完全です. + ある程度の役には立つかもしれません. - ˡ + 使用法 html2latex file.html > file.tex - ֤Ƥͳ + ここに置いてある理由 - makeref ΤʼǤ :-) + makeref のための部品取りです :-) makeref - HTMLʸɤߡֹޤֹäʸ - ɸϤ˽ФǸˤΰϤޤRuby ץȤǤ + HTMLの文書を読み,アンカーに番号を振ります.番号を振った文書を + 標準出力に書き出し,最後にその一覧を出力します.Ruby スクリプトです. - ˡ + 使用法 makeref [-url base_url] [file] - -url: ʸURLꤷޤΰФȤˡURL - 䴰뤿˻Ȥޤ + -url: 文書のURLを指定します.リンクの一覧を出すときに,そのURLを + 補完するために使います. - Х + バグ - HTMLεҥߥ( < ǤϤʤ < Ȥ&... κǸ ; դʤ - )ȡỴʷ̤ˤʤ뤳Ȥޤ + HTMLの記述ミス( < ではなく < を使う,&... の最後に ; を付けない + 等)があると,悲惨な結果になることがあります. - Ⱦѥ(JIS X-0201)бƤޤ + 半角カナ(JIS X-0201カナ)に対応していません. htmldump - URL HTMLʸɤߡֹäɸϤ - Фޤ + URL からHTML文書を読み,アンカーに番号を振って整形し,標準出力に + 書き出します. - ˡ + 使用法 dumphtml [URL] - URL άȡ$WWW_HOME Ƥɤߤޤ + URL を省略すると,$WWW_HOME の内容を読みます. - Х + バグ - URL λؤʸHTMLǤʤä硤襤ʤȤˤʤޤ - makeref ȤäƤΤǡmakeref ޤǤʤʸɽ - Ѥˤʤޤ + URL の指す文書がHTMLでなかった場合,かわいそうなことになります. + makeref を使っているので,makeref がうまく処理できない文書の表示 + は変になります. diff --git a/Bonus/README.eng b/Bonus/README.eng index 2f7507d..f7b1b1c 100644 --- a/Bonus/README.eng +++ b/Bonus/README.eng @@ -3,7 +3,7 @@ [w3m-dev 03635] 2ch.cgi localcgi to read 2ch dat directly - w3m file:/cgi-bin/2ch.cgi?http://pc.2ch.net/test/read.cgi/unix/1035755937/ + w3m file:/cgi-bin/2ch.cgi?http://toro.2ch.sc/test/read.cgi/unix/1185784998/ It uses wget -c. `dat' files are recorded under ~/w3m2ch/. 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"; } |