Sleipnir + Chrome Frameでの問題に挑んでみた

(追記 2010.11.01)
サービスの終了にともないファイル配布元が消滅したのでアップ。



途中まで書いてたのが飛んじゃったYO\(^o^)/
やる気が大幅ダウン↓↓したのできちんとは書き直しません(´・ω・`)

Chrome Frameの良いところ、悪いところ

先日、IEGoogle Chrome化するプラグインGoogle Chrome Frameが安定版になりました。


インストール作業(レジストリ編集あり)なんかはid:Kei_9さんがブログで触れられているので、そちらをどうぞ。


Chrome Frameの良いところは、おそらく今一番勢いのあるブラウザエンジンであるWebkitSleipnirで利用できるところでしょう。
特にJavascriptまわりがマーベラス!!


悪いところはSleipnirだとビューが真っ白なまま固まって(?)、ビューをクリックしないと上手く表示されないことが多々あるところですかね。

悪いところの解決

試行錯誤してみたところ、何とかクリアできたみたいなので晒します。
ただし、私の環境で上手く行ったからといって、他の環境での動作については保証できません。
また、改修する気も無いので文句言わない、泣かない、自分で努力するという方向でどぞ。


両方ともUserActionスクリプトですので、その辺動くようにはしておいてください。

同一タブ用スクリプト

現在のタブでChrome化します。
以下をコピペし、適当なファイル名(拡張子は".js")で保存。"<Sleipnir_dir>\plugins\scripts"に放り込んでください。
アクション名はファイル名になります。

URL = "javascript:(" + function() {

location.href = "gcf:" + document.URL;

} + ")()";
新規タブ用スクリプト

新たにタブを作って開きます。
上のスクリプトが必要です。
由々識さんのカスタムアクションを利用しますので、各自ダウンロード&解凍してください。
カスタムアクション (オリジナルファイルの転載・再配布)
ViewChromeFrame (上記利用UserActionスクリプト)


"カスタムアクション.js"を適当な名前にリネーム(拡張子は".js"のまま)してください。
そしたらエディタで開いて、次の場所を探します。*1

var macro = '';	//アクションを記入してください。


この部分を以下のように書き換えます。
◯◯の部分は上で作ったスクリプトのアクション名(=ファイル名)です。

var macro = '$NewWindow:{URI} $WaitBusy $Action:◯◯';	//アクションを記入してください。


書き換えたら保存して、"<Sleipnir_dir>\plugins\scripts"に放り込んでください。

問題?
  • なぜか、同一タブ用のファイル名によって新規タブ用のがエラー出る場合があるかもしれない。理由がわからないし気のせいかもしれないけど。*2
  • WikipediaTwitterは新規タブの方ではエラーになるっぽい。Javascriptあたりが関係してるのかも。

*1:2010/10/12時点のファイルでは15行目です

*2:うちのではtest用に作った"scf.js"なら問題なかったが、実用の"ViewChroeFrame.js"だと駄目だった。中身は同じなのに><