OS X emacs: разница между X11 против NS против какао?
10
Я считаю, что есть три способа собрать emacs на osx --- x11, ns (nextstep?) И cocoa. Может кто-нибудь объяснить, что означают варианты сборки / разница между этими тремя?
Прошло несколько месяцев с тех пор, как я собрал версию x11 для OSX, но мне потребовалось немного времени, чтобы понять, что это необходимо использовать --with-ns=no --with-xкак часть параметров командной строки. Я упоминаю об этом на всякий случай, если кто-то еще заинтересован в создании версии x11 для OSX. Я полагаю, что принятый ответ будет включать упоминание материалов, необходимых для успешной сборки - например, XQuartz (Система X Window) и т. Д.
Lawlist
@ список ах, приятно знать! одна из причин, по которой я задал этот вопрос, заключается в том, что я собирался собрать emacs с x11 (для xwidgets) на osx, но мне было интересно, не потеряю ли я что-то от перехода с NS на x11.
1
Смотрите эту связанную ветку под названием « Компилировать emacs с xwidget под OSX? »: Emacs.stackexchange.com/questions/25037/… Пользовательские сочетания клавиш, на которые я полагаюсь в версии Emacs с графическим интерфейсом --with-ns, не работают в версии x11, так что я пока не смог продуктивно использовать x11. Мне нужно было бы научиться настраивать альтернативные сочетания клавиш в x11 - пользователи Linux, вероятно, были бы правы дома с версией x11, но я отчасти потерян.
законник
Ответы:
12
Существует множество версий Emacs для macOS, в том числе:
Официальный Emacs для macOS собран с использованием порта "NS", также известного как порт "cocoa". Как следует из названия, этот порт Emacs создается в Emacs для операционной системы NextSTEP и является официальным графическим интерфейсом Emacs для macOS начиная с Emacs 23.
Митсухару Ямамото-сан поддерживает «порт Mac» в Emacs. Он предоставляет альтернативный графический интерфейс с другим набором функций по сравнению с портом NS. Это происходит из порта Emacs в Mac OS 8/9 и из «Carbon» порта Emacs 22. (Этот порт также называют Emacs «железнодорожный кот», так как именно здесь находится brewрецепт.)
Aquamacs основан на NS-порте Emacs и содержит ряд улучшений, которые делают его более похожим на традиционные приложения MacOS.
X11: Можно создать Emacs с тем же графическим интерфейсом, который используется в системе X11, однако для его работы требуется сервер X11. К сожалению, конечный результат не будет выглядеть как MacOS - такие вещи, как меню, выглядят так, как будто вы работаете в Unix-подобной системе. Фактически, это не один графический интерфейс, а семейство графических интерфейсов, поскольку его можно создавать с использованием различных библиотек поддержки X11, таких как GTK +.
Терминал только. Это дает вам Emacs, который может работать только в окне терминала, во многом как GUI, который ведет себя Emacs при передаче -nwопции.
Итак, что вы должны выбрать?
Если вы ленивы, выберите официальный Emacs - вы можете скачать готовую версию с https://emacsformacos.com .
Если вы хотите потратить некоторое время на получение лучшего Emacs для вас, попробуйте как официальный Emacs, так и порт "mac". В целом, они довольно похожи, но предоставляют немного другой набор функций.
Как правило, я бы не рекомендовал использовать порт X11, так как у вас не будет MacOS, но в некоторых ситуациях это может представлять интерес:
Вы хотите, чтобы функция была доступна только в порту X11, например, поддержка xwidget
Вы привыкли к X11 и хотите точно такой же внешний вид при использовании Emacs на macOS
Вы хотите "эталонную" реализацию Emacs, например, при добавлении в порт NS Emacs.
--with-ns=no --with-x
как часть параметров командной строки. Я упоминаю об этом на всякий случай, если кто-то еще заинтересован в создании версии x11 для OSX. Я полагаю, что принятый ответ будет включать упоминание материалов, необходимых для успешной сборки - например, XQuartz (Система X Window) и т. Д.--with-ns
, не работают в версии x11, так что я пока не смог продуктивно использовать x11. Мне нужно было бы научиться настраивать альтернативные сочетания клавиш в x11 - пользователи Linux, вероятно, были бы правы дома с версией x11, но я отчасти потерян.Ответы:
Существует множество версий Emacs для macOS, в том числе:
Официальный Emacs для macOS собран с использованием порта "NS", также известного как порт "cocoa". Как следует из названия, этот порт Emacs создается в Emacs для операционной системы NextSTEP и является официальным графическим интерфейсом Emacs для macOS начиная с Emacs 23.
Митсухару Ямамото-сан поддерживает «порт Mac» в Emacs. Он предоставляет альтернативный графический интерфейс с другим набором функций по сравнению с портом NS. Это происходит из порта Emacs в Mac OS 8/9 и из «Carbon» порта Emacs 22. (Этот порт также называют Emacs «железнодорожный кот», так как именно здесь находится
brew
рецепт.)Aquamacs основан на NS-порте Emacs и содержит ряд улучшений, которые делают его более похожим на традиционные приложения MacOS.
X11: Можно создать Emacs с тем же графическим интерфейсом, который используется в системе X11, однако для его работы требуется сервер X11. К сожалению, конечный результат не будет выглядеть как MacOS - такие вещи, как меню, выглядят так, как будто вы работаете в Unix-подобной системе. Фактически, это не один графический интерфейс, а семейство графических интерфейсов, поскольку его можно создавать с использованием различных библиотек поддержки X11, таких как GTK +.
Терминал только. Это дает вам Emacs, который может работать только в окне терминала, во многом как GUI, который ведет себя Emacs при передаче
-nw
опции.Итак, что вы должны выбрать?
Если вы ленивы, выберите официальный Emacs - вы можете скачать готовую версию с https://emacsformacos.com .
Если вы хотите потратить некоторое время на получение лучшего Emacs для вас, попробуйте как официальный Emacs, так и порт "mac". В целом, они довольно похожи, но предоставляют немного другой набор функций.
Как правило, я бы не рекомендовал использовать порт X11, так как у вас не будет MacOS, но в некоторых ситуациях это может представлять интерес:
xwidget
источник