普通なら、上記リンク先のことを実行すれば「code」コマンドが使えるはずなんですが、
私の場合は、「code」を実行すると以下のエラーが出て Visual Studio Code を起動できませんでした。
$ code File "<string>", line 1 import os,sys; print os.path.realpath(sys.argv[1]) ^ SyntaxError: invalid syntax /usr/local/bin/code: line 10: ./MacOS/Electron: No such file or directory
結論を先に言ってしまうと、実はこれ Python のバージョンの問題でした。
Python 3系だとエラーになる
まずは、以下のコマンドを入力して Python のバージョンを確認してみてください。
$ python -V Python 3.4.4 :: Anaconda custom (x86_64)
私は、pyenv で Python の管理をしているのですが、pyenv で anaconda3-2.3.0 を使用していて、そこで使われている Python のバージョンは 3.4.4 でした。
$ pyenv versions
system
2.7.8
3.4.2
3.5.0
* anaconda3-2.3.0 (set by /Users/hoge/.python-version)
エラーを修正する
ここで、もう一度「code」実行時のエラーを見てみましょう。
$ code File "<string>", line 1 import os,sys; print os.path.realpath(sys.argv[1]) ^ SyntaxError: invalid syntax /usr/local/bin/code: line 10: ./MacOS/Electron: No such file or directory
どうやら、print の構文エラーで怒られているようです。
実は。Python 3 では、print の仕様が変わっていて、print() にしないといけません。
なので、エラー箇所を修正します。
「/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code」
をエディタで開いて、以下の部分を変更します。
修正前: function realpath() { python -c "import os,sys; print os.path.realpath(sys.argv[1])" "$0"; } 修正後: function realpath() { python -c "import os,sys; print(os.path.realpath(sys.argv[1]))" "$0"; }
print() の書き方は、python 2系でも使用できるので、2系を使用している人も将来エラーが出て焦らないように変更しておくと良いと思います。
0 件のコメント:
コメントを投稿