Я пытаюсь выяснить, почему работающее ранее соединение emacs + tramp не работает. Сначала я подумал, что это может быть проблема с Aquamacs, но я загрузил Emacs.app на OSX, основанный на версии 23.3 (9.0), и он тоже не работает. Удаленный хост запускает FreeBSD 7.4 и пользовательская оболочка по умолчанию /usr/local/bin/bash.
Если я пытаюсь открыть файл, такой как:
Find file: /username@remote_host:~/folder/
... курсор в минибуфере останавливается на:
Find file: /username@remote_host
... и я больше ничего не могу напечатать. Смущая это, я тоже не могу остановить это. Emacs просто зависает. Время истекает через минуту или около того, но до тех пор не может быть использовано.
Соответствующие строки моего файла .emacs:
(require 'tramp)
(setq tramp-debug-buffer t)
(setq tramp-verbose 9)
(setq tramp-default-method "ssh")
(setq tramp-password-prompt-regexp ".*[Pp]assword: *$")
(setq tramp-shell-prompt-pattern "^[^;$#>]*[;$#>] *")
(setq password-cache-expiry nil)
А пароль и запросы оболочки на соответствующем компьютере (анонимном) выглядят так:
Password:
[username@remote_host ~]$ # with a single space at the end
Значение tramp-password-prompt-regexp равно ".*[Pp]assword: *$"
Значение tramp-shell-prompt-pattern равно "^[^;$#>]*[;$#>] *"
И, наконец, последние несколько строк буфера отладки:
14:36:40.271851 tramp-get-connection-property (7) # check-remote-echo nil
14:36:41.090876 tramp-wait-for-regexp (6) #
are you awake
#$
14:36:41.091037 tramp-wait-for-regexp (1) # File error: [[Regexp `\(^\|\)[^#$
?$' not found in 60 secs]]
Я не уверен, откуда взялась другая версия регулярного выражения оболочки, но в любом случае, я даже не получаю запрос пароля.
Есть идеи, что я могу делать не так?
Добавление
Использование GNU Emacs 22.1.1 (mac-apple-darwin, Carbon Version 1.6.0), версия Tramp 2.0.55, работает. Однако я неохотно полагаюсь на это, поскольку оно основано на окне терминала, и я перетасовал Cmd, Ctrl и Caps Lock, чтобы заставить мою рабочую станцию больше походить на мою домашнюю машину, затем сказал Emacs обработать Cmd клавиша в качестве альтернативы Ctrl; к сожалению, окно терминала перехватывает несколько комбинаций клавиш Cmd.
Более
Загрузил Emacs-22.3-i386-10.5.7.dmg из Emacs Для OS X , который использует tramp 2.0.58-pre. Это тоже работает и имеет меньше проблем с комбинациями клавиш для захвата среды. Но я до сих пор не понимаю, почему Aquamacs и более поздние версии Carbon Emacs перестали работать.