日向夏特殊応援部隊

俺様向けメモ

だいぶ遅くなったけどMozReplについてのプレゼン資料を今更公開してみる

そういえば前にSoozy Conference #2でやったプレゼン資料を公開してなかったので、今日リクエストもあったので公開してみるです。

MozReplの実際の拡張例

ここら辺から漁ってくだしあ。
とにかくMozReplはむちゃくちゃ便利。拡張作る人は知らないとダメだお。
あとnsIInterfaceInfo辺りから、オンラインドキュメント漁らなくてもAPIの概観だけは掴むみたいな処理をいつか書きたいんだけど、チャレンジしてくれる人が居たらそれはそれで嬉しいです。
ご一報下さい。(ぇ

MozLab 0.1.8

MozLabが0.1.8になりました。
主だった変更は、

  • consoleへの出力文字列が長くてもOKになった。*1
  • Songbirdに対応した!ktkr!
  • 他のhostからの接続にも対応(デフォはOFF)
  • コマンドラインオプションで-replとつけるとMozReplが有効で立ち上がる

うん、いい感じ。

*1:前はバッファをオーバーしてる的なエラー出てた

MozReplのショートTIPS

ヒストリが使いたい

公式サイトにはsocatが推奨とあるけど、rlwrapのが便利。

カスタム関数を自分で定義したい

それrepl.load()で、

repl.load("file:///home/zigorou/.repl/custom.js", repl);

この場合だと多分、

with (repl) {
  // ここにロードしたスクリプトが入る
}

って感じだと思われるので、scopeに注意。
repl.home()で元のChromeWindowオブジェクトが取れるので、それを元に記述すると結構色々出来そうな予感。

repl.search()

repl.enter()でcontextを変更しないで、searchの第2引数に対象としたいオブジェクトを入れる。

repl.search(/^get/, window.top.getBrowser());

repl.enter()するとたまにおかしくなる*1ので、余り多様せずにrepl.search()はオブジェクトを指定して、
repl.look()の代わりにrepl.inspect()を直接叩く!

ってな訳で

Firebugも面白いけど、MozReplも面白いよと。さらに自分だけの拡張なんかも出来るんで、結構便利鴨。

*1:replオブジェクトが取れなくなる