Как лучше всего интегрировать Emacs и Cygwin? - PullRequest
42 голосов
/ 16 января 2010

Существует множество способов интеграции Cygwin с Emacs в Windows. EmacsWiki показывает несколько идей. Вот варианты, которые я нашел:

  1. Используйте Emacs, который поставляется с Cygwin. (Затем найдите способ получить доступ к cmd.exe, если хотите.)
  2. Используйте NTEmacs и Cygwin в качестве «иногда» оболочки. (Специальная команда для запуска Cygwin)
  3. Используйте NTEmacs и Cygwin в качестве оболочки "Always". (M-x оболочка запускает Cygwin)

Чтобы дать некоторую ясность относительно "почему". Вот несколько примеров, где я хотел бы иметь Cygwin с Emacs:

  1. M-x whois не работает на NTEmacs.
  2. Пакеты типа Wanderlust включают Makefile, который не подходит для Windows.
  3. Иногда мне просто нужна командная оболочка для чего-то.

Так какой вариант Emacs / Cygwin хорошо работает для других? Также кто-нибудь успешно пробовал интеграцию с MSYS?

Ответы [ 11 ]

0 голосов
/ 23 ноября 2010

Я исследовал три варианта, все с оконными (но не X11) версиями Emacs. (Терминал слишком хардкорный для меня.) Вот так:

  1. XEmacs, который поставляется с Cygwin
  2. EmacsW32
  3. Стандартный Emacs для Windows

Люди Cygwin хотят направить вас к своим Emacs / XEmacs. В http://cygwin.com/faq/faq-nochunks.html#faq.using.ntemacs, они пишут «Обратите внимание, что все это« просто работает », если вы используете порт Cygwin для Emacs или XEmacs из программы установки Cygwin».

Обязательно установите пакет xemacs-sumo в дополнение к xemacs; в противном случае оболочка M-x не будет работать. Вы можете запустить xemacs без использования X11 как

DISPLAY= xemacs &

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

EmacsW32 (http://ourcomments.org/Emacs/EmacsW32.html) имеет установщик одним щелчком, команду Mx cygwin-shell и режим CUA. Но завершение вкладки в оболочке Cygwin использует пути Windows, что сводит меня с ума. Похоже, порт W32 быть активно улучшенным с 2008 года, но они предоставляют установщикам более свежие версии Emacs.

Стандартный Emacs для Windows кажется лучшим выбором. Загрузите с http://ftp.gnu.org/pub/gnu/emacs/windows/, распакуйте и запустите изнутри Cygwin . Затем он берет домашний каталог и т. Д. Вставьте mumbo-jumbo из http://cygwin.com/faq/faq-nochunks.html#faq.using.ntemacs в ~ / .emacs. Перезапустите Emacs и запустите M-x shell. Все работает как положено.

...