Me gustaría poder ejecutar emacs en una computadora:
server $ emacs --daemon
Y luego conéctese desde otro:
local $ emacsclient -c server
es posible? ¿Si es así, cómo?
daemon
emacsclient
networking
liszt
fuente
fuente
Respuestas:
No puede usar emacsclient para conectarse a una instancia de Emacs que se ejecuta en una computadora remota. Este concepto cliente-servidor está relacionado con procesos (locales), no con nodos de red. Sin embargo, puede usar varias tecnologías de red para iniciar sesión en la computadora remota, conectarse a un servidor emacs que se ejecuta allí y mostrar la pantalla del cliente emacs localmente. Dependiendo del sistema operativo que se utilice, la conexión en red podría realizarse a través de SSH (terminal / X-Forwarding), VNC, RDP, etc.
ACTUALIZACIÓN :
Como señalaron algunas personas, emacsclient realmente tiene una opción para conectarse al servidor a través de TCP. Sin embargo, emacsclient nunca fue diseñado para usarse de manera remota, la opción de socket TCP es necesaria para la compatibilidad con sistemas que no son UNIX (es decir, sistemas operativos donde los sockets de dominio UNIX no están disponibles, como Windows).
fuente
Probablemente no sea lo que solicitó, pero suponiendo que tenga una configuración ssh con X-forwarding, podría iniciar emacsclient en el servidor y reenviarlo a DISPLAY remoto. (Descargo de responsabilidad: código escrito directamente en el formulario web)
fuente
Esto puede no ser lo que desea, pero por si acaso, vea si puede ayudarlo de alguna manera.
Normalmente trabajo dentro de una máquina virtual arrancada con Vagrant, tengo mi
~/.emacs.d
directorio sincronizado entre mi máquina (local) y la máquina virtual (remota) poniendo lo siguiente en elVagrantfile
archivo:Además, mi configuración de Emacs inicia automáticamente un servidor al inicio:
Entonces, cuando inicio un servidor Emacs dentro de la máquina virtual, puedo conectarme a él con lo siguiente:
nombre de host de máquina virtual es el nombre de host de la máquina virtual que configuré en mi ~ / .ssh / config:
Nota: Antes de iniciar el servidor Emacs dentro de la máquina virtual, verifico que el
~/.emacs.d/server/server
archivo no esté presente (si es que lo elimino) porque de lo contrario no funcionará.fuente
.ssh/config
archivo. Solo necesita especificar elHost
. En caso de duda, puede utilizar la salida del comando:vagrant ssh-config
para configurar su~/.ssh/config
archivo.emacsclient y TRAMP
Abrir automáticamente archivos remotos en emacs locales
He tenido éxito con la primera solución. El segundo parece ser más simple, todavía tengo que probarlo.
fuente