0

そこで、劣ったPythonインタープリターの現在の仕事を終了する方法に関する技術的な質問があります。

通常、通常のコマンドシェルでインタープリターを実行すると、Czがそのトリックを実行します。これはpythonexitを呼び出し、実行中のものはすべて停止します。インタプリタプロセスはまだ生きています。

ただし、emacsでは、下位シェルでCzを押すと、undoコマンドが実行されます(CUAモードを使用します)。CUAを無効にすると、suspend-emacsコマンドが実行されます。私が欲しいのは、Czのバインドを完全に解除するか、Czを再マップして、通常のシェルの場合と同じように、実際にPythonにブレークシグナルを送信することです。私はこれらの残忍な方法を試しました:(global-unset-key "\ Cz")(global-unset-key [?\ Cz])

それらはどれも機能していないようで、Czはまだundoまたはsuspend /inconifyemacsとしてスタックしています。

また、通常のシグナルも試しました。下位シェルに送信できるシグナルはQUITだけです。これは、インタープリターとそのプロセス(Cc C-)を効果的に停止するため望ましくありません。信号STOPは機能しません。

何か案は?

4

1 に答える 1