Creo que hay tres formas de construir emacs en osx --- x11, ns (nextstep?) Y cacao. ¿Alguien puede explicar qué significan las opciones de compilación / la diferencia entre estos tres?
Han pasado algunos meses desde que construí la versión x11 en OSX, pero me llevó un poco de tiempo darme cuenta de que era necesario usarlo --with-ns=no --with-xcomo parte de las opciones de la línea de comandos. Menciono esto por si alguien más está interesado en construir la versión x11 en OSX. Me imagino que la respuesta aceptada incluirá una mención de los materiales necesarios para una construcción exitosa, por ejemplo, XQuartz (The X Window System), etc.
leyes
@lawlist ah, bueno saberlo! Una de las razones por las que hice esta pregunta es porque estaba buscando construir emacs con x11 (para xwidgets) en osx, pero me preguntaba si perdería algo al pasar de NS a x11.
1
Consulte este hilo relacionado titulado "¿ Compilar emacs con xwidget en OSX? ": Emacs.stackexchange.com/questions/25037/... Los atajos de teclado personalizados en los que confío en la versión GUI de Emacs construido --with-nsno funcionan en la versión x11, así que todavía no he podido usar el x11 productivamente. Tendría que aprender a configurar métodos abreviados de teclado alternativos en x11: los usuarios de Linux probablemente estarían en casa con la versión x11, pero estoy un poco perdido.
ley el
Respuestas:
12
Existen varias versiones de Emacs para macOS, que incluyen:
El Emacs oficial en macOS está construido utilizando el puerto "NS", también conocido como el puerto "cacao". Como su nombre lo indica, este puerto de Emacs se origina en Emacs para el sistema operativo NextSTEP y ha sido la GUI oficial de Emacs en macOS desde Emacs 23.
Mitsuharu Yamamoto-san mantiene el "puerto Mac" de Emacs. Proporciona una GUI alternativa con un conjunto de características diferente en comparación con el puerto NS. Esto se origina en el puerto Emacs para Mac OS 8/9 y el puerto "Carbon" de Emacs 22. (Este puerto también se conoce como el "gato ferroviario" Emacs, ya que aquí es donde brewse aloja la receta).
Aquamacs se basa en el puerto NS de Emacs y contiene una serie de mejoras que hacen que se comporte más como las aplicaciones macOS tradicionales.
X11: es posible construir Emacs con la misma GUI que se usa en el sistema X11, sin embargo, requiere un servidor X11 para ejecutarse. Desafortunadamente, el resultado final no tendrá el aspecto y la sensación de macOS: cosas como los menús parecen estar ejecutándose en un sistema similar a Unix. De hecho, esta no es una GUI sino una familia de GUI: es posible construir usando diferentes bibliotecas de soporte X11 como GTK +.
Solo terminal. Esto le proporciona un Emacs que solo puede ejecutarse en una ventana de terminal, al igual que una GUI que Emacs se comporta cuando se pasa la -nwopción.
Entonces, ¿cuál debes elegir?
Si eres flojo, elige el Emacs oficial: puedes descargar una versión preconstruida de https://emacsformacos.com .
Si desea dedicar un tiempo a obtener el mejor Emacs para usted, pruebe tanto el Emacs oficial como el puerto "mac". En general, son bastante similares pero proporcionan un conjunto de características ligeramente diferente.
En general, no recomendaría usar el puerto X11 ya que no obtendrá el aspecto de macOS, sin embargo, en algunas situaciones puede ser de interés:
Desea una función solo disponible en el puerto X11, como soporte para xwidget
Está acostumbrado a X11 y desea exactamente la misma apariencia cuando usa Emacs en macOS
Desea una implementación de "referencia" de Emacs, por ejemplo, cuando contribuye al puerto NS de Emacs.
--with-ns=no --with-x
como parte de las opciones de la línea de comandos. Menciono esto por si alguien más está interesado en construir la versión x11 en OSX. Me imagino que la respuesta aceptada incluirá una mención de los materiales necesarios para una construcción exitosa, por ejemplo, XQuartz (The X Window System), etc.--with-ns
no funcionan en la versión x11, así que todavía no he podido usar el x11 productivamente. Tendría que aprender a configurar métodos abreviados de teclado alternativos en x11: los usuarios de Linux probablemente estarían en casa con la versión x11, pero estoy un poco perdido.Respuestas:
Existen varias versiones de Emacs para macOS, que incluyen:
El Emacs oficial en macOS está construido utilizando el puerto "NS", también conocido como el puerto "cacao". Como su nombre lo indica, este puerto de Emacs se origina en Emacs para el sistema operativo NextSTEP y ha sido la GUI oficial de Emacs en macOS desde Emacs 23.
Mitsuharu Yamamoto-san mantiene el "puerto Mac" de Emacs. Proporciona una GUI alternativa con un conjunto de características diferente en comparación con el puerto NS. Esto se origina en el puerto Emacs para Mac OS 8/9 y el puerto "Carbon" de Emacs 22. (Este puerto también se conoce como el "gato ferroviario" Emacs, ya que aquí es donde
brew
se aloja la receta).Aquamacs se basa en el puerto NS de Emacs y contiene una serie de mejoras que hacen que se comporte más como las aplicaciones macOS tradicionales.
X11: es posible construir Emacs con la misma GUI que se usa en el sistema X11, sin embargo, requiere un servidor X11 para ejecutarse. Desafortunadamente, el resultado final no tendrá el aspecto y la sensación de macOS: cosas como los menús parecen estar ejecutándose en un sistema similar a Unix. De hecho, esta no es una GUI sino una familia de GUI: es posible construir usando diferentes bibliotecas de soporte X11 como GTK +.
Solo terminal. Esto le proporciona un Emacs que solo puede ejecutarse en una ventana de terminal, al igual que una GUI que Emacs se comporta cuando se pasa la
-nw
opción.Entonces, ¿cuál debes elegir?
Si eres flojo, elige el Emacs oficial: puedes descargar una versión preconstruida de https://emacsformacos.com .
Si desea dedicar un tiempo a obtener el mejor Emacs para usted, pruebe tanto el Emacs oficial como el puerto "mac". En general, son bastante similares pero proporcionan un conjunto de características ligeramente diferente.
En general, no recomendaría usar el puerto X11 ya que no obtendrá el aspecto de macOS, sin embargo, en algunas situaciones puede ser de interés:
xwidget
fuente