Как форсировать тайм-аут Emacs? - PullRequest
4 голосов
/ 07 декабря 2010

Я часто использую TRAMP с emacs. Однако иногда сервер выходит из строя, и Бродяга сидит в ожидании тайм-аута. Обычно это просто после выполнения C-x-f в режиме ido, чтобы открыть новый файл. Я должен ждать досадно много времени. Есть ли простой способ сообщить TRAMP тайм-аут и позволить ido-mode продолжить. Я пытаюсь C-g, и возможность открыть файл никогда не появляется.

Ответы [ 3 ]

2 голосов
/ 17 сентября 2013

В этих (частых) случаях, когда бродяга останавливается, я просто останавливаю процесс с помощью C-g, уничтожаю буфер бродяги и затем могу сохранить файл.

M-x kill-buffer RET *tramp.*
0 голосов
/ 07 декабря 2010

Я нашел один намек, который может ограничить болезненное ожидание до 5 секунд.Добавьте эту строку в .ssh / config:

Host *
     ServerAliveInterval 5

Однако через пять секунд вы все равно не сможете выбрать файл.Таким образом, когда это не удается, просто сделайте C-x b для буфера, который не открыт на сбойном сервере, и C-x-f оттуда не будет длиться вечно.

0 голосов
/ 07 декабря 2010

Я не сталкиваюсь с такой ситуацией тайм-аута, хотя я часто использую TRAMP.Попробуйте что-то вроде

(defun tramp-find-file-timeout ()
  (when tramp
    (with-timeout (4)
      (keyboard-quit))))
(add-hook 'find-file-hook 'tramp-find-file-timeout)

Я использовал это и это , чтобы сделать это предложение.что-то лучше, чем keyboard-quit может работать для вас.

...