Ich versuche, eine Emacsclient-Sitzung von einem Remote-Host aus zu öffnen. Ich habe die folgenden Schritte auf der Tramp-Website ausgeführt. Wie kann ich mit TRAMP eine Verbindung zu einer Remote-Emacs-Sitzung herstellen?
Ich werde dich durch die Stufe führen
auf dem Remote-Host in .emacs-Datei
(require 'server) (setq server-host "<IP ADDRESS of remoteHost>" server-use-tcp t) (server-start)
Starten Sie die Emacs-Sitzung auf dem Remote-Host
Kopieren Sie die Datei ~ / emacs.d / server / server von remoteHost nach localHost. Behalten Sie den gleichen Pfad bei. (localHost: ~ / emacs.d / server / server)
auf lokaler Host-Emacs-Shell
emacsclient /ssh:test@remoteHost:/tmp/test.py
Habe aber den folgenden Fehler auf meinem localHost bekommen
;; emacsclient: can't find socket; have you started the server?
;; To start the server in Emacs, type "M-x server-start".
;; emacsclient: connected to remote socket at `Remotehost`
;; emacsclient: connect: No route to host
;; emacsclient: No socket or alternate editor. Please use:
;; --socket-name
;; --server-file (or environment variable EMACS_SERVER_FILE)
;; --alternate-editor (or environment variable ALTERNATE_EDITOR)
Es scheint also eine Verbindung zu remoteHost herzustellen, kann jedoch keine Route finden. Ähnliche Fragen wurden zu SO gestellt. Hier und hier . Es gibt auch einen netten Code zum direkten Kopieren von ~ / .emacs.d / server / server von remoteHost nach localHost hier .
Jede Hilfe wird sehr geschätzt.
Update Ich habe weitere Informationen zu diesem Thema gesammelt. Es scheint, dass eine Reihe von Menschen diese Aufgabe versucht haben und einige scheinen erfolgreich gewesen zu sein, aber ich konnte eine Lösung für mein spezifisches Problem finden. Verwenden von Emacs Server und Emacsclient auf anderen Computern als andere Benutzer
Ähnliche Fragen wurden auch zu emacs.stack.exchange gestellt, wie zum Beispiel, wie ich den Emacsclient verwende, um eine Verbindung zu einer Remote-Emacs-Instanz herzustellen
Update1
Es gibt eine interessante Post hier Grafiken mit ssh weiterleiten. Es ist einfach zu implementieren und funktioniert ziemlich gut, wenn Ihre Verbindung gut genug ist, aber kein Tramp verwendet wird.