Vimperator で CoffeeScript

CoffeeScript が どんなものか使ってみたくなったので、組み込んでみた。


vimperator/coffee-script.js at master · caisui/vimperator · GitHub

  • :coffee で CoffeeScript 実行(heredoc 対応)
  • :source コマンド を CoffeeScript 読込に対応
  • plugin に 対応


使用するには、GitHub - jashkenas/coffeescript: Unfancy JavaScriptの extra/coffee-script.jsを~/vimperator/直下に置く必要があります。
(let coffeescript=path で任意の位置に変更できます。)

:coffee c="oneline";Array.forEach content.document.querySelectorAll(".#{c}"), (e)->e.classList.remove(c)

な感じで 実行できます。

coffee --test setTimeout (-> alert "test"), 100



(function() {
  setTimeout((function() {
    return alert("test");
  }), 100);
}).call(this);

のように 変換結果を echo します。



plugin ディレクトリに



のような Script を 放り込んでおけば起動時に読込ます。
ただし、読込順序はjavascript なpluginを全て読み込んだ後です。


また、 completer は注意が必要です。
completer は 返り値があると 挙動が変る(commands.jsのこの辺り)のでわざわざ最後にnullが必要になっちゃいます。


後、e4x が 通らないのでHelp が 書けません。