Преобразуйте Cz-ключ в inferior-python-mode для выхода из Python вместо emacs, приостановки или отмены - PullRequest
0 голосов
/ 07 декабря 2011

Итак, вот технический вопрос о том, как выйти из текущей работы интерпретатора нижнего питона.

Обычно C-z справляется, если я запускаю интерпретатор в обычной командной оболочке. Это вызывает выход Python, и все, что работает, останавливается. Процесс переводчика все еще жив.

Однако в emacs, когда я нажимаю C-z в нижней оболочке, он запускает команду отмены (я использую режим CUA). Если я отключу CUA, он запустит команду suspend-emacs. То, что я хочу, это либо полностью отсоединить C-z, либо переназначить C-z, чтобы фактически послать сигнал прерывания на python, как это было бы в обычной оболочке. Я попробовал эти жестокие способы: (глобальный unset-ключ "\ C-z") (глобальный unset-ключ [? \ C-z])

Кажется, что ни один из них не работает, а C-z все еще застрял как отменяющий или приостанавливающий / недействующий emacs.

Я также пробовал обычные сигналы: Единственный сигнал, который я могу послать в подчиненную оболочку - это QUIT, что нежелательно, так как это эффективно убивает интерпретатор и его процесс (C-c C-). Сигнал СТОП не работает.

Есть идеи?

1 Ответ

1 голос
/ 08 декабря 2011

При запуске подчиненного процесса вы обычно можете отправлять управляющие последовательности с префиксом C-c . Имея это в виду, попробуйте

C-c C-z

Что для меня связано с comint-stop-subjob.

...