なぜ動作しないのだろう? sys.path
のように見えますが、設定をしなくても動作します。しかし、ここではブルートフォース修正のためのいくつかのアイデアがあります。
(1)次のスクリプトを実行して、numpyのロードパスを取得します。
import os
import numpy
print(os.path.dirname(os.path.dirname(numpy.__file__)))
(2)強制的にパスを追加するには、このようなjedi:server-args
を設定します。
(setq jedi:server-args
'("--sys-path" "THE/PRINTED/PATH/FOR/NUMPY"
"--sys-path" "THE/PRINTED/PATH/FOR/SCIPY"))
も参照してください:http://tkf.github.com/emacs-jedi/#jedi:server-args
編集1
@のsyohexの答えにあなたのコメントを読むあなたには、いくつかのインストール方法を混同のように、それが見えます。 jeid.elは、jedi.elが存在する場合は、そのディレクトリにvirtualenv "env /"を使用します。あなたがvirtualenvを持っているなら、el-getは自動的に "env /"を作成します。だから、あなたのシステムのインストールのような場合、あなたはこれを行うことにより、 "EVN /" を無視するJedi.elを指示する必要があります:
(require 'jedi)
(setq jedi:server-command (list "python" jedi:server-script))
も参照してください:http://tkf.github.com/emacs-jedi/#jedi:server-command
編集2
私はあなたの説明から何が起こっているのか分かりません。問題を絞り込む方法はいくつかあります。
jedi.elがインストールされているディレクトリにあるファイル名を指定して実行make tryout
(のような~/.emacs.d/el-get/jedi/
)。
これは、jedi.elの最小限の設定で、Emacsのプロセスをクリーンな状態(つまり、あなたの設定を読み込みません)で開きます。 numpyとscipyを完了できるかどうかを見てみましょう。
Emacsでnumpyとscipy をインポートできますか?あなたはEmacsとシェルで異なる環境変数を持つことができます。実行M-! python -c 'import numpy' RET
。これでエラーが出ない場合は問題ありません。
env/bin/python
を使用してnumpyとscipyをインポートできますか?それを行う最良の方法はEmacsからチェックすることです。
まず、jedi.elがインストールされているディレクトリ(例:C-x C-f ~/.emacs.d/el-get/jedi/ RET
)に移動します。
M-! env/bin/python -c 'import numpy' RET
を実行します。これでエラーが出ない場合は、numpyとscipyをインポートすることができます。
少なくとも1つでエラーが発生することを願っています。そうでなければ、別の可能性について考える必要があります。
出典
2013-02-06 00:37:45
tkf
emacs-jediをインストールしたときにel-getによって自動的にインストールされるepcとjediがあったとしても、私はそれらのフォルダにgit pullを実行して最新版があることを確認しました。私もargparseの最新バージョンを持っていると私に言ったargparse --upgradeをsudo pipにインストールしました。従属関係は最新のようですが、私はまだnumpyやscpipyの完了を得ていません。 – mike
ええと、私はepc 0.0.3とjedi 0.5b5を使います。 epc、jediのバージョンを確認してください。 – syohex