症状
Sublime Text 3を起動したときにプラグインの読み込み中にImportErrorが発生した場合の対処法です。先日、Sublime Text 3を起動すると、起動時に見かけないエラーが発生していることに気付きました。私はMaterial Themeを使用しているのですが、これを読み込む際に下記のようなエラーが発生しました。アップデート後から発生したと記憶しています。この記事では下記エラーの対処法を記載致します。
ImportError: No module named 'yaml'
環境
- OS Windows10 Home x64
- Sublime Text3 build 3143 x64
- Material Theme v4.1.4
対処方法
Sublime Textがインストールされたディレクトリにあるpython3.3.zip
(Sublime Text 3の場合)へ不足しているライブラリを追加することで解決できます。今回のエラーへの具体的な対処法は次の通りです。
- ここから https://pypi.python.org/pypi/PyYAML 使用状況に合わせてライブラリの入ったファイルをダウンロードします。
- 私の場合は
PyYAML-3.12.win-amd64-py3.5.exe
をダウンロードしました。
- 私の場合は
- ダウンロードしたファイルを解凍してyamlのディレクトリごと
python3.3.zip
の中へコピーします。
以上です。この操作の後、Sublime Textを再起動すると上記のエラーはなくなります。
経緯
Sublime Textは独自でPythonをpython3.3.zip
から使用していますが、初めはPythonをインストールしているPCであればそこで使われているライブラリを勝手に使ってくれるものだろうと想像して、外部からの自動読み込みを実現するためにいろいろ試してみましたが、エラーの解消には至りませんでした。そこで、第2案としてpython3.3.zip
へのライブラリの直接の追加、今回の場合はPyYAMLを追加することで解決に至りました。同じ方法でSublime Text 2へも対応できるかもしれませんが、これについては試していません。もしも同様の問題で困っている方がおられるのならこの内容がお役に立てばと投稿しました。