Le mode Tramp est beaucoup plus lent que l'utilisation du terminal pour ssh

14

J'utilise la saveur Macports d'Emacs sur OSX Yosemite, et j'ai regardé à travers chaque fil ici sur Tramp étant lent sans aucune solution.

Tramp est utilisable, mais il y a un délai d'environ 100 ms entre chaque action. Ce n'est pas un problème du côté du serveur car ce délai n'existe pas si j'utilise simplement terminal / iTerm pour simplement ssh vers le même serveur.

Je pensais que le problème était peut-être limité à l'édition de fichiers, mais il s'avère qu'il est omniprésent. Que j'utilise simplement un shell distant ou que j'appuie simplement M-x(avec la barre), tout est retardé.

J'ai essayé ssh, scp et rsync comme méthodes de connexion sans aucune solution. Ont également essayé le ControlMaster autosans aucun effet.

Quelqu'un d'autre a-t-il eu ce problème et a-t-il pu le résoudre?

m0meni
la source
J'ai essayé de trouver quelque chose, cette réponse est la seule chose proche d'une réponse utile: \
Nsukami _
2
Tramp a étendu les installations d'exploitation forestière. Appliquez (setq tramp-verbose 6)et relancez vos tests. Il y aura un tampon de débogage Tramp exhaustif, chaque entrée commence par un horodatage. Parcourez ce tampon en suivant les (6)entrées, ce sont les commandes envoyées à distance, et la sortie du shell distant. Vérifiez s'il y a des retards évidents. Btw, quelle version de Tramp utilisez-vous? Vérifiez-le avec C-h v tramp-version.
Michael Albinus
Pour helm-tramp, github.com/masasam/…
Peter Becich

Réponses:

14

Il s'avère projectileque c'est à cause de ces problèmes. Dès que j'ai désactivé projectile-modeTRAMP, le beurre était lisse et j'ai commencé à comprendre le battage médiatique derrière.

Espérons que cela aide quelqu'un d'autre qui a épuisé toutes les autres options.

Une autre solution que j'ai trouvée si vous ne voulez pas désactiver constamment le projectile est de mettre cette commande dans votre init.el

(setq projectile-mode-line "Projectile")

Il s'avère que tout le décalage provenait du projectile essayant de calculer ce qu'il fallait mettre comme nom de projet dans la ligne de mode. Ce n'est pas du tout une fonctionnalité importante pour moi, vous pouvez donc simplement le configurer pour dire "Projectile"

m0meni
la source
Comment avez-vous débogué cela? Je ne pense pas que ce soit un projectile qui ralentisse mon TRAMP, mais je ne suis pas encore sûr à 100%.
Adam Spires
1
@AdamSpiers J'ai juste tout essayé littéralement jusqu'à ce que je le découvre. Si vous voulez le faire de la bonne façon, vous pouvez essayer d'utiliser (setq tramp-verbose 6)comme un autre commentaire suggéré.
m0meni
Je l'avais déjà réglé sur 7, et également profilé via elp-*. Difficile cependant de comprendre les résultats.
Adam Spires
Ce problème est signalé plusieurs fois sur la liste des problèmes de projectiles. Il semble que le commit 323fb8 ait résolu le problème. J'ai eu ce problème pendant des années mais depuis que je suis passé au projectile 20171102.55, cela fonctionne bien.
marcz
3

J'ai également trouvé les solutions sur la FAQ Tramp qui traitent de l'accélération du tramp pour fonctionner assez bien.

Depuis la page, voici ce que j'ai ajouté à ma configuration:

(setq remote-file-name-inhibit-cache nil)
(setq vc-ignore-dir-regexp
      (format "%s\\|%s"
                    vc-ignore-dir-regexp
                    tramp-file-name-regexp))
(setq tramp-verbose 1)
colelemonz
la source