node.jsの本を読んでいてふとEmacsからnode.jsでjavascriptを実行できたら便利と思いelispを書いてみました。popwin.elが必要です。それとv8-optionをhelmで表示するようにしたのでhelmもあると便利かもしれません。
インストール
el-getを利用していれば以下のコードでel-get-installできると思います。
もし利用していなければ、git cloneでクローンしてロードパスを通してください。
(app-to-list 'el-get-sources
(:name node-console
:type git
:url "https://github.com/yuutayamada/node-console"
:load-path "./"))
ロードパスを通したら、以下のコードを.emacsなどに設定します。
js2-modeの部分は利用しているjavascript-modeのメジャーモード名に変えてください。
またキーバインドも好きなものに変えてください。
(require 'node-console)
(eval-after-load "js2-mode"
'(progn
(define-key js2-mode-map (kbd "C-c C-c") 'node-console)))
利用法
node-consoleコマンド
nodeで-eオプションでコマンドの実行ができるので、Emacsで範囲選択している場合、
その範囲を実行します。
範囲選択していない場合は、そのバッファが.jsで終わる名前かnode-console-javascript-modeで指定したmajar-mode名の場合そのファイルをnodeで実行します。
C-uを押したあとnode-consoleコマンドを実行すると
helmで指定できるv8-optionsを表示します。
node-console-v8-optionsで何かしていれば色が変わります。
アクションを実行するとそのoptionのつけはずしができます。
helmでなんかやってみたかっただけなので、ちょっと微妙です。
optionを見るのにはいいかも。。。
TODO
NODE_ENVとかNODE_PATHとか読み込んだほうがいいのか迷い中。
http://d.hatena.ne.jp/Jxck/20120410/1334071898 このサイト見るとpackage.jsonの
中のscriptに書く場合もあるもよう。
node.jsやjavascriptの習慣に疎いので、よくわからにゃい。。。