pbtweet 開発版 1.5 0069

Operaサポートをちょっとやってみました。
http://pbtweet.blogspot.com/2009/09/pbtweet-dev-15-0069.html

動くってレベルならChromeとほぼコンパチなコードで動いちゃうことがわかったのはよかったな。
userscriptからのスコープがGreaseKit、Chrome/OperaGreaseMonkeyでちょっとずつ違う。
とにかくヌルいのがSafariのGreaseKit。これは匿名関数にする必要すらないザル環境なんでグローバルな関数を直接userscriptに書いておけばどこからでも参照できる。
次がChromeOperaで、user.js内で匿名関数の外側に書いた関数や変数は匿名関数の内側から参照できないからjsonpの処理をするような関数やオブジェクトをpbtweetでは外部スクリプトとして読み込んでいる。GreaseMonkeyはよくわからない。移植してるときに何か調べてとりあえず動く状態にしたけど普通の書き方ではスコープがなかったような気がする。

Opera版でちょっと困ってるのがCSS3のtransformationがないことかな。pbtweetではインターフェイスの表示、非表示などの制御にCSS3のtransformationを使ってる部分がいくつかあるんだけどこれがOperaで全く動いてないから設定パネルあたりは作り直し。それでもデバッガは動くしWebKitコードと将来的にはマージできそうなんで楽しんでやれてる。