unDonutからSleipnirに乗り換えるために作ったuser.js
世間ではWindows版のSafariがでて話題になったりしてますが、僕は最近メインのWeb参照用ブラウザをunDonutからSleipnirに乗り換えました。
乗り換えの理由は、unDonutで使っていた機能が全て標準でまかなえることと、SeaHorseがあること。
でも、一個だけどうしても気になるところがあって、それは「全てのタブを閉じることができない」こと。すべてのタブを閉じても about:blank が開いている状態になってしまう。FirefoxやIE7も同じだけど、unDonutに慣れすぎたせいかすごく気になる。about:blankが白すぎるから。
そこで、以下のuser.jsを作ってみた。
// ==UserScript== // @name gray about blank // @namespace http://d.hatena.ne.jp/sawat/ // @description gray about blank // @author sawat // @include about:blank // ==/UserScript== var div = document.createElement("div"); with(div.style) { position: "absolute"; left = top = margin = padding = "0px"; width = height = "100%"; background="#7f7f7f"; borderStyle = "inset"; borderWidth = "2px"; borderTop = "1px solid #404040"; } window.document.body.style.margin = "0px"; window.document.body.style.overflow = "auto"; window.document.body.appendChild(div);
機能はabout:blankをグレーにして「何も開いていない」風を演出するだけ。でも、自分としてはすごく満足。これで心置きなく乗り換えられる。
なお、Firefox+Greasemonkeyでは上記スクリプトは機能しません。あしからず。
ちなみに、Sleipnir+SeaHorseはuser.jsの開発環境という視点でみると最悪。変更をいちいち再読み込みさせるのが面倒だし、さらにJavaScriptのエラーがどこにも表示されないのは致命的だし。なので、JavaScriptいじり用ブラウザは依然断トツでFirefoxです。Firebugとか便利すぎだし。
どうしてもSleipnir用にJavaScriptをいじらなきゃいけないときは、以下のようなonerrorハンドラを設定すると幾分マシになります。
window.onerror = function(message,file,num) { alert(file+" : " + num + "\n" + message); }