Так же, как @justinhj, я использую собственную версию emacs для windows вместе с (также собственными) портами утилит gnu (например, binutils для «строк» и т. Д.).
И я всегда использую Cygwin в качестве оболочки, внутри Emacs или независимо от Emacs. Таким образом, я сохраняю внешний вид своей рабочей среды при переключении с Windows на Linux / AIX / Solaris и обратно.
К сожалению, однако, когда я обновил свой Emacs с 21.2 до 23.2, Emacs по умолчанию потерял способность распознавать '/ cygwin / c'. Я должен исследовать это сейчас, чтобы понять, почему он больше не работает и что я могу сделать, чтобы это исправить. Я только что нашел следующую информацию и проверю, насколько это полезно. Кажется странным, что теперь мне нужен внешний пакет для чего-то, что всегда было по умолчанию:
Я предпочитаю, однако, минимизировать использование дополнительных пакетов. Итак, я только что проверил поведение моего «нового» Emacs + Cygwin, и кажется, что я могу получить доступ к диску C: просто набрав '/'.
Это круто - только один символ (косая черта) вместо / cygdrive / c. Однако оболочка в Emacs запрашивает '/ cygdrive / c', что несколько запутывает разницу.