node.jsのためのvimのプラグイン・設定まとめ(2014年1月)
VimAdventCalendar2013 の51日目の記事です。 昨日は@lisiaさんの私とvimでした。素敵なお話。(関西の方のようなので、仲良くさせてもらいたい。。)
今日は、筆者がこれからの開発でnode.jsを使うことになりそうなので、開発が捗るvimのプラグインや設定を紹介します。
プラグイン
pangloss/vim-javascript
javascriptのsyntaxとindentをよしなに調整してくれる。
jelera/vim-javascript-syntax
syntaxは上記よりもこちらを使っています。なんとなくですが綺麗。
kchmck/vim-coffee-script
上記と似ているが、こちらはcoffescript用 coffeescriptのコンパイルもできるみたいだが、それは使っていない(理由は後述) vimのバージョンが7.4以上じゃないと動かないので注意
moll/vim-node
railsの開発に必須なvim-rails
のnode.js版
requireしてるファイルをgf
で開けたりnode.jsの開発がいろいろ捗る(らしい)
パスの解決にpackage.json
を使うみたいだが、ちょっとまだよくわかっていない。
設定
インデント
上記のプラグインで、インデントを綺麗にしてくれる。
だけど、デフォルトだとタブでインデントされてしまうのでcoffeescriptの仕様に合わせてインデントは半角スペース2つにしておく。(javascriptも)
ちなみに、上記のプラグインを読み込んでおくと.json
のfiletypeもjavascriptになる。
autocmd filetype coffee,javascript setlocal shiftwidth=2 softtabstop=2 tabstop=2 expandtab
coffeescriptのコンパイル
kchmck/vim-coffee-scriptの機能でバッファを保存したらコンパイルということもできるが、毎回コンパイルするのも意味がないので、他の方法を考えた。(参考:compile-coffeescript-snippets) 結論は、coffeescriptをコンパイルして、node.jsを起動するエイリアスを作った。
alias node-coffee='coffee --compile --output js coffee && node'
これで、$ node-coffee js/app.js
とすれば、./coffee
以下のcoffeescriptを全てコンパイルして./js
書き出す。あとは起動したいjsを指定すればOK。
今日はここまで。
moll/vim-node
のパス解決に必要なpackage.jsonの書き方はこれから調べます。まとまったら、また書きます。