ATOM上でコードの実行ができるScriptを使ってみようとしたところ、Rubyは実行できたがJS,CoffeeScriptは実行できなかった。
Script:https://atom.io/packages/script
環境
- Mac OS X Yosemite(10.10.2)
- Node 0.11.12
- ATOM 0.181.0
- Script 2.18.0
エラー内容
Failed to spawn command coffee. Make sure coffee isinstalled and on your PATH
原因
調べたところnodeのPATHが通っていないことが原因っぽい。
- Nodeのパスはターミナル等で
echo $NVM_BIN
と打てば確認できる。(nvm使ってる場合) - ATOMのPATHはDeveloper Toolsで
process.env.PATH
と打てば確認できる。Developer ToolsはCmd + option + iまたはメニュー[View → Developer → Toggle Developer Tools]で開ける。 - 1のパスが2に含まれているかを確認。
対応
とりあえずの対応としては、
https://github.com/AtomLinter/Linter/issues/150#issuecomment-75265883
のようにinit.coffeeでPATHを通せばOK。
nvmを使っていれば↓のような感じ。
init.coffee
process.env.PATH = ["/Users/xxx/.nvm/v0.11.12/bin", process.env.PATH].join(":")
ちなみにinit.coffeeはメニューから[Atom → Open Your Init Script]で開ける。
この対応はnvmの利点が活かせてないので、あまりよくないです。 process.env.NVM_BIN
が参照できればいいんですが、分からなかった。。。