22p2plus - 2chのスレッドをrep2で読むGreasemonkeyスクリプト
posted by nano on February 06, 2007 01:10
rep2を導入した記念に、以前つくった2229というGreasemonkeyスクリプトを、rep2のスレURL指定画面に移動できるように改変してみました。
そのままではたぶん使えないので、インストールしたら、Greasemonkeyの設定画面(Manage UserScripts)を開いてEditを押すと、Optionというのがあるので、そこを環境にあわせて変えてみて下さい。
(設定例)
// ==UserScript==
// @name 22p2plus
// @namespace http://nanokawa.net/archives/individual/2007/0206011016.php
// @description rep2, 29ch and MirrorHenkan lookup from 2ch threads.
// @include http://*.2ch.net/*
// @include http://*.bbspink.com/*
// ==/UserScript==
// version 0.01
//
//=Option:Set your rep2 url.========
var p2url = 'http://127.0.0.1/rep2/'
//==================================↑太字のぶぶんを、じぶんのrep2のトップページのURLがhttp://127.0.0.1/rep2/index.phpの人は上のように設定。
http://p2.2ch.net/p2/index.phpな人はhttp://p2.2ch.net/p2/など。
最後にスラッシュ(/)を忘れずに。

2chのスレッドを開くと、このような感じで表示されます。">>29ch" や ">>Mirror" は、にくちゃんねる、ミラー変換というログ保存やログ検索のサービスへのリンクになってます(にくちゃんねるは一部休止中)。

">>rep2"を押すと、rep2でそのスレッドを表示します。もしもスレッドがdat落ちしていた場合は、上のような画面になります。●を持っている場合は、[●IDでp2に取り込む]というのを押せば見られます。
(07.09.2009)
rep2をローカル(http://127.0.0.1/)に置いていてNoscriptを使用している場合、2ch(とbbspink)のスレッドからrep2に飛ぼうとした際にエラーが出ることがあるようです。これはABE(Application Boundaries Enforcer)という機能によるもの。
ABEは異なるサイト間でのPOSTやGETリクエストを遮断するセキュリティ機能のようなのですが、デフォルトではローカルに置かれたサイトへのリクエストを拒否するルールになっているために、2ch.net から rep2 に飛ぶことができなくなっているみたいです。
ABEをオフにすればエラーは無くなりますが、ABEをオンにしたままで22p2plusを利用したい場合は、次のように設定して下さい。
まず、Noscriptのオプション画面を開き、Advancedのタブ > ABEのタブ > RulesetsのSYSTEMの欄に移動します。
# Prevent Internet sites from requesting LAN resources.
Site LOCAL
Accept from LOCAL
Deny
↑ようになっていますので、Editのボタンを押し(メモ帳などのエディタで編集できます)。↓のように2行追加します。
# Prevent Internet sites from requesting LAN resources.
Site LOCAL
Accept from LOCAL
Accept GET from *.2ch.net
Accept GET from *.bbspink.com
Deny
あとは保存すれば、エラーが出なくなるハズです。