¿Cuáles son las ventajas de Emacs para usuarios de Mac OS X?


9

Durante el año pasado, más o menos, he visto un movimiento para cambiar a Emacs en Mac OS X, a menudo lejos de TextMate. Si bien entiendo la motivación para cambiar de TextMate (TM2 es más o menos vaporware), realmente no entiendo el atractivo de Emacs. Reconozco que es un editor extremadamente poderoso, pero no se integra muy bien con el sistema operativo, usa comandos de teclado diferentes que la mayoría de las otras aplicaciones y tiene una curva de aprendizaje increíble.

Con una preponderancia de los editores de texto de otros programadores en Mac OS X (BBEdit, Sublime Text, Xcode) y algunos prometedores próximos (Chocolat, Kod), ¿cuál es el atractivo de Emacs para alguien que no vive en una terminal y no tiene el memoria muscular para ello (todavía)?


1
También tenga en cuenta que muchos de los accesos directos de Emacs funcionan para la edición de texto en OS X, por ejemplo Ctrl + D para eliminar a la derecha, Ctrl + K para matar y Ctrl + Y para Yank, etc. Esto funciona bien con Aquamacs Emacs donde Cmd +? accesos directos como Cmd + Z para Deshacer, Cmd + X, + C, + V para Cortar / Copiar / Pegar todo funciona igual que el resto de OS X.
Jared Updike

Respuestas:


6

En mi opinión, si tienes experiencia en UNIX con experiencia previa con Emacs, podría tener sentido "llevarlo adelante" a OS X. Como nuevo editor de texto, personalmente no creo que tenga sentido. Sí, es un editor de texto totalmente capaz y puede hacer todo, pero como has dicho, no se integra bien en el sistema operativo, lo que para mí es un obstáculo importante.

Uso vim en OS X porque es mi editor preferido en Linux (donde hago gran parte del trabajo que me permite ganar dinero), sin embargo, dicho esto, he comenzado a aprender y usar BBEdit.


10

Puede usar una GUI OSX Emacs en forma de Aquamacs que está configurada para ser más OSX como sus comandos y menús clave y se integra con el sistema operativo.

Un atractivo de emacs es que emacs está escrito principalmente en el lenguaje (e-lisp) que los usuarios pueden usar para extenderlo, hay muchos scripts que agregan todo tipo de funcionalidades al editor, lo que lo hace casi tan poderoso como un ide. Incluso la configuración está escrita en el mismo idioma, por lo que una vez que la aprenda, puede modificar lo que desee.

La otra razón por la que uso emacs es que se ejecuta en varios sistemas operativos (Windows, Linux, Solaris y OSX), por lo que no necesito un editor diferente para cada uno como lo haría si usara BBEdit, etc.


1
Emacs es Emacs donde quiera que vaya. Aprende una vez (e imprime una buena hoja de trucos), y lo sabrás para siempre.
kmm

1
@ Kevin: Lo he estado usando desde 1991, y todavía lo estoy aprendiendo. ;-) Vivo en él por trabajo, lo uso a diario, pero todavía estoy aprendiendo consejos como M- / para la finalización local dinámica ...
Michael H.

6

Es probable que las respuestas a preguntas como esta sean subjetivas. Tiendo a estar en desacuerdo con que Emacs.app no ​​se integra bien en MacOS. Actualmente estoy usando Emacs.app regular de emacsformacosx.com (no Aquamacs) y algunas líneas en ~ / .emacs pueden usar accesos directos familiares, por ejemplo, intente

(setq mac-option-modifier nil)
(setq mac-right-option-modifier 'meta)
(setq mac-right-command-modifier 'hyper)
;; M-x to its usual meaning:
(global-set-key (quote [343144]) (quote execute-extended-command))
;;  M-p to its usual meaning:
(global-set-key (quote [332412]) (quote next-history-element))

También los accesos directos como cmd-O abren el cuadro de diálogo normal de archivos MacOS, por lo que no es necesario aprender nuevos accesos directos. Por cierto, varios accesos directos comunes de MacOS en realidad provienen de Emacs (por ejemplo, Ca para el inicio de línea y Ce para el final de línea, que son los valores predeterminados en la mayoría de las aplicaciones de MacOS como Safari o iWork).

Principales razones por las que uso Emacs:

  1. Soporte para prácticamente cualquier lenguaje de programación, no solo resaltado de sintaxis sino también estilo, finalización de identificadores, sangría automática (solo usando TAB en emacs mantiene el código limpio y evita un número bastante bueno de errores tipográficos / paréntesis no coincidentes, etc.)

  2. modo org

  3. Gran soporte para editar / previsualizar documentos LaTeX usando AUCTex

  4. Compatibilidad de flujo de trabajo con mi escritorio, que es una computadora Linux

  5. Surgen herramientas poderosas para el desarrollo de software (y no solo) como magit

  6. Increíble soporte en EmacsWiki


1
+1 ya que estas son exactamente las razones principales por las que uso emacs en OS X, sin mencionar que eso es lo que usé en Linux antes de cambiarme a Mac. org-mode es genial, y siempre trato de encontrar más formas de agregarlo a mi flujo de trabajo.
cm2

5

Realmente no es una respuesta adecuada, pero hay algunos enlaces específicos de Mac en la compilación Cocoa Emacs que son útiles.

Vinculaciones de teclas específicas de Emacs Cocoa Mac / OS X

  • + &kill-this-buffer
  • + 'next-multiframe-window
  • + ,personalizar
  • + -línea central
  • + ;ispell-next
  • + shift+ :ispell
  • + shift+ ?info
  • + shift+ Cpopup-color-panel
  • + shift+ Ddired
  • + shift+ Eeditar-abreviaturas
  • + shift+ Hdo-hide-others
  • + shift+ Lcomando de shell
  • + shift+ Mentrada manual
  • + shift+ Sns-write-file-using-panel
  • + shift+ ^amortiguadores
  • + `otro marco
  • + amark-whole-buffer
  • + cns-copy-inclusive-secundario
  • + disearch-repeat-backward
  • + eisearch-yank-kill
  • + fisearch-forward
  • + gisearch-repeat-forward
  • + hns-do-hide-emacs
  • + jcambio-señalar-y-marcar
  • + kkill-this-buffer
  • + lgoto-line
  • + miconify-frame
  • + nmarco de maquillaje
  • + ons-open-file-using-panel
  • + pns-print-buffer
  • + qsave-buffers-kill-emacs
  • + ssave-buffer
  • + tns-popup-font-panel
  • + urevert-buffer
  • + vtirar
  • + weliminar marco
  • + xkill-region
  • + yns-paste-secundario
  • + zdeshacer
  • + |shell-command-on-region
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.