コード実行中にIpythonがハングアップする

専用の下位のipythonプロセスで評価するために、 python-mode でバッファからコードを実行すると、emacsがフリーズします。コードが評価されている間に、私がコードを送信したバッファを編集しようとすると、フリーズします。私はポイントを移動することができません、バッファを変更することができない、入力することができないと、モードラインの時間は更新されません。

これが起こるのを止めるために私は何ができますか?それは私のpythonシェルインタープリタの設定に関連することができますか?

ここに私のpythonのinitです

(use-package python
  :mode ("\\.py\\'" . python-mode)
  :interpreter ("ipython" . python-mode)
  :demand
  :config
  (setq python-shell-interpreter "ipython"
    python-shell-interpreter-args "-i"))

ありがとうございました!

1
追加された
ビュー: 4
私はまた、 use-package のユーザーですが、モードが組み込みの場合、Pythonを読み込むためには使用しません。/code>ファイルまたはバッファ。あなたのパスが正しく設定されていると仮定して、これはemacs 25.1で私にとってはうまくいきます。(setq python-shell-interpreter "ipython")
追加された 著者 alexp206,
どのemacsバージョンを使用していますか? emacs 25で正しく動作しています。elpyも試してみることができます。
追加された 著者 DogDog,
こんにちは、遅れて申し訳ありません。私のバージョンは、2016-01-04の GNU Emacs 25.1.50.1(x86_64-pc-linux-gnu、GTK + Version 2.24.28)です。私はそれがうまくいくように感じる。私は人々が引数として--pylabを追加することを見てきました
追加された 著者 Airsick,
それは私にとってはうまくいかなかった。例えば、単に "while True:2 + 2"というファイルを実行していて、実行中にそのファイルを編集しようとすると、キーボードを使ってemacsを解凍する必要があります
追加された 著者 Airsick,

1 答え

さて、私は問題が何であるかを考え出しました!私は1ヶ月以上前にこれを尋ね、最近解決しました。他の誰かがこの問題に遭遇した場合、私は彼らに解決策があることを知りたがっています。

この問題は、 eldoc-modeglobal-eldoc-mode から発生します。 Global-eldoc-mode はデフォルトではemacs 25でオンになっているので、これは永久的なバグであったにもかかわらず、emacs 24では問題ではありませんでした。問題は、emacsがeldoc-modeのためにプロセスから自動的にドキュメンテーションを要求するが、インタプリタがビジー状態であればハングアップするということだった。この問題は、gitのemacs-25ブランチで修正され、次のpretestとemacsのリリースに含まれます。

emacsは現在タイムアウトして、タイムアウトした場合には、eldocモードがドキュメントを要求するのを止めます。この機能は、 python-eldoc-function-timeout python-eldoc-get-doc および python-eldoc-function-timeout-permanent >。

乾杯

0
追加された