Emacs vs. Empuje

Emacs vs. Empuje

Emacs y Empuje son los dos editores de texto más utilizados en sistemas de unix y unix. Hay una larga historia de competencia entre estos dos editores de texto, que son mucho más avanzados que otros editores de texto en la plataforma Unix. Si bien ambos editores cuentan con una funcionalidad similar a través de sus complementos, secuencias de comandos y claves de acceso directo, sus enfoques son ligeramente diferentes.

Cuadro comparativo

Diferencias - similitudes - Tabla de comparación de emacs versus vim
EmacsEmpuje
  • La calificación actual es 4.04/5
  • 1
  • 2
  • 3
  • 4
  • 5
(167 calificaciones)
  • La calificación actual es 4.21/5
  • 1
  • 2
  • 3
  • 4
  • 5
(210 calificaciones)
Vista previa de lanzamiento 23 7.2A.13 (2008-07-04)
Escrito en C y emacs lisp Script C y Vim
Plataforma Multiplataforma, incluyendo UNIX, Linux y Microsoft Windows Multiplataforma, incluyendo UNIX, Linux y Microsoft Windows
Disponible en Inglés, chino, francés, italiano, polaco, ruso Inglés, chino, francés, italiano, polaco, ruso
Tipo Editor de texto Editor de texto
Licencia GPL GPL Software gratuito, Caridad de caridad, GPL Compatible
Sitio web http: // www.ñu.org/software/emacs/ http: // www.empuje.org/
Introducción (de Wikipedia) Emacs es una clase de editores de texto ricos en características, generalmente caracterizados por su extensibilidad. Emacs tiene más de 1,000 comandos de edición. También permite al usuario combinar estos comandos en macros para automatizar el trabajo. Vim es un editor de texto lanzado por primera vez por Bram Moolenaar en 1991 para la computadora Amiga. El nombre "VIM" es un acrónimo de "VI mejorado" porque VIM fue creado como una versión extendida del editor VI, con muchas características adicionales diseñadas para ser útiles
Diseñado por Richard Stallman Bram Moolenaar
Versión inicial 1976 1991
Liberación estable 22.3 (2008-09-05) 7.2 (2008-08-09)
Pestañas de búfer Compatible tanto en la línea de comandos como en la interfaz gráfica de usuario Compatible tanto en la línea de comandos como en la interfaz gráfica de usuario

Interfaz de usuario de EMAC e VIM

VIM utiliza modos de edición, más comúnmente el modo de comando y modo de insertar. VIM tiene como objetivo minimizar el número de pulsaciones de teclas que un usuario tiene que presionar, porque VI, sobre el cual se basa VIM, fue diseñado para usarse en terminales lentos.

EMACS utiliza teclas modificadoras para habilitar accesos directos, lo que a menudo implica presionar varias teclas simultáneamente para una sola función. Este aspecto de emacs a menudo es criticado.

Facilidad de aprendizaje

EMACS es más fácil de aprender, ya que tiene una interfaz más natural (para los usuarios familiarizados con los editores de texto basados ​​en GUI). Dado que Vim tiene diferentes modos de edición, los principiantes les resulta un poco más difícil aprender.

Productividad y velocidad de edición

Los entusiastas de VIM argumentan que una vez que un usuario se familiariza con los modos de edición y los comandos de VIM, permite una productividad y eficiencia mucho mayores. La edición de archivos suele ser más rápida con VIM que con Emacs debido a la interfaz de VIM a propósito impulsada por la velocidad. Por ejemplo, el movimiento del cursor se puede controlar a través del H, J, K, y L llaves en el modo normal. Esto significa que las manos del usuario no necesitan dejar la posición de "fila de inicio", lo que mejora la eficiencia, pero tiene el precio de agregar sobrecarga, ya que se requiere conmutación de modo para elegir entre el movimiento y la edición de texto. En EMACS (con la configuración predeterminada), el usuario mueve el cursor con los atajos CTRL-B o CTRL-F, lo que podría ralentizar al usuario novato ya que dos teclas deben presionarse. Las mejoras de productividad y eficiencia en los EMAC dependen de la configuración del entorno de edición en lugar del editor en sí.

Uso de RAM de emacs vs vim

Vim es más ligero que los emacs y usa menos memoria. VIM defensores critican el consumo de recursos de Emacs con la sugerencia de lengua en la mejilla de que Emacs representa "ochenta megabytes y intercambiando constantemente".

Sin embargo, con Gnuclient, se puede ejecutar un solo proceso de emacs persistentes que puede admitir varios clientes simultáneamente. Esto acelera el tiempo de inicio y disminuye el uso total de la memoria, cerrando la brecha entre emacs y vim.

Extensibilidad y personalización de emacs vs vim

Si bien tanto VIM como EMACS admiten complementos que mejoran su funcionalidad, Emacs admite mucha más personalización del entorno del editor. Esta es posiblemente la característica más importante de los emacs y es responsable de gran parte de los seguidores dedicados de Emacs.

Los EMAC se pueden extender en ELISP, mientras que VIM tiene su propio lenguaje interno de secuencias de comandos y admite el uso de otros lenguajes de programación para el desarrollo de complementos.

Los emacs se pueden extender sobre la marcha redefiniendo las funciones ELISP incorporadas, ya sea escribiendo la nueva definición en emacs o cargando archivos ELISP. Los grupos de cambios relacionados se denominan "modos", y se pueden configurar fácilmente para usarse automáticamente para tipos particulares de archivos (buffers). Por lo tanto, es fácil definir modos para diferentes lenguajes o marcos de programación como "modo LISP" o "Ruby on Rails Mode" o "Mode PHP". Estos modos pueden modificar directamente los comportamientos centrales incluso de emacs, formatear o colorear automáticamente el texto y agregar plantilla estándar o texto de "calderas", como declaraciones de funciones y cierres. Entonces, los programadores encuentran que los emacs son mucho más personalizables para sus requisitos particulares que VIM. Sin embargo, algunos programadores pueden encontrar que VIM finalmente se adapta mejor a su entorno de programación debido a su operación igualmente personalizable y totalmente modal.

VIM también se puede extender en la marcha utilizando el modo de comando. El modo de comando permite que se establezcan las opciones de configuración, se definan las funciones y las macros. De hecho, los archivos de configuración para VIM son solo comandos que se pueden ingresar a través del modo de comando.

Interfaz gráfica de usuario (GUI)

Tanto VIM como EMAC tienen interfaces de usuario gráficas. Prácticamente todos los elementos de menú en la interfaz gráfica para ambos editores son simplemente formas de manejar un comando de acceso directo o una configuración rápida. Las GUI para los editores no proporcionan prácticamente ninguna función adicional más allá de las disponibles en la CLI (interfaz de línea de comandos)

Emacs usa xdisplay o gtk2 para su GUI. VIM puede usar muchas otras bibliotecas de GUI, como GTK, Gnome, Gnome2, Motif, Athena y Nextw, además de GTK2.