Google Chrome

Google Chrome はそのままで GreaseMonkey user script が利用可能、ということを mixi で聞いたもので早速三国志用の自作スクリプトを試したんですが、轟沈いたしました。

http://dev.chromium.org/developers/design-documents/user-scripts によると、

Known issues:

  • Chromium does not support @require, @resource, unsafeWindow, GM_registerMenuCommand, GM_setValue, or GM_getValue.
  • GM_xmlhttpRequest is same-origin only.

ということのようです。
Continue reading

E4X

GreaseMonkey の user script を書いていると、ちょこちょこと HTML を出力する必要に迫られます。

PHP の here document のようなズボラなことがやりたいんですけど、JavaScript でのやり方が分からず、イチイチ [cci]+[/cci] で連結していたんですが、行をまたぐこともできない(正確には行末に [cci]\[/cci] を付加してやればいいみたい。AppleScript の [cci]¬[/cci] のようなもの?)ので、かなりかったるかったわけです。

で、人様のコードを見ていたら、素でタグが埋め込んであって、便利そうなのでまねして見たけど、うまくいかなくて、その原因が分からず、ずっと放置していたんですが、今日ひょんなことから E4X という語を知り、急に世界が広がりました。 Continue reading

GreaseMonkey で JSON の扱いに関する問題

GreaseMonkey (Firefox) の場合、[cci_JavaScript]object.toSource()[/cci] でオブジェクトをシリアライズでき、[cci_JavaScript]GM_setValue()[/cci], [cci_JavaScript]GM_getValue()[/cci] を使って永続しています。
これはこれで問題がなかったんですが、[cci_JavaScript]object.toSource()[/cci] をシリアライズではなく、JSON 形式と誤認して PHP と組み合わせた結果、色々と問題を起こしました。

楽しようと思って使った JSON でかなりハマったので、メモしておきます。
Continue reading

Hello, GreaseMonkey script

知っている人は知っていると思いますけど、ブラウザ三国志、というゲームをやっております。mixi の。

で、困ったことがあって、それはなにかというと「建設中の建物がどれか分かりづらい」という問題なんですが、文句をいっても仕方がないので、GreaseMonkey script を書くことにしました。

Continue reading