Angenommen, ich bin in Emacs im Terminal (M-x Begriff), und ich listet die folgenden Dateien im aktuellen Verzeichnis auf:
text_code.R
Jetzt bin ich in bash-3.2 $ (Terminal) und hoffe, diese .R-Datei in einem anderen Emacs-Puffer zu öffnen und dann zu bearbeiten. Gibt es einen Weg, es zu tun? Dies könnte eine triviale Frage sein, denn ich bin ein Neuling für Linux und Emacs. Vielen Dank im Voraus!
Denken Sie daran, dass Sie im Term-Modus C-c C-f eingeben können, um eine Datei zu öffnen (genau wie C-x C-f außerhalb des Term-Modus). Die Eingabeaufforderung befindet sich bereits in Ihrem aktuellen Verzeichnis, Sie müssen also nur den Namen der Datei eingeben und die Datei mit TAB vervollständigen.
Ich kenne das offizielle Verfahren für das, was Sie tun möchten, nicht, aber hier ist eine Prozedur, die funktioniert:
Entweder Emacs sagen, dass sie als Daemon laufen sollen (Ref: EmacsAsDaemon ) oder in emacs start daemon via M-x server-start
.
In diesem Begriff beginnt ein Befehl wie emacsclient -n filename
mit der Bearbeitung der angegebenen Datei im aktuellen Fenster. Hinweis: Emacsclient verfügt auch über die Option -c, --create-frame
, die in einem neuen Frame bearbeitet werden kann. Wahrscheinlich möchten Sie die Option -n
wie oben verwenden, damit Sie Ihren Ausdruck weiter verwenden können, nachdem Sie ihn aus der Liste der Puffer in einem anderen Fenster oder Rahmen ausgewählt haben.
Wenn Sie den Daemon über M-x server-start
in emacs starten, wird der Daemon beim Beenden von emacs beendet. Wenn Sie es über die oben erwähnte Referenz einrichten, verwenden Sie kill-emacs
oder save-buffers-kill-emacs
-Befehle oder den Shell-Befehl emacsclient -e '(kill-emacs)'
, um es zu stoppen, wie in Teil 6 der Referenz erwähnt.