emacs ssh

ssh a través de shell emacs?



(6)

Me pregunto si alguien por ahí usa ssh a través del shell de emacs. Puedo conectarme con la máquina remota pero no puedo abrir archivos para ver / editar con emacs usando ''emacs filename'' ya que el ''tipo de terminal'' tonto ''no es lo suficientemente potente para ejecutar emacs'' (normalmente los emacs se abrirían dentro de la consola cuando conectando a través de la terminal).

¿Es una mala idea tratar de usar emacs de esa manera, o esto es posible con algunas correcciones? ¡Muchas gracias!


Emacs tiene term-mode, que es un emulador de terminal completo, puede ejecutar emacs en emacs. Todo lo que ejecutes en el terminal se ejecutará en modo de término

Además, emacs tiene el modo vagabundo que puede abrir archivos a través de ssh.

/scp:user@ipOrHost#port:/

Transfiere archivos hacia adelante y hacia atrás. simplemente edítelos como lo haría con los archivos locales.

No es necesario reenviar x11 u otras travesuras.


He estado luchando con Xming, que funciona, pero como mi conexión a Internet no es la más rápida, tengo que esperar más de 30 segundos antes de que aparezcan emacs o cualquier aplicación X. También desplazarse a través de un búfer después de que se haya abierto se congelará de vez en cuando => Muy molesto

Pruebe No machine (nxserver-freenx server / client). Hay servidores de edición gratuita, la mejor y la más rápida solución cuando quieres conectarte a una caja Linux y usar xterm y emacs en vez de X. Se muestra inmediatamente y responde tan rápido. Incluso a través de una conexión realmente lenta :-) Los clientes están disponibles para Windows, Mac OS, Linux



Puede que no sea obvio a primera vista, pero eshell , el shell que se implementa en Emacs Lisp funciona bien con tramp :

Welcome to the Emacs shell ~ $ uname -a Linux local-machine 2.6.30-1-686 #1 SMP Thu Jul 30 14:45:30 UTC 2009 i686 GNU/Linux ~ $ cd /ssh:user@remote-machine:~ /ssh:user@remote-machine:/home/user $ uname -a Linux remote-machine 2.6.18-6-686 #1 SMP Thu Aug 20 21:56:59 UTC 2009 i686 GNU/Linux /ssh:user@remote-machine:/home/user $



Un par de ideas

  • Fuente el .bashrc explícitamente vía . ~/.bashrc . ~/.bashrc y / o reorganice sus archivos bash init y ~/.profile para que esto se cargue dentro del shell emacs; luego ejecutar ssh dentro del shell de Emacs funciona bien
  • Utilice el modo Tramp específico de emacs para acceder a archivos remotos a través de ssh dentro de su Emacs local; esto es útil si solo necesita actualizar / tocar / editar un archivo remoto para no tener que abrir un emacs remoto dentro de la sesión ssh iniciada desde dentro de tus emacs locales