![Problem beim Ausführen eines Shell-Befehls in Emacs](https://rvso.com/image/1259381/Problem%20beim%20Ausf%C3%BChren%20eines%20Shell-Befehls%20in%20Emacs.png)
Ich verwende XEmacs 23.
Ich habe versucht, einen Shell-Befehl auszuführen, M-! cmd RET
aber es hat nicht funktioniert.
M-!
erscheint nicht im Mikropuffer, egal, wie oft ich drücke Alt+!
.
Wenn ich aber zum Tools
Menü gehe und Shell Command...
eine Option auswähle, wird M-!
in den Mikropuffer geschrieben und alles funktioniert einwandfrei.
Was ist hier das Problem?
HINWEIS: Ich verwende den Fenstermanager XMonad. Beeinflusst dies die Tastenbelegung?
Antwort1
Escape !Sie können entweder oder Alt+ verwenden, !um einzugeben M-!
. Wenn Escape !aber nicht Alt+ !, liegt das wahrscheinlich daran, dass Ihr Fenstermanager diese Tastenkombination neu gebunden hat. Versuchen Sie, Ctrl+ h c Alt+ einzugeben !. Wenn „M-! läuft …“ angezeigt wird, ist die Tastenkombination an den angegebenen Befehl gebunden. Wenn die Eingabeaufforderung „Taste beschreiben“ einfach nur da steht, bedeutet das, dass die Taste überhaupt nicht zu Emacs gelangt. Verwenden Sie dies Escape !als Workaround oder ändern Sie die Bindung Ihres Fenstermanagers.
Antwort2
Geben Sie Ctrl- ein. h f shell-command
Es sollte ungefähr Folgendes lauten:
shell-command is an interactive compiled Lisp function.
It is bound to <f10>, M-!, <menu-bar> <tools> <shell>.
[...]
Wenn M-!
es nicht in der Liste erscheint, liegt ein Problem mit vor XEmacs
: Versuchen Sie, es in Ihrem erneut zu binden .emacs
.
Andernfalls kann es sein, dass diese als Haupttaste Altverwendet wird . Ich schlage vor, hierfür die Windows-Taste (Supertaste) zu verwenden.XMonad