蒼い海に溺れて2nd season

なんとなく作ってみたけど、しばらく様子見

Greasemonkey用スクリプトurl_breaker_plusの問題点

url_breakerにはGreasemonkeyスクリプト版のurl_breaker_plusと言うものがあります。*1拡張機能Greasemonkeyスクリプトとして提供しているものです。だけどこれにはいくつか問題点がある。

1 XHTMLなどの表示が一部おかしくなる

ロケーションバー(IEで言うアドレスバーね)にabout:mozillaとでも打ち込んでみてください。正常な状態であればここには赤っぽい背景に白抜き文字でThe Book of Mozilla云々、聖書の一説が表示されます。
これがurl_breakerを有効にするとCSSが効かなくなってしまう。白背景に黒と言う、悪い意味でとてもシンプルな表示です。
この原因は単純。style要素の中にあるCSSの中へ<wbr>タグが挿入されてるんです。XHTMLはstyle要素でCSSを埋め込むときCSS内容をコメントアウト化しないから、スクリプトが誤って本文と認識してしまうのでしょう。

<style type="text/css">
html {
  background: maroon;
  color: white;
  font-style: italic;
}
</style>

2 JavaScriptの動作を妨げる不具合がこれにもある

url_breaker_plusは基本的な仕組みがurl_breakerと同じらしいのでWikipediaを表示したときの不具合はこちらでも発生します。エラーコンソールがエラーを返さないけど展開表示が出来ません。もう何と言うか、華麗なる不具合です。

3 問題の解決策

Greasemonkey版の解決策は芸の少ない自分ことまりんぶるーでも分かったりする。1番の解決策は小文字のstyle属性をスルーさせること、2番の場合はja.wikipedia.orgのページでスクリプトを実行させないこと。
てなわけでurl_breaker_plus.user.jsへ勝手に手を加えたものをアップしてみた。基本的な機能は何も変わらず不具合だけを回避した代物。
ちなみにバグとか何とか報告されてもまりんぶるーのスキルでは対処できないから報告しないでね(笑)

*1:厳密に言うとurl_breakerはGreasemonkeyスクリプトを単体の拡張にしたものだって言うのがリンク先に書いてあるけどね。