OSX MountainLion から Mavericks (DeveloperPreview5.1) に myOS を更新したため、動作が壊れているため、これは奇妙です。
SublimeText3プラグイン コードでPython3.3のsubprocess関数を使用します。ここで、サブプロセス Popenノード
p = subprocess.Popen(['node', '-v'],
shell=False,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
)
明らかに、私はすでに node をnvmでインストールしており、このコードは のコンテキストで実行されるため、zsh と bash の Path 設定でコマンドが確実に動作する/Applications/
ことをテストしました。node -v
実際、OSX MountainLion でコードを徹底的にテストしたので、問題はないと思いました。しかし、昨日、OSX を Mavericks(DeveloperPreview5.1) にアップグレードしたところ、コードにエラーが見つかりました。
FileNotFoundError: [Errno 2] No such file or directory: 'node'
コードを次のように変更したことを確認するには
p = subprocess.Popen(['git', '--version'],
shell=False,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
)
今回は、 の期待される結果が表示され git --version
ます。
したがって、明らかに、node
パスは SublimeText3 コンテキストで python3.3 によって何らかの形で認識されないと思いますが、パスが bash/zsh で機能していることを確認しました。
ここで質問する以外に私にできることは何もありません。お知らせ下さい。ありがとう。
編集:これは python3.3 + OSX Maverics のパス検出バグによるものだと思います
ノードのフルパスを指定すると、機能します。