先日開催された Kyoto.js #5 で LT をしてきました.
crxel
Emacs から Google Chrome を操作する crxel というライブラリを作っているので発表しました. 今回の発表ではこのライブラリを使ったデモとして
- Emacs から Google Chrome のタブを Anything で切り替える anything-chrome-tabs.el と,
- Emacs のカーソル下のシンボルをバックグラウンドで google 検索する google-eldoc.el
を紹介しました. google-eldoc.el は全く役に立たないのですが, Emacs の操作にフックして Google Chrome を操作できると何か便利なことができそうな気がしています.
Motivation
Emacs には既に swank-js という Emacs から javascript の repl などが使えて javascript を使ったページを便利に開発できるものがあります. これは node.js で立てた WebSocket サーバに, ページ中の javascript から接続しておいて, Emacs から node.js のプロセスに送信した文字列をページ内で eval
することで実現しています.
今回作った crxel もほぼ同じ仕組みで, javscript の コードはほとんど swank-js から流用させてもらっています. crxel は Emacs で直接 WebSocket サーバを立てている点と, Emacs から Google Chrome を操作することを目的にしている点が swank-js と異なっています.