때때로 나는 M-! some_command
명령이 예상보다 오래 실행되고 emacs를 오랫동안 잠깐 동안 유지한다는 것을 알게되었습니다. 그래서 나는 얼어 붙은 이맥을 빙글 빙글 사용 M-& some_command
하고 사용하지 않기 위해 스스로를 차고 M-&
다음 에 사용할 것을 약속 합니다. 그러나 M-!
수십 년 동안 내 근육 기억 속에있다… 물론 물론 Ctrl-G
, 그러나 명령을 깨고 다시 실행하는 것이 바람직하지 않은 경우가있다 (아마도 sth를 깨뜨릴 수도 있고, 아마도 다시 실행하는 데 비용이 많이 든다).
쉘 konsole 바로 비슷한 실수를 해결하려면 사소한, Ctrl-Z
, bg
및 작업은 백그라운드에서 실행됩니다.
emacs에는 현재 실행중인 포 그라운드 (동기식) 명령을 백그라운드 화 된 (비동기식) 명령으로 바꾸는 방법이 있습니까?
참고 : 기본값으로 불가능한 경우 다른 M-!
것으로 리 바인드하는 방법에 대한 제안에 개방적 M-!
입니다 (이 트릭과 기능적으로 동등한 것).
M-!
할 수 async-shell-command
있습니다. :-) 당신이 잃는 유일한 것은 에코 영역이 충분히 짧을 때 출력을 얻는 것입니다.
async-shell-command
. 문자열 &
끝에를 추가 COMMAND
하고 실행 shell-command
합니다.
&
일반shell-command
(M-!
) 끝에 단순히를 추가하면 비동기식이 된다는 것을 알고 싶을 것입니다. 물론 명령을 실행하기 전에이 작업을 수행해야하지만 최소한 동일한 키 바인딩을 사용할 수 있습니다.