![Emacs에서 쉘 명령을 실행할 때 문제가 발생합니다.](https://rvso.com/image/1259381/Emacs%EC%97%90%EC%84%9C%20%EC%89%98%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%A0%20%EB%95%8C%20%EB%AC%B8%EC%A0%9C%EA%B0%80%20%EB%B0%9C%EC%83%9D%ED%95%A9%EB%8B%88%EB%8B%A4..png)
XEmacs 23을 사용하고 있습니다.
쉘 명령을 실행하려고 시도했지만 M-! cmd RET
작동하지 않았습니다.
M-!
을 몇 번 눌러도 마이크로버퍼에 표시되지 않습니다 Alt+!
.
하지만 메뉴로 가서 옵션을 Tools
선택 하면 마이크로버퍼에 Shell Command...
기록되고 모든 것이 잘 작동합니다.M-!
여기서 문제는 무엇입니까?
참고: 저는 XMonad 창 관리자를 사용하고 있습니다. 키 바인딩에 영향을 미치나요?
답변1
Escape !또는 Alt+를 사용하여 !를 입력 할 수 있습니다 M-!
. + Escape !가 아닌 경우 창 관리자가 해당 키 조합을 리바운드했기 때문일 수 있습니다. + + 를 입력해 보세요 . 이것이 “M-! 실행…”, 키 조합은 표시된 명령에 바인딩됩니다. "Describe key" 프롬프트가 거기에 있으면 키가 Emacs에 전혀 전달되지 않는다는 의미입니다. 해결 방법으로 사용하거나 창 관리자 바인딩을 변경하세요.Alt!Ctrlh c Alt!Escape !
답변2
Ctrl- 를 입력하면 h f shell-command
다음과 같이 표시됩니다.
shell-command is an interactive compiled Lisp function.
It is bound to <f10>, M-!, <menu-bar> <tools> <shell>.
[...]
해당 목록에 표시되지 않으면 M-!
문제가 있는 것입니다 XEmacs
. 에서 다시 바인딩해 보세요 .emacs
.
Alt그렇지 않으면 에서 기본 키로 사용하는 것일 수 있으므로 XMonad
Windows(수퍼) 키를 사용하는 것이 좋습니다.