2017-11-20 1 views
0

나는 Elpy와 iPython을 사용하여 Emacs에서 파이썬을 사용한다. CC - - 나는 C와 파일에서 코드를 실행 C, 그러나 때때로 나는 과정 (키보드 인터럽트)를 종료하고 싶습니다. 동일한 단축키를 사용하여 프로세스를 종료합니다 (this question).이맥스에서 프로세스 파이썬 인터럽트 및 키보드 인터럽트를 호출하는 방법은 무엇입니까?

내 목표는 전체 파이썬 프로세스를 죽이는 것과 커널을 중단시키는 것 사이를 구별하는 것입니다. 위의 바로 가기를 사용하면 때로는 첫 번째 작업을 수행하고 때로는 두 번째 작업을 수행합니다. 나는 아직 단서를 발견하고 그것을 일반화하는 방법을 찾지 못하고있다.

그래서 질문은 : 파이썬 프로세스를 중지하는 방법과 커널을 중단하는 방법?

답변

1

난 그냥 프로세스에 인터럽트를 보낼 함수를 정의 할 것이다. 내가 anaconda-mode이 아니고, elpy이 아니므로 elpyprocess-buffer과 연결 되겠지만, python-modepython-shell-get-process-or-error이됩니다. 그런 다음 C-c C-a 키를 바인딩 할 수 있습니다 (예 : python-mode-map).

(defun my-interrupt() 
    "Send an interrupt signal to python process" 
    (interactive) 
    (let ((proc (ignore-errors 
       (python-shell-get-process-or-error)))) 
    (when proc 
     (interrupt-process proc)))) 
관련 문제