私は過去 2 週間、python コーディングに emacs を使用していませんでしたが、それまでにはすべて完璧でした。ジェダイを含め、セットアップは完全に機能していました。
2 日前virtualenvwrapper
に python ( pip install virtualenvwrapper
) にインストールしましたが、2 週間から今日までの python インストールで変更されたのはこれだけです。私のemacsのインストール/セットアップでは何も変わっていません。まったく何もありません。今日、2 週間ぶりに Python でコーディングを開始しようとしましたが、ターミナルに入力すると、ウィンドウemacs test.py
に次のエラー メッセージが表示されました。emacs
Error (jedi): Failed to start Jedi EPC server.
*** You may need to run "M-x jedi:install-server". ***
This could solve the problem especially if you haven't run the command yet
since Jedi.el installation or update and if the server complains about
Python module imports.
deferred error : (error Server may raise an error : Traceback (most recent call last):
File "/Users/javier/.emacs.d/.python-environments/default/bin/jediepcserver", line 5, in <module>
from pkg_resources import load_entry_point
File "/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 21, in <module>
import io
File "//anaconda/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so
Expected in: dynamic lookup
jedi
これは私が1年前にインストールした方法です:
1-最初に、ここのjedi installationの指示に従いました。ちなみに、もちろんPythonにはすでにインストールされていますepc, argparse, jedi
。virtualenv
2-メルパのジェダイパッケージが更新されていないことをどこかで読みました(どこか思い出せません)。これは私には奇妙に聞こえましたが、直接ダウンロードすることにし、github のjedi-githubおよびpython-environment-githubからjedi
もダウンロードすることにしました。私はそれらをに置きましたpython-environment
~/.emacs.d/emacs-jedi/
~/.emacs.d/emacs-python-environment/
3-次に、次のようにしてセットアップしjedi
ます。
;;Standard Jedi.el setting (read readme-jedi at .emacs.d/)
(add-to-list 'load-path "~/.emacs.d/emacs-jedi/")
(add-to-list 'load-path "~/.emacs.d/emacs-python-environment/")
(add-hook 'python-mode-hook 'jedi:setup)
(setq jedi:complete-on-dot t)
4-私はemacsで実行します:M-x jedi:install-server
そして、これは今日までの 1 年間、私にとってはうまくいきました!.
もちろん、これを解決するための最初の試みとして、エラーメッセージが示唆したことを正確に実行し、(再度)実行しましたM-x jedi:install-server
。その後、次のエラーが発生しました。
Running: pip install --upgrade /Users/javier/.emacs.d/emacs-jedi/...Done
deferred error : (error Process [/Users/javier/.emacs.d/.python-environments/default/bin/pip] exited abnormally : Traceback (most recent call last):
File "/Users/javier/.emacs.d/.python-environments/default/bin/pip", line 7, in <module>
from pip import main
File "/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/site-packages/pip/__init__.py", line 13, in <module>
from pip.utils import get_installed_distributions, get_prog
File "/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/site-packages/pip/utils/__init__.py", line 14, in <module>
import zipfile
File "//anaconda/lib/python2.7/zipfile.py", line 6, in <module>
import io
File "//anaconda/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so
Expected in: dynamic lookup
この後、および他のいくつかの試みの後、メルパを使用してすべてを再インストールすることにしました。(つまり、次のjedi-installation)。次に、実行するM-x jedi:install-server
と、前に説明したものと非常によく似たエラーメッセージが表示されました。
Making completion list...
Running: pip install --upgrade /Users/javier/.emacs.d/elpa/jedi-core-0.2.5/...Done
deferred error : (error Process [/Users/javier/.emacs.d/.python-environments/default/bin/pip] exited abnormally : Traceback (most recent call last):
File "/Users/javier/.emacs.d/.python-environments/default/bin/pip", line 7, in <module>
from pip import main
File "/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/site-packages/pip/__init__.py", line 13, in <module>
from pip.utils import get_installed_distributions, get_prog
File "/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/site-packages/pip/utils/__init__.py", line 14, in <module>
import zipfile
File "//anaconda/lib/python2.7/zipfile.py", line 6, in <module>
import io
File "//anaconda/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/javier/.emacs.d/.python-environments/default/lib/python2.7/lib-dynload/_io.so
Expected in: dynamic lookup
要約すると、この段階では、元のインストールからファイルまたはディレクトリに変更はありません。.emacs
.emacs.d
過去 2 日間に私の python パッケージのインストールに加えられたすべての変更は、単純にvirtualenvwrapper
. この段階で、私はかなり迷っています。どんな助けでも大歓迎です。
お時間をいただきありがとうございます。