2016-12-30 17 views
3

私は最新のarchlinuxで最新のemacs25.1.1を使用しています。しかしemacs ipythonを使用したときの乱雑なコード劣等のPython

、私はPythonスクリプトを編集し、Ctrlキーを押しながら入力します使用して劣るipythonにそれを送信するとき、劣っPythonは私のような醜い汚いコードtermial indicater示しています。プレスは、この中に入力した場合

Python 3.5.2 (default, Nov 7 2016, 11:31:36) 
Type "copyright", "credits" or "license" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

[JIn [1]: import numpy as np[26D 
[J 
[6n[JIn [2]: [8D[8C[8D[J[6n[JIn [2]: [8D[8C 

を劣っパイソン、それは示しています

error in process filter: Args out of range: " 
^[[6n^[[0m^[[0m^[[J^[[0;38;5;28mIn [^[[0;38;5;28m: ^[[8D^[[8C[[0m^[[0m", 128 

Iからemacsのロケールを変更します。

LANG=zh_CN.UTF-8 
LC_CTYPE="zh_CN.UTF-8" 
LC_NUMERIC=en_US.UTF-8 
LC_TIME=en_US.UTF-8 
LC_COLLATE="zh_CN.UTF-8" 
LC_MONETARY=en_US.UTF-8 
LC_MESSAGES="zh_CN.UTF-8" 
LC_PAPER=en_US.UTF-8 
LC_NAME="zh_CN.UTF-8" 
LC_ADDRESS="zh_CN.UTF-8" 
LC_TELEPHONE="zh_CN.UTF-8" 
LC_MEASUREMENT=en_US.UTF-8 
LC_IDENTIFICATION="zh_CN.UTF-8" 
LC_ALL= 

へ:

コマンド$ "輸出LANGUAGE =" en_USのと
LANG=en_US.UTF-8 
LC_CTYPE="en_US.UTF-8" 
LC_NUMERIC=en_US.UTF-8 
LC_TIME=en_US.UTF-8 
LC_COLLATE="en_US.UTF-8" 
LC_MONETARY=en_US.UTF-8 
LC_MESSAGES="en_US.UTF-8" 
LC_PAPER=en_US.UTF-8 
LC_NAME="en_US.UTF-8" 
LC_ADDRESS="en_US.UTF-8" 
LC_TELEPHONE="en_US.UTF-8" 
LC_MEASUREMENT=en_US.UTF-8 
LC_IDENTIFICATION="en_US.UTF-8" 
LC_ALL= 

:EN "& & emacsの" $、乱雑なコードを解決するためのヘルプなし。

また、emacsでpython-mode.etまたはelpyパッケージを試してみてください。すべて同じ のターミナルコードが表示されます。

Python 2.7.12 (default, Nov 7 2016, 11:55:55) 
Type "copyright", "credits" or "license" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

[JIn [1]: import numpy as np[26D 
[J 
[6n[JIn [2]: [8D[8C[8D[J[6n[JIn [2]: [8D[8C 

は、最新ipythonの問題です:

はさらに、python2.7も、何の仕事をしようとしたん?

で最後のemacsでメッセージはここに貼り付けます。

error in process filter: ansi-color-filter-apply: Args out of range: "Python 3.5.2 (default, Nov 7 2016, 11:31:36) 
Type \"copyright\", \"credits\" or \"license\" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

[6n[0m 
[0m[J 
[0m", 408 
error in process filter: Args out of range: "Python 3.5.2 (default, Nov 7 2016, 11:31:36) 
Type \"copyright\", \"credits\" or \"license\" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

[6n[0m 
[0m[J 
[0m", 408 
error in process filter: ansi-color-filter-apply: Args out of range: "[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m1[0;38;5;28m]: [0;38;5;28;1mimport[0m [0;38;5;32;1mnumpy[0m [0;38;5;28;1mas[0m [0;38;5;32;1mnp[26D[0m 
[J[0m", 177 
error in process filter: Args out of range: "[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m1[0;38;5;28m]: [0;38;5;28;1mimport[0m [0;38;5;32;1mnumpy[0m [0;38;5;28;1mas[0m [0;38;5;32;1mnp[26D[0m 
[J[0m", 177 
error in process sentinel: elpy-rpc--default-error-callback: peculiar error: "exited abnormally with code 1" 
error in process sentinel: peculiar error: "exited abnormally with code 1" 
error in process filter: ansi-color-filter-apply: Args out of range: #("[JIn [1]: import numpy as np[26D 
[J 


[6n[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m2[0;38;5;28m]: [8D[8C[0m[0m[8D[J[0m[6n[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m2[0;38;5;28m]: [8D[8C[0m" 0 38 (fontified nil) 38 39 (fontified nil)), 283 
error in process filter: Args out of range: #("[JIn [1]: import numpy as np[26D 
[J 


[6n[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m2[0;38;5;28m]: [8D[8C[0m[0m[8D[J[0m[6n[0m[0m[J[0;38;5;28mIn [[0;38;5;10;1m2[0;38;5;28m]: [8D[8C[0m" 0 38 (fontified nil) 38 39 (fontified nil)), 283 
+0

python-mode.elでチェックして、Emacs25.1:原因が他の場所にあるように見えます。 –

+0

[this](http://emacs.stackexchange.com/q/24453)で問題が解決しますか? – wlnirvana

答えて

0

を出力し、エラーメッセージから、いくつかの理由で、あなたのセットアップはipythonで使用されるANSIエスケープシーケンスを処理していないように思われます。あなたはpythong・モードを使用しているAssumiing、

(setq python-shell-interpreter "ipython" 
     python-shell-interpreter-args "-i") 

は、あなたの初期化ファイル内の他の可能な設定を排除するには、以下のあなたが持っていることを確認、私は上記以外のすべてをコメントアウトして、もう一度しようとするだろう。それが動作すれば、ipythonによって出力されているansi制御シーケンスを処理するemacsの能力を乱している設定があります。それでも動作しない場合は、バグレポートを記録する必要があります。

問題を回避するためにできることもいくつかあります。

  1. ipythonに--no-color-infoスイッチを追加してみてください。これにより、ipythonが出力する制御文字の数が減り、私の問題が制限されます。
  2. 下位プロセスとしてipythonではなくpythonだけを使用することを検討してください。あなたが見ている問題は、ipythonがansi制御文字を使ってより良いシェルを提供するためです。しかし、emacsは本当にあなたのシェルであり、emacsがインターフェースを処理してより簡単な下層シェルを使う方が良いかもしれません。
  3. Emacs Wikiは、強力なPython開発環境の設定方法についてかなり詳細な説明があります。単純なipython/pythonの劣ったプロセスを使うのが最も基本的なアプローチです。より完全な開発環境を得るために、他のパッケージのいくつかを使って時間を割くことをお勧めします。
+0

これはemacs25のバグだと思いますか?私はすべてのpythonの設定を.emacsでコメントしてから、M-x py-send-region-ipythonを実行すると、同じ問題が発生します。あなたの示唆を加え、問題はまだそこにあります。しかも、Pythonの劣ったものはうまく機能します。 – cwind

+0

これは単なるpython固有の設定ではないかもしれません。 ipython固有の設定以外のすべての設定をコメントアウトしてから再テストしてください。 Emacs 25.1は新しく異なるので、バグが可能です。しかし、これも多くのPython開発者が使用しているので、バグを見つけた可能性は設定ファイルのエラーと比べて小さいです。バグレポートを記録するには、emacs devsがそれを再現できるように最小限の設定を表示する必要があります。少なくとも1人のemacs 25.1ユーザーがあなたの問題を再現できないことを示すあなたの投稿にコメントを書き留めてください。ローカル設定の問題を示しています –

+0

@cwind emacs -Qからpython-mode.elを読み込んでバグレポートを送ってくださいまだ発生します。 –

関連する問題