python-modeにはpy-execute-regionという関数があり、評価のためにPythonバッファにハイライトされたコード領域を送ります。評価の後、カーソルはPythonバッファにありますが、スクリプトバッファに残っていればより多くのコードを作成し続けることができます。私は簡単なアドバイス機能を書いた:python-mode関数のEmacs defadvice
(defadvice py-execute-region
(after py-execute-region-other-window activate)
""" After execution, return cursor to script buffer """
(other-window 1)
)
しかし、これはまったく何もしない。私は 'after'ではなく 'around'を使うような他の変種を試しました。変数をスクリプトのバッファ名に設定してから、そのバッファにpop-to-bufferして、そのようなものを入れます。失敗!私はこのことの仕組みが誰かに明らかであるかどうか疑問に思います...ありがとう!
ありがとうございます...しかし、まだ私のために動作しません。 defadviceの本体を(other-window 1)( "x"を挿入)に置き換えると、スクリプトバッファに "x"が置かれますが、カーソルはまだPythonバッファに残っています...非常に混乱します。 – hatmatrix
同じ機能に対して他のアドバイスが有効になっていますか? この時点で、私はプレーンなバニラemacs(emacs -q)を起動し、Pythonモードを読み込み、アドバイスを定義して起動し、まだ動作しないかどうかを確認します。何らかの奇妙な相互作用が起こっているかもしれません。 –