Emacs для Mac OS X
Emacs для Mac OS X предоставляет двоичные файлы OS X для собственно GNU Emacs. Это примерно то же самое, что вы получите, скомпилировав выпуск GNU Emacs ./configure --with-ns
. Сайт предоставляет сборки стабильных релизов и предварительных тестов, а также ночные снимки. Все эти сборки являются автономными, что позволяет безопасно пробовать предварительные тесты и снимки.
Обратите внимание, что в этих двоичных файлах отсутствует поддержка некоторых библиотек, в частности GNU TLS и ImageMagick. Если вы хотите использовать их - первое особенно важно, если вы хотите читать почту в Emacs - вам нужно получить GNU Emacs от Homebrew.
Emacs для OS X Модифицированный
Согласно веб-сайту Emacs для OS X Modified, это просто стандартная сборка GNU Emacs, основанная на вышеизложенном, с некоторыми дополнительными пакетами и необходимой конфигурацией для включения всех этих пакетов.
За исключением заметного ESS, все эти пакеты доступны через архивы пакетов Emacs для установки в любой Emacs. Например, вы можете установить AUCTeX в собственном GNU Emacs, просто набрав M-x package-install RET auctex
и включив его.
Выбор пакетов предполагает, что он в основном предназначен для статистиков и исследователей, которые будут обрабатывать свои данные с помощью R и ESS, а затем публиковать статью с Org или AUCTeX и LaTeX.
Для других пользователей этот дистрибутив, вероятно, не имеет большого значения, так как вам все равно нужно будет установить дополнительные пакеты, и он также может сразу использовать GNU Emacs.
Это единственный дистрибутив, который вы можете создать самостоятельно в GNU Emacs, установив дополнительные пакеты Emacs и настроив их init.el
соответственно. Другие дистрибутивы являются исправленными и разветвленными вариантами GNU Emacs.
Emacs Mac Port
Emacs Mac Port - это набор патчей для GNU Emacs для лучшей интеграции с OS X. Обратите внимание, что сама GNU Emacs также имеет встроенную поддержку OS X, но в ней отсутствуют специфические дополнения для OS X, которые предоставляет этот набор исправлений. В частности:
- Базовый текст для рендеринга текста, который улучшает внешний вид текста и поддержку Юникода. Это было объединено с собственно GNU Emacs и является частью Emacs 24.4.
- Плавная прокрутка. GNU Emacs правильно прокручивает линии, что очень медленно и с трекпадами. Emacs Mac Port использует основанную на пикселях прокрутку, как и другие родные приложения OS X, что выглядит намного более плавным и гораздо более точным. Это влияет только на прокрутку трекпада, поэтому, если вы не используете мышь, она вам не понадобится.
- Жесты. Вы можете ущипнуть, чтобы увеличить / уменьшить размер текста. Опять же, если вы не используете мышь, вы ее не заметите, и, возможно, это просто необычная функция.
- Поддержка Apple Events. Вы можете отправлять и получать Apple Events из Emacs Lisp.
- Словарь службы. Нажатие тремя пальцами будет искать слово под курсором в приложении Apple Dictionary, как и в других приложениях OS X.
- Интеграция услуг. Вы можете открыть выбранный файл в Finder из контекстного меню в запущенном Emacs.
- Нативное отображение SVG с использованием Webkit, а не librsvg. Насколько мне известно, Webkit лучше поддерживает SVG, но кто просматривает SVG в Emacs?
Вы заметите, что большинство этих функций просто связаны с интеграцией в OS X и не являются необходимыми для использования Emacs. Кроме того, Emacs Mac Port во многом похож на стандартный GNU Emacs.
Некоторые из его функций возвращаются в GNU Emacs, но другие никогда не будут объединены, поскольку они являются эксклюзивными для OS X и недоступны в бесплатной альтернативной версии GNUStep, которая противоречит политике FSF не поддерживать проприетарные операционные системы над их бесплатными альтернативами. Кроме того, если я правильно помню, автор этого набора патчей не проявил большого интереса к возвращению функций, вероятно, по первой причине.
Aquamacs
Aquamacs - это сильно залатанная ветка GNU Emacs. В отличие от всего вышеперечисленного, он не основан на GNU Emacs, но имеет независимое дерево исходников. Тем не менее, он регулярно синхронизируется с предшествующим Emacs и внимательно следит за релизами Emacs Однако это неизбежно отстает от магистрали GNU Emacs.
Он сильно изменен, чтобы выглядеть и чувствовать себя как родное приложение OS X. В частности, он поддерживает и поощряет стандартные привязки клавиш OS X, например, Cmd+Sдля сохранения. Стандартные привязки Emacs в основном все еще доступны.
Так как это вилка, сильно измененная и с совершенно другими целями и принципами, ни одна из ее функций не будет объединена с GNU Emacs: большинство этих модификаций прямо противоречат «духу», идеям и философии GNU Emacs.
TL; DR (или: что мне выбрать)
- Если вы статистик или исследователь и не хотите устанавливать Emacs самостоятельно: Emacs для OS X изменен
- Если вам нужно родное приложение OS X больше, чем все остальное: Aquamacs
- Если вы хотите Emacs, но с настолько хорошей поддержкой OS X, насколько это возможно: Emacs Mac Port
- Если вы просто хотите Emacs без каких-либо сложностей: Emacs для Mac OS X
Мой личный совет
Я никогда не пробовал Emacs для OS X Modified или Aquamacs, но я не вижу в этом ничего полезного (я не статистик и могу установить AUCTeX самостоятельно). Я также рекомендовал бы против последнего: это форк, и, хотя он обеспечивает лучшую интеграцию с OS X, он неизбежно отстает и получает меньшую поддержку от сообщества Emacs в целом. Многие пакеты не поддерживают Aquamacs, поэтому при возникновении проблем у вас есть хороший шанс остаться одним пользователем Aquamacs.
Я попробовал Emacs Mac Port, и хотя плавная прокрутка, жесты и Apple Events хороши, я обнаружил, что эти небольшие преимущества не стоят хлопот с сохранением исправленной версии GNU Emacs. YMMV, очевидно, и если вам нужна хорошая поддержка OS X, и если вам нравятся эти функции, вам обязательно стоит попробовать.
В настоящее время я использую только сборки снимков GNU Emacs. Они имеют достаточно хорошую поддержку OS X, и их, безусловно, проще всего установить, и их лучше всего поддерживают сообщества.
Раньше я получал их от Emacs для Mac OS X, но теперь я использую Homebrew, потому что он поддерживает больше библиотек, в частности GNU TLS для зашифрованных сетевых подключений.
В общем, используйте brew install emacs --HEAD --use-git-head --with-cocoa --with-gnutls --with-rsvg --with-imagemagick
:).