web-dev-qa-db-fra.com

sSH à travers la coquille Emacs?

Je me demande si quelqu'un utilise ssh à travers le shell d'Emacs. Je peux me connecter à la machine distante mais je ne peux pas ouvrir les fichiers à afficher/éditer avec emacs en utilisant 'emacs nom_fichier' car le 'type de terminal "dumb" n’est pas assez puissant pour exécuter emacs' (normalement emacs s’ouvrirait dans la console lorsque connexion via le terminal).

Est-ce une mauvaise idée d’essayer d’utiliser emacs de cette manière, ou est-ce possible avec quelques corrections? Merci beaucoup!

38
hatmatrix

Quelques idées

  • Sourcez explicitement le fichier .bashrc via . ~/.bashrc et/ou réorganisez vos fichiers bash init et ~/.profile de manière à ce qu'ils soient chargés à l'intérieur du shell emacs; puis exécuter ssh dans le shell Emacs fonctionne très bien
  • Utilisez le Mode Tramp spécifique à emacs pour accéder aux fichiers distants via ssh dans votre Emacs local - cela est utile si vous avez juste besoin de mettre à jour/modifier/modifier un fichier distant pour ne pas avoir à ouvrir un fichier distant. emacs à l’intérieur de la session ssh a commencé à partir de votre emacs local.
15
Dirk Eddelbuettel

Cela n’apparaît peut-être pas à première vue, mais eshell, le shell implémenté dans Dans LISP d’Emacs fonctionne correctement avec 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 $ 
41
hillu

Emacs a un term-mode qui est un émulateur de terminal complet, vous pouvez exécuter emacs dans emacs. Tout ce que vous exécutez sur le terminal fonctionnera en mode terme

De plus, emacs a le mode tramp qui peut ouvrir des fichiers via ssh.


/scp:user@ipOrHost#port:/

il va transférer des fichiers dans les deux sens. vous les éditez comme vous éditez des fichiers locaux.

Pas besoin de transmission x11 ou d'autres manigances. 

17
Hamza Yerlikaya

Vous pouvez utiliser ssh x forwarding pour exécuter un emacs distant et l’afficher sur l’ordinateur local. 
J'utilise Xming X Server lorsque je suis sous Windows

Vous pouvez monter le système de fichiers distant avec ssh et l'ouvrir localement comme d'habitude.
Pour cela, j'utilise ExpanDrive (application commerciale) sous Windows

Vous pouvez utiliser emacs Ange ftp sur ssh il peut ouvrir des fichiers distants sur ftp et ssh.
Je l'utilise avec cygwin sous Windows

6
Nifle

Je me débattais avec Xming, ce qui fonctionne, mais comme ma connexion Internet n’est pas la plus rapide, je dois attendre plus de 30 secondes avant que emacs ou toute autre application X ne se présente. De même, le défilement d'un tampon après son ouverture gèlera de temps en temps => Très ennuyeux 

Essayez Pas de machine (serveur/client nxserver-freenx). Il existe des serveurs en édition gratuite, la solution la meilleure et la plus rapide lorsque vous souhaitez vous connecter à une machine Linux et utiliser xterm et emacs sur X. Elle apparaît immédiatement et répond si rapidement. Même avec une connexion très lente :-) Les clients sont disponibles pour Windows, Mac OS, Linux

1
Darkosa

Option Emacs pour ssh: c-x c-f/ssh: utilisateur @ hôte:/home/chemin/

Pour référence: Ouvrir le fichier via SSH et Sudo avec Emacs

0
FeLiX StEpHeN