Edited at

Node.jsが必要なSublimeTextのプラグインで、Node.jsのパスが変わってしまったときの対処法

More than 3 years have passed since last update.

Node.jsの管理を、公式サイトのインストーラーからnodebrewに変更したときに、Node.jsのパスが変わってしまったため、SublimeTextのプラグイン「CSScomb」と「Autoprefixer」が使えなくなってしまいました。

パスを通し直せば解決する問題ですが、各プラグインで設定方法が異なったので、メモしておきます。

注:こちらは、以下の環境での設定です。

+ Mac OSX 10.10.5

+ Sublime Text3 Build 3083


Node.jsのパスを調べる

ターミナルを開き、

$ which node

と入力し実行すると、次の行に現在のNode.jsのパスが表示されます。

私の環境では、以下のような結果が表示されました。

/Users/ユーザー名/.nodebrew/current/bin/node

Node.jsの正しいパスが判明したので、こちらを各プラグインに反映させていきます。


CSScombの場合

SublimeTextを起動し、

Preferences → Package Settings → CSScomb → Settings-default

を開きます。

4行目の

"node-path" : ":/usr/local/bin",

が、Node.jsのパスですので、こちらを先ほど取得した正しいパスに変更して保存すればOKです。

Settings-defaultを変更したくなければ、

Preferences → Package Settings → CSScomb → Settings-User

に追加しても良いでしょう。


Autoprefixerの場合

「CSScomb」と同じようにSettings-defaultに記入してみましたが、「Autoprefixer」ではパスが通らなかったので、こちらはファイル本体を修正しました。

/Users/ユーザ名/Library/Application Support/Sublime Text 3/Packages/Autoprefixer/node_bridge.py

上記ファイルをテキストエディタで開き、14行目にある、

env['PATH'] += ':/usr/local/bin'

こちらを取得したパスに書き換え、保存します。

SublimeTextを再起動させると、パスが反映されます。