Подтвердить что ты не робот

Углерод против Aqua против Cocoa Emacs строит

Кажется, есть несколько лагерей, когда дело доходит до Emacs на OSX; Углерод против Aqua Emacs. Похоже, что аргумент состоит в том, что Aqua немного слишком далека от стандартных Emacs, и если вы слишком комфортно, у вас возникнут проблемы с использованием любой другой сборки Emacs.

Как разработчик, пытавшийся попасть в Emacs уже несколько месяцев, я использовал Carbon Emacs с Emacs Start Kit и все идет хорошо.

Но при создании Cocoa сборки Emacs, входящей в Emacs 23 (и ночные сборки), это что-то изменит?

Должен ли я использовать ночные сборки Cocoa в ожидании? Мне очень интересно узнать о преимуществах, и если будут значительные изменения или улучшения по сравнению с двумя основными приложениями OSX Emacs.

4b9b3361

Ответ 1

В качестве долговременного пользователя emacs я бы рекомендовал против "экзотических" версий emacs (аквамаки попадают в эту категорию, но этот "стартовый комплект" тоже, и позвольте мне попытаться объяснить, почему), только для ради тренировки пальцев и тренировки мозга.

Моим аргументом является то, что вы хотите учиться emacs раз и навсегда, независимо от платформы (т.е. комбинации OS/desktop/hardware/whatever), в которой вы будете использовать emacs. Почти каждый вкус unix поставляется с предустановленными emacs, поэтому надеемся, что вам никогда не придется прибегать к, например, vi, даже в самых агрессивных средах (например, редактирование файла конфигурации /etc на удаленном сервере HP/UX через ssh). Вы все равно сможете использовать старый emacs 19, который находится там, и даже если у него нет ваших файлов конфигурации (то есть вашего стартового набора, ваших ключевых слов и т.д.), Вы все равно скажете, что 70% ваши обычные возможности редактирования под рукой.

И если вы часто вынуждены редактировать этот файл на этой враждебной машине, вам нужно как можно больше зеркально отобразить конфигурацию .emacs на этом старом emacs. Конечно, вы потеряете по пути некоторые вещи, которые там не поддерживаются, но опять же, good'ol emacs всегда будет emacs, даже если он уменьшен.

Конечно, если вы прекрасно контролируете свою рабочую среду, например. если вы когда-либо работаете только на своем блестящем ноутбуке Mac, вам может понадобиться более приятная версия emacs, просто потому, что будет проще использовать Cmd-C/Cmd-V, чем для изучения Meta-W/Ctrl-Y. И по той же причине, если вы разрабатываете на одном языке, вы можете использовать полномасштабную среду IDE с супер-полномочиями, адаптированными для этого языка (например, Eclipse, Xcode, что угодно). Но вы знаете, что когда-нибудь, вам придется отредактировать неожиданный файл, например, оболочку script, или веб-страницу, или Python script, или кто знает, какой текстовый файл и поэтому вы хотите использовать всенаправленный One True Editor.

И вот почему я использую Carbon Emacs на моем блестящем ноутбуке Mac: я получаю то же самое (emacs) в ящике Ubuntu, которое я вынужден использовать на работе, используя точные файлы конфигурации (ручной мои десять лет emacsery), и все же я могу чувствовать себя вполне комфортно на других людях или emacsen других машин.

... мои два цента

Ответ 2

Я создаю Emacs 23 из источника и использую его с emacs-starter-kit некоторое время, и я определенно считаю, что это хороший компромисс.

Там есть яркие ярлыки Mac Cmd, встроенные в Emacs 23, а набор emacs-starter упрощает их настройку на основе каждого компьютера/пользователя.

Я бы посоветовал не думать о том, что вы должны учиться "чистым emacs", не настраивая его слишком сильно. Если вы это сделаете, вам не хватает половины точки emacs. Это самый настраиваемый редактор, поэтому настройте его.

Если вы являетесь системным администратором или похожим, и регулярно перескакиваете на чужие машины, то достаточно справедливы, но если вы хотите, чтобы редактор был одинаковым на каждом unix когда-либо, тогда vim - намного лучший выбор (и более широко доступный). (Это также является хорошей причиной для изучения vim, даже если вы используете emacs в качестве основного редактора).

Стоит изучить классические ярлыки emacs, прежде чем вы их измените. Обычно есть веская причина, по которой они такие, как они. Например, если вы привыкли к TextMate, тогда у вас может возникнуть соблазн сопоставить множество функций с сложными 5 ключевыми аккордами ключей, но в долгосрочной перспективе гораздо проще перейти с длинными последовательностями команд, к которым стремится emacs. При наборе текста гораздо меньше искажений. Вы даже обнаружите, что с завершением табуляции имя M-x long-command быстрее, чем сложные аккорды.

Edit:

Итак, чтобы на самом деле ответить на ваш вопрос, да, вы должны использовать ночные сборки (или лучше, скомпилировать их самостоятельно, это довольно просто с одним Google, и заставляет вас чувствовать себя тепло внутри). И продолжайте работу с emacs-starter-kit. Любые проблемы с ним, не стесняйтесь кричать.

Ответ 3

Я сам использую Carbon Emacs, и я перехожу к порту Cocoa GNU Emacs, когда он выпущен. Я думаю, что между ними нет большой разницы. Я могу думать о некоторых, хотя:

  • "Cocoa" Emacs является "реальным" GNU Emacs вместо вилки, например Carbon Emacs, поэтому, если вы хотите быть в курсе последних версий и использовать последнюю версию, версия Cocoa всегда доступна из GNU CVS.
  • Carbon Emacs включает некоторые пакеты elisp, которые не включены в GNU Emacs. Там доступен список.
  • Cocoa порт - это версия 23, а Carbon - 22. Возможно, некоторые проблемы связаны с совместимостью elisp и т.д.

Я бы тоже держался подальше от Аквамаков. Этот GUI кажется слишком ориентированным на мышь. yuck:)

Ответ 4

Я использую Aqua Emacs на некоторое время над стандартным Emacs. То, что мне нравилось, было чуть более качественной системной интеграцией... возможно, официальная сборка Emacs Cocoa могла обеспечить достаточную стандартную интеграцию с системным интерфейсом, что сделало бы хороший выбор по умолчанию.

Возможно, стоит попробовать ночные часы, хотя бы для того, чтобы отчитываться и помогать им стабилизировать вещи.

Самая простейшая вещь для меня о Aqua emacs - это режим по умолчанию для .m файла, на самом деле Matlab (который использует то же расширение) вместо режима Obj-C!

Одна вещь, которую мне бы хотелось увидеть, - это более высокая осведомленность о XCode из сборки emacs (на самом деле просто улучшая такие вещи, как Objc-режим, я думаю).

Ответ 5

  • Carbon Emacs - emacs
  • Cocoa Emacs - emacs
  • X11 Emacs - emacs
  • emacs -nw (то есть: только командная строка emacs) также emacs
  • Даже Xemacs достаточно близко к emacs для новичка, что вы не заметите разницу за пределами GUI: D

Я использовал Carbon Emacs на mac (*), но я не могу представить, что в Cocoa Emacs есть что-то другое, чем любая другая версия Emacs, которая не может быть прослежена до любой конфигурации или ошибка!

(*) ive широко использовал X11, командные строки emacs и Xemacs на платформах linux, хотя

Ответ 6

Для подмножества emacs, которые я использую, очень мало различий между использованием Aquamacs и GNU emacs в окне linux. Это полное редактирование текста, взаимодействие lisp, команды буфера, новые кадры, прямоугольные области выделения, стандартные клавиши редактирования символов emacs и c. Я редактирую файл .emacs для настройки конфигурации и т.д. (Я думаю, что использование графического редактора конфигурации использует настройки Aquamacs, как сказал кто-то другой.)

Я думаю, что тенденция последних обновлений заключалась в том, чтобы отойти от традиционного стиля emacs и в нечто большее, чем Mac, - это правда, и я обнаружил, что отключил эти параметры. Но вы можете согнуть его по своему желанию и сделать его более традиционным.