Вопрос

На ежедневной основе я:

  1. используйте несколько рабочих станций под управлением Linux, Windows или macOS X
  2. редактируйте файлы на дополнительных хостах Linux, которые не являются ни одной из упомянутых выше рабочих станций

Единственным общим элементом здесь является то, что Интернет соединяет все эти хосты:рабочие станции и серверы.Я также могу синхронизировать все конфигурационные файлы на своих рабочих станциях и запускать X-сервер на всех из них.Каков правильный способ запуска emacs?Я не хочу жертвовать какими-либо функциями.

В моем идеальном мире я могу ввести 'emacs foo.txt' на удаленном хосте, и с помощью X forwarding произойдет какое-то волшебство для отображения файла в существующем сеансе emacs на моей рабочей станции.

Отсутствие решений

  1. бродяга:когда я управляю удаленным хостом, редактор - это всего лишь часть моего рабочего процесса.Мне нужен открытый терминал, чтобы я мог быстро запускать другие команды.бродяга совершенно не подходит для этого.
  2. конфигурационные файлы в Emacs:отстой, я хочу графическое изображение

Если у вас нет положительного ответа на мой вопрос, пожалуйста, не просто догадывайтесь.Спасибо.

Это было полезно?

Решение

Ты пробовал трахаться с eshell?Вы можете "cd /remote.host:/some/path" и редактировать файлы оттуда, и если вы введете не встроенный, он запускает канал ssh для его запуска.Довольно ловко.

Другие советы

Я не понимаю, почему tramp не является решением проблемы.Вы можете редактировать с помощью tramp и делать все, что вам нужно, в терминале, используя xterm + ssh.

Что ж, если вы можете настроить X клиентов на своих устройствах Windows и OSX, вы должны иметь возможность запускать X-версию emacs на любой из этих платформ и возвращать дисплей на свою рабочую станцию.Это дало бы вам ваш приятный интерфейс WIMP.

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

Другой вариант, конечно, заключается в использовании meta-x shell чтобы вызвать буфер оболочки внутри emacs.Настоящий гуру emacs предпочитает запускать свою операционную систему внутри emacs, а не наоборот.:-)

Подход, который я использую, основан на управлении исходным кодом скриптов Emacs и важных общих файлов (с использованием Git).Это дает мне согласованную базу кода, поэтому мне не нужно запоминать, на каком хосте есть какой скрипт или файл (или версия того, что я ищу).Git особенно хорошо подходит для поддержки этого механизма, и у меня в значительной степени вошло в привычку ежедневно обновлять репозиторий master origin.В сценариях (как в сценариях оболочки Emacs, так и в сценариях bash) Я использую машинный код для обработки локальных требований.Эта система действует уже более года, и я нахожу ее достаточно эффективной.Это техника, которую, как я видел, рекомендовали в течение некоторого количества лет.Я нашел это неуклюжим с CVS и Subversion, но git, похоже, приспособлен для этой работы.Тем не менее, мне нравится решение, которое вы выбрали в качестве дополнительного инструмента, и я с нетерпением жду возможности добавить его в наш микс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top