Чим відрізняється Aquamacs від інших версій Mac Emacs?


99

Користувачі Macintosh мають кілька варіантів заздалегідь створеного Emacs. Мені відомі наступні версії:

Деякі питання, які я мав на увазі:

  1. Чи відрізняються ці версії якимись значущими способами?
  2. Чи можна отримати функціональність інших, просто змінивши файл ініціалізації?
  3. Чи змінюються ці зміни назад за течією?

Я знаю, що Aquamacs вважається "неортодоксальним", оскільки він має дуже схожі на Mac клавіші, але мені також цікаво зрозуміти відмінності між версіями, які не є Aquamacs.


Точка даних: Я просто спробував купу цих емаксенів і оселився на вилці Ямамото Міцухару. Я використовую Aquamacs роками, але він часто зазнає збоїв (щось стосується фреймів / вкладок), і більше не міг його прийняти. Здається, Аквамаки робили багато речей, які ніхто інший не робив, але це вже не так. Зараз вилка Yamamoto є найкращим вибором для Mac.
Скотт Фрейз

Я зазвичай використовую Aquamacs, вирішив заварювати цього разу. Одна незначна нитка: щоб отримати ключ #, встановіть австралійський тип введення!
Дейв Ходжкінсон

Відповіді:


126

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 для ОС 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

Порт Emacs Mac - це набір патчів для GNU Emacs, належний для кращої інтеграції в OS X. Зауважте, що сам GNU Emacs має вбудовану підтримку OS X, але не вистачає специфічних додатків для OS X, які надає цей набір патчів. Зокрема:

  • Основний текст для візуалізації тексту, що покращує зовнішній вигляд тексту та підтримку Unicode. Це було об'єднано в GNU Emacs належним чином і є частиною Emacs 24.4.
  • Плавне прокручування. GNU Emacs належним чином прокручує лінійку, що дуже мляво і стрибкоподібно з трекпадами. Порт Emacs Mac використовує прокрутку на основі пікселів, як і інші вбудовані програми OS X, що відчуває себе набагато плавніше та значно точніше. Однак це впливає лише на прокрутку трекпадів, тому якщо ви не використовуєте мишу, вона вам не знадобиться.
  • Жести. Ви можете натиснути, щоб збільшити / зменшити розмір тексту. Знову ж таки, якщо ви не користуєтеся мишкою, ви її не помітите, і це, мабуть, просто фантазія.
  • Підтримка подій Apple. Ви можете надсилати та отримувати події Apple від Emacs Lisp.
  • Словникова служба. Торкнення трьома пальцями дозволить шукати слово під курсором у програмі Apple's 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 - це сильно забита виделка 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:).


8
Що ж, - використання порта Mac теж не так складно. З сайту github.com/railwaycat/emacs-mac-port : brew tap railwaycat/emacsmacportа потімbrew install emacs-mac
Rainer

3
"Порт Mac", безумовно, не був першим Emacs з вбудованою підтримкою графічного інтерфейсу OSX. Натомість він народився приблизно в той час, коли Emacs перейшов зі старого коду "Carbon Emacs" до більш нового коду "Emacs.app" (цей крок був зроблений частково через те, що Карбон, ймовірно, був застарілий Apple, частково тому, що ніхто не хотів підтримувати цей код і почасти тому, що код "Emacs.app" з'явився з можливістю підтримувати GNUstep. На сьогодні підтримка GNUstep в основному непридатна для використання (тому вона час від часу використовується для відстеження та виправлення помилок у коді OSX під час використання системи GNU / Linux )).
Стефан

6
Відмінний запис. Деяким користувачам OSX може бути цікаво знати, що Aquamacs має вбудовану підтримку вбудованої програми перевірки орфографії OSX, яка включає список збережених слів, які користувач раніше додав у словник. На мій погляд, це є однією з ключових особливостей Aquamacs, яку неможливо дублювати в інших версіях Emacs без зміни вихідного коду перед побудовою. Однак я вважаю за краще аспел і ухиляюся від використання миші - тому перевірка орфографії OSX (хоча вона справді дуже витончена) не є причиною для мене переходу на Aquamacs.
законник

1
Відмова: я використовую Linux, і я не впевнений у OSX, але я пишу електронну пошту в Emacs і мені не потрібен TLS; Я (а точніше mu4e) закликаю msmtpнадсилати та mbsyncотримувати електронні листи.
mbork

1
Малий ніт: для складання з джерела потрібно ./configure --with-ns, ні --enable-ns.
Харальд Ханш-Олсен

22

Кілька фактичних виправлень щодо Aquamacs. Хоча він підтримує власне дерево-джерело, воно регулярно об'єднується з Emacs, і це майже відразу, з кожним випуском Emacs. Aquamacs 3.1 вийшов у день виходу Emacs 24.4 (і він включав усі функції Emacs 24.4 та підмножину його помилок). Aquamacs має> 10k постійних користувачів, активно підтримується.

Порт Emacs Mac зародився набагато пізніше, ніж порт Какао та Нексстеп в Emacs; він вважається експериментальним, і оригінальний автор не рекомендує перерозподіляти його поза набором патчів. Як така, підтримка буде набагато обмеженішою, ніж будь-яке інше рішення. Однак цікавий напрямок розвитку, який згодом надасть велику цінність для громади, якщо вона буде прийнята розробниками. Користувачі повинні вважати себе "бета-тестерами" і сприяти тому, що можуть, з хорошими звітами про помилки та виправленнями.

Цінність Aquamacs полягає в його філософії "готового до рулону": LaTeX, EmacsSpeaksStatistics та Mac інтеграція працюють нестандартно. Не потрібна складна конфігурація.


Emacs випускає лише нечасто, тому якщо Aquamacs зливається лише після випусків, то це нечасто. Хоча я оновив свою відповідь, щоб видалити цю частину. Крім того, хоча сам Aquamacs активно підтримується та підтримується, підтримка громади є досить рідкою. Кілька сторонніх пакетів явно підтримують Aquamacs. Насправді багато пакунків явно підтримують лише GNU Emacs, а не будь-які вилки або похідні, включаючи XEmacs або Aquamacs.
місячник

Чи є у вас джерело для поради авторів портів Mac не перерозподіляти частини за межами набору патчів?
місячник

@lunaryorn: Я вважаю, що це було правдою в той час, але вже не так. Під час редагування я видалив цей коментар.
davidswelt

11

Я спробував усі перераховані вище варіанти (навіть кран, рекомендований Райнером у коментарі вище) жоден не спрацював для мене (проблеми з прокруткою трекпадів, завіси тощо). Однак я дуже щасливий з виделкою Ямамото Міцухару, що зберігається на залізничній сторінці github. Він є сучасним стосовно офіційної версії GNU. Просто завантажте .dmgзображення тут: https://github.com/railwaycat/emacs-mac-port/wiki/Downloads


8
Коли у вас є вільний час, будь ласка, розгорніть свою відповідь і викладіть відмінності між цією конкретною збіркою та ванільною збіркою. Таким чином, ваша відповідь стає більше, ніж просто коментар, і читачу не потрібно буде залишати цю відповідь і переглядати сторінки типу: github.com/railwaycat/emacs-mac-port/blob/master/README-mac
list list

0

Я використовував версію Aquamacs до недавнього часу. Основною причиною, коли я віддав перевагу версії Auquamacs, коли я використовував її на Mac, було те, що я зміг використовувати Dragon Dictate з emacs із налаштуваннями за замовчуванням. Коли я налаштовував налаштування, у мене виникли проблеми з диктантом у звичайній версії emacs. Крім цього і типових вкладень за замовчуванням, з якою я взаємодіяв, не було великої різниці. Мої налаштування завантажуватимуться аналогічно. За допомогою клавішних зв’язків Корисно мати буфер обміну, копіювати, вирізати, вставляти та скасовувати, використовуючи cmd-c, cmd-v, cmd-x, cmd-z, S-cmd-z просто з звички на mac, і що я вдалося автоматично зробити це однією рукою на клавіатурі mac, але ви можете встановити їх у звичайних електронних програмах на все, що завгодно, для багатьох з цих настройок mac не потрібен auquamacs.

Однак востаннє я перевіряв, що emacs в Auquamacs не оновлювався протягом року, і, здається, позаду. Я також отримував попередження про термін дії, що втратив чинність. Я не був впевнений, чи все ще підтримується. Схоже, це не було оновлено на веб-сайті. Мені вдалося встановити звичайну версію Emacs для Mac з домашньою мовою та оновити свій файл init до налаштувань для mac, які дозволяли працювати диктанту.

Але я використовую linuxmint останнім часом, і я думаю, що збираюся дотримуватися цього. Моя система набагато тихіша, швидша та гладша з Linux, і легко налаштувати зовнішній вигляд робочого столу. Я вніс декілька незначних змін у файл emacs init у версії Linux, але він майже однаковий. Я не зміг знайти хорошого рішення для диктанту на Linux. Я не знаю, що моя машина може працювати з іншою операційною системою у віртуальній машині лише для диктантського програмного забезпечення. Програмне забезпечення для диктантів також є ресурсним закликом, але це вже інше питання. Було б добре, якби Dragon випустив версію Dictate в Linux.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.