Operaの "Block content" はFirefoxのAdblockほど賢くない

例えば http://ads.damead.jp/images/kudaran01.jpg をブロックしたいとする。kudaran01.jpg を含むWeb頁内で右クリック→ "Block content" に入り、 kudaran01.jpg をクリックすると、 http://ads.damead.jp/images/* が新たにフィルタルールに追加される(ワイルドカードを使わず http://ads.damead.jp/images/kudaran01.jpg だけをブロックしたい場合は Shift を押しながらクリックする)。

Operaのデフォルトの動作に任せておく限りはフィルタルールは上の2種類しか生成されないから不都合は無い。問題は "Block content" 時にフィルタルールを手動で書き換えてやった場合である(こういう操作が出来るように "Block content" 画面は作られている)。

例えば、 *.damead.jp/* などというものすごく緩いルールを既に書いてあったとする。当然ながら上の kudaran01.jpg もこれにマッチするのでブロックされている。これを解除しようとして "Block content" に入るとどうなるか。

"Blocked" の印の付いている kudaran01.jpg をクリック乃至Shift+クリックしてやると "Blocked" の印は外れる。だが実際にはこの際にOperaが行っているのは フィルタルール http://ads.damead.jp/images/*(或いはShiftを押しながらだったら http://ads.damead.jp/images/kudaran.01.jpg)を削除する動作だけである。

"Block content" から抜けてみると、たった今ブロック解除した筈の kudaran01.jpg は相変わらず表示されていない。以前設定した緩いルール *.damead.jp/* が相変わらず生きていて、それに引っ掛かってブロックされたままだからだ。

しかも「kudaran01.jpg がルール http://ads.damead.jp/images/* でも http://ads.damead.jp/images/kudaran.01.jpg でもなく *.damead.jp/* によってブロックされていたのであること」が、"Block content" 画面の何処を見ても載っていない。この点、FirefoxAdblockを使っている場合に較べて致命的に弱い*1。それがダメならせめていっそのこと「"Block content" 画面で kudaran01.jpg をクリックしてやっても "Blocked" 印が外れてくれない」とかになっていてくれたほうが「あぁ何か別のフィルタに引っ掛かっているのだな」と気付き易い分だけまだしも親切ではないか。ブロック解除できたフリだけするというのが一番タチが悪い。

*1:Adblockでは、どのコンテントがどのフィルタによってブロックされたかは "Show all blockable items" での一覧表示に明示されている。