Web ブラウザの可能性

もう随分前から公開されているものの様ですが、恥ずかしながらつい最近、これを知りました。

  Web Development Bookmarklets

この中でも特にインパクトがあったのが JavaScript Shell ですね。
これが Bookmarklet でできてしまうのですから、いやはや凄いもんです。Firefox 限定というのがちょっと難ですけど。


そして、どうせ Firefox 限定ならば、と、Extension Developer もあります。これだと、JavaScript Shell が余分な要素のない別ウィンドウで実行され、パネルとして利用できるイメージになるので、更に使い易いですね。
但し、Bookmarklet からの起動と異なり、実行コンテキストが shell のコンテキストになってしまうのでコンテキストの切り換えが必要になりますが、JavaScript の世界なのでそんなに面倒なことではありません。まあ、そもそもが Extension の開発のためのものなので、Firefoxchrome へのアクセスが可能である必要がありますから。
それに、enumerateWindows() なんて関数も用意してくれていて、タブ上に読み込まれているページのオブジェクトも簡単に見付けられる様になっています。scope() はちょっとおかしな動作になる様ですが…… (Firefox の仕様変更で、XPCNativeWrapper によるラップが施される様になったのに対応していないみたいです。window オブジェクトを明示的に取り出せば問題なし)


この JavaScript Shell で強く感じたのが、Web ブラウザの更なる可能性でしょうか。Firefox にも CUI (テキストコマンド機能?) が搭載されるという話もありますが、ブラウザ上でのコンソールライクな処理、しかも、それは単純にブロック要素を追加しているだけ (常に末尾は textarea を含むブロック要素で固定) という発想なだけで、ことさら難しいことをしている訳ではないんですよね……


Web 関連の周辺技術の変化は凄まじいです。これで Comet が実用的になったら、Ajax から更にパラダイムシフトということになるんでしょうか。