Режим Tramp намного медленнее, чем использование терминала для SSH

14

Я использую Macports для Emacs на OSX Yosemite, и просмотрел все потоки здесь, на Tramp, медленно, без какого-либо решения.

Бродяга можно использовать, но между каждым действием задержка составляет около 100 мс. Это не проблема на стороне сервера, потому что эта задержка не существует, если я просто использую терминал / iTerm, чтобы просто ssh на тот же сервер.

Я думал, что, возможно, проблема была ограничена редактированием файлов, но оказалось, что это вездесуще. Использую ли я только удаленную оболочку или просто нажимаю M-x(с рулем), все это задерживается.

Я пробовал ssh, scp и rsync как способы подключения без какого-либо решения. Также попробовал ControlMaster autoбез какого-либо эффекта.

Кто-нибудь еще имел эту проблему, и был в состоянии решить ее?

m0meni
источник
Попытка найти что-то, этот ответ, является единственной вещью, близкой к
полезному
2
Бродяга имеет расширенные возможности лесозаготовок. Примените (setq tramp-verbose 6)и повторите тесты. Будет исчерпывающий буфер отладки Tramp, каждая запись начинается с метки времени. Пройдите через этот буфер после (6)записей, они являются командами, отправленными удаленно, и выводом из удаленной оболочки. Проверьте, есть ли явные задержки. Кстати, какую версию Tramp вы используете? Проверьте это с C-h v tramp-version.
Майкл Альбинус
Для helm-tramp, github.com/masasam/…
Питер Бечич

Ответы:

14

Оказывается, это projectileбыло причиной проблем. Как только я отключил, projectile-modeTRAMP стал маслянистым, и я начал понимать шумиху за ним.

Надеюсь, это поможет кому-то еще, кто исчерпал все другие варианты.

Другое решение, которое я нашел, если вы не хотите постоянно отключать снаряд, - это ввести эту команду в init.el

(setq projectile-mode-line "Projectile")

Оказывается, что вся задержка исходила от снаряда, пытающегося вычислить, что нужно указать в качестве названия проекта в строке режима. Для меня это не важная особенность, так что вы можете просто сказать «Снаряд»

m0meni
источник
Как вы это отладили? Я не думаю, что это снаряд замедляет мой TRAMP, но я еще не уверен на 100%.
Адам Спирс
1
@AdamSpiers Я просто попробовал буквально все, пока не узнал. Если вы хотите сделать это правильно, вы можете попробовать использовать, (setq tramp-verbose 6)как другой предложенный комментарий.
m0meni
У меня уже был этот набор 7, а также профилирование через elp-*. Трудно понять результаты, хотя.
Адам Спайерс
Эта проблема сообщается много раз в списке проблем снарядов. Похоже, что commit 323fb8 .solved это. У меня была эта проблема в течение многих лет, но с тех пор, как я обновил снаряд до 2017-1102.55, он работает хорошо.
17
3

Я также нашел решения в часто задаваемых вопросах о бродягах, которые касаются ускорения бродяг, чтобы работать довольно хорошо.

Со страницы вот что я добавил в свою конфигурацию:

(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
источник