Intereting Posts
есть ли разница между convert и convert-im6, и если да, то что? команда терминала, которая печатает вкладки, пробелы и символы новой строки как \ t \ s и \ n Необратимый родитель зомби Сетевой сервис отключает eth0 при перезапуске в Debian 9 Strech поскольку root не может удалить файл под / tmp, операция не разрешена Все ли номера ошибок системных вызовов уникальны? Модуль Debian Cryptoloop отсутствует Заменить строку, содержащую новую строку в огромном файле почему на моем рабочем столе работает шесть процессов getty? Вопросы последовательности команд DEC ANSI; перемещение курсора Как запустить команду для списка пакетов? Не удается войти в SSH на CentOS 7 Сетевая проблема в vsat Есть ли дистрибутив Linux с небольшим или отсутствием инструментов администрирования? Как я могу избежать сообщений «Запустить fsck вручную», позволяя экспериментировать с изменениями системного времени?

Автозаполнение и раскраска не работают, при использовании ssh в оболочке emacs

Я подключаюсь к удаленному серверу с помощью emacs shell . Оболочка Emacs отображает списки каталогов с правильной раскраской и автозавершением при работе с локальной машиной.

Но когда я использую ssh автозаполнение и раскраска исчезли. То же самое справедливо для eshell .

Есть ли способ исправить это, не прибегая к Mx term ? Поскольку ключи emacs не работают в term который является настоящим убийцей производительности.

Здесь есть аналогичный вопрос. Но это скорее касается emacs в SSH вместо SSH в emacs.

В буфере *shell* или eshell Emacs выполняет собственное завершение файла, просматривая локальную файловую систему. Это не может работать, если вы вошли на удаленную машину через SSH.

Чтобы получить завершение удаленных файлов, Emacs должен был позволить оболочке обрабатывать клавишу Tab . Но обработка Emacs Tab и других ключей отличает *shell* от *term* .

В eshell вы можете получить доступ к удаленным каталогам через Tramp . Например, cd /servername:/remote/path дает вам оболочку в удаленном каталоге, доступ к которой осуществляется через SSH. Завершение работы выполняется, если вы выполняете удаленное соединение таким образом.