Wenn ich emacsclient wie folgt über die Befehlszeile starte:
emacsclient -a '' -c "$@"
Es beginnt immer im Hintergrund (Terminalfenster über dem Emacsclient-Fenster), daher muss ich mit der Maus auf das Fenster klicken, um zu Emacsclient zu wechseln.
Es ist wirklich frustrierend. Kann ich emacsclient dazu bringen, den Frame zu fokussieren, der beim Aufrufen über die Befehlszeile angezeigt wird?
emacsclient
Glück1928
quelle
quelle
Antworten:
Möglicherweise können Sie
server-switch-hook
den Rahmen verwenden und anheben. Etwas wie:Wenn Sie sich dann nicht auf den neuen Frame konzentrieren, können Sie stattdessen Folgendes versuchen:
Wenn Sie einen Shell-Befehl zum Aufrufen eines Emacs-Frames benötigen (ohne eine oder mehrere zu bearbeitende Dateien anzugeben), können Sie dies auch über die Befehlszeile tun:
quelle
emacsclient -e '(raise-frame)'
Dieses Problem wurde auch als Problem gemeldet ( siehe Spacemacs-Problem Nr. 7078 ). Die Lösung, ein dort veröffentlichtes Wrapper-Skript zu verwenden, hat bei mir funktioniert. Der Vollständigkeit halber werde ich den Inhalt des Skripts hier hinzufügen:
Ich habe nicht genügend Reputationspunkte, um hier einen Kommentar abzugeben. Aber es wäre großartig, wenn Informationen darüber, wo die platziert werden
server-switch-hook
sollen, von @glucas zur Antwort hinzugefügt werden könnten. Am Ende habe ich keine seiner Lösungen dazu gebracht, ganz einfach zu funktionieren ...quelle