1
新しいフレームにPythonインタプリタ(IPython)を起動し、IPythonインタプリタで前のバッファの内容を実行するELisp関数を記述します。私はEmacs 23.3.1、python-mode 6.0、ipython.elを使っています。 Emacs Lisp:新しいフレームを開き、IPythonを起動し、前のバッファを実行します。
はここで、これまでの私の機能です:- IPythonが正常に
py-shell
経由で開始します:(defun python-run() "Use to run Python programs." (interactive) (let (my-buffer-name buffer-name) (select-frame (make-frame)) (set-frame-size (selected-frame) 90 60) (py-shell) (delete-other-windows) (switch-to-buffer my-buffer-name) (py-execute-buffer)))
出力は、ということです。
- フレームにはまだ2つのウィンドウがあります。希望するウィンドウはありません。それが正常にバッファを実行していない
- 、出力は次のようになります。
In [1]: execfile(r'/var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-/python-26368Zoi.py') # PYTHON-> MODE --------------------------------------------------------------------------- IOError Traceback (most recent call last) /Users/ben/ in() ----> 1 execfile(r'/var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-/python-26368Zoi.py') # PYTHON-> MODE IOError: [Errno 2] No such file or directory: '/var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-> /python-26368Zoi.py' In [2]: ## working on region in file /var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-/python-> 26368fXv.py... execfile(r'/var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-/python-26368fXv.py') # PYTHON-MODE File "/var/folders/so/sox1TODiEE0hAb6AVusYq++++Tc/-Tmp-/python-26368fXv.py", line 1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ^ SyntaxError: invalid syntax
単一のウィンドウやバッファのいずれかを取得する方法上の任意の考えを実行しますか?ありがとう!
ありがとうございます。それは今の作品のようなものです。最初にpython-runが呼び出されたとき、py-execute-bufferを実行しようとすると失敗しますが、次回は動作します。 – Ben