OS X emacs: diferença entre X11 e NS vs cacau?

10

Acredito, existem três maneiras de construir o emacs no osx --- x11, ns (nextstep?) E cacau. Alguém pode explicar o que significam as opções de compilação / a diferença entre essas três?

Dan
fonte
11
Faz alguns meses desde que construí a versão x11 no OSX, mas demorei um pouco para descobrir que era necessário usá-lo --with-ns=no --with-xcomo parte das opções da linha de comando. Menciono isso apenas no caso de mais alguém estar interessado em criar a versão x11 no OSX. Imagino que a resposta aceita incluirá uma menção dos materiais necessários para uma compilação bem-sucedida - por exemplo, XQuartz (The X Window System), etc.
lawlist
ah ah @lawlist, bom saber! Uma das razões para eu fazer essa pergunta é porque eu estava procurando construir o emacs com x11 (para xwidgets) no osx, mas estava pensando se eu perderia algo ao passar do NS para o x11.
11
Consulte este tópico relacionado, intitulado " Compilar o emacs com o xwidget no OSX? ": Emacs.stackexchange.com/questions/25037/… Os atalhos de teclado personalizados nos quais confio na versão da GUI do Emacs criada --with-nsnão funcionam na versão x11, então ainda não consegui usar o x11 de forma produtiva. Eu precisaria aprender a configurar atalhos de teclado alternativos no x11 - os usuários do Linux provavelmente estariam em casa com a versão x11, mas estou meio perdido.
lawlist

Respostas:

12

Existem várias versões do Emacs para macOS, incluindo:

  • O Emacs oficial no macOS é construído usando a porta "NS", também conhecida como porta "cacau". Como o nome sugere, essa porta do Emacs se origina no Emacs para o sistema operacional NextSTEP e é a GUI oficial do Emacs no macOS desde o Emacs 23.

  • Mitsuharu Yamamoto-san mantém a "porta Mac" do Emacs. Ele fornece uma GUI alternativa com um conjunto de recursos diferente em comparação com a porta NS. Isso se origina da porta Emacs para o Mac OS 8/9 e da porta "Carbon" do Emacs 22. (Essa porta também é chamada de Emacs "gato ferroviário", pois é onde a brewreceita está hospedada).

  • O Aquamacs é baseado na porta NS do Emacs e contém uma série de aprimoramentos, tornando-o mais parecido com os aplicativos tradicionais do macOS.

  • X11: É possível construir o Emacs com a mesma GUI usada no sistema X11, no entanto, é necessário um servidor X11 para ser executado. Infelizmente, o resultado final não terá a aparência do macOS - coisas como menus parecem que você estava executando em um sistema unix. Na verdade, essa não é uma GUI, mas uma família de GUI: s, pois é possível criar usando diferentes bibliotecas de suporte do X11, como o GTK +.

  • Somente terminal. Isso fornece um Emacs que só pode ser executado em uma janela de terminal, assim como uma GUI Emacs se comporta quando passa a -nwopção.

Então, qual você deve escolher?

Se você é preguiçoso, escolha o Emacs oficial - você pode baixar uma versão pré-criada em https://emacsformacos.com .

Se você deseja gastar algum tempo para obter o melhor Emacs para você, experimente o Emacs oficial e a porta "mac". No geral, eles são bastante semelhantes, mas oferecem um conjunto de recursos ligeiramente diferente.

Geralmente, eu não recomendaria o uso da porta X11, pois você não terá a aparência do macOS, no entanto, em algumas situações, pode ser interessante:

  • Você deseja um recurso disponível apenas na porta X11, como suporte para xwidget
  • Você está acostumado ao X11 e deseja exatamente a mesma aparência ao usar o Emacs no macOS
  • Você deseja uma implementação "de referência" do Emacs, por exemplo, ao contribuir para a porta NS do Emacs.
Lindydancer
fonte
você também pode precisar da variante x11 se estiver instalando-a em um host remoto no qual está instalando :-)
UpAndAdam