Doom Emacs: Un Emacs para usuarios de Vim

Doom Emacs: Una imagen de héroe de Emacs para usuarios de Vim

Si buscas un editor de texto rápido y peligroso con todas las campanas y silbatos, probablemente hayas mirado Vim y Emacs y, tal vez, hayas sacudido la cabeza y te hayas dado por vencido. Son demasiado viejos, demasiado difíciles, pero de algún modo intrigantes. Pero, ¿cuál elegir? Ambos tienen sus pros y sus contras.

¿Por qué no hacer las dos cosas?

Introducción a Vim

El editor vi, pronunciado "vee-eye", más conocido por su iteración posterior, Vim, es uno de los editores de texto gratuitos más populares del mundo. Gratuito, porque ni siquiera necesitas descargarlo, ya está instalado en tu sistema operativo.

Vim es un editor de pantalla, a diferencia de un editor de líneas. Antiguamente, los editores de líneas sólo te permitían editar una línea de un archivo cada vez. Para algunas aplicaciones, esto era suficiente, pero los documentos más complejos exigían un espacio de edición más visible. Los editores de pantalla permitían al usuario ver un documento entero (o, partes de él, si es un documento largo) a pantalla completa.

Vim también es un editor modal, lo que significa que tiene diferentes "modos" que puedes activar y desactivar. Aquí es donde un principiante en Vim se tropezará rápidamente. No puedes simplemente empezar a escribir palabras en Vim del mismo modo que en Microsoft Word o en cualquier software de procesamiento de textos popular. Para escribir palabras tienes que cambiar al modo "insertar". Ahora puedes insertar texto. Y una vez que hayas terminado de insertar texto, cambia al modo "comando" para empezar a ejecutar comandos sobre el texto que has insertado.

Esto puede parecer un proceso tedioso y laborioso, y lo es, pero una vez que te acostumbras, Vim puede mejorar rápidamente tu flujo de trabajo de edición de texto. Muchos comandos complejos están integrados en unas pocas pulsaciones básicas, lo que significa que puedes moverte por el documento y editar texto a mucha mayor velocidad.

Como es pequeño, portátil y muy popular, Vim está incluido en prácticamente todos los sistemas operativos que puedas utilizar. Esto significa que si aprendes Vim en un ordenador, puedes llevarte ese conocimiento a todas partes. Por ejemplo, si te "conectas" a tu servidor VPS InMotion Hosting , tendrás Vim disponible. Del mismo modo, si te conectas a otro servidor en otra ubicación, gestionado por otro host, seguirás teniendo Vim al alcance de la mano, listo para aceptar tus comandos.

Esto nos lleva a preguntarnos, ¿por qué querrías elegir cualquier otro oscuro editor de texto modal? Ahora es el momento de echar un vistazo a Emacs.

Vim Vs. Emacs

Emacs y Vim no son exactamente competidores en el reino de los editores de texto poco conocidos. Ambos son gratuitos, personalizables e inspiran acalorados debates entre sus usuarios. Lo mejor es pensar que Emacs y Vim representan dos filosofías completamente distintas de abordar el trabajo, cada una con su propio conjunto de ventajas e inconvenientes.

"En el mundo GNU/Linux hay dos grandes programas de edición de texto: el minimalista vi (conocido en algunas implementaciones como elvis) y el maximalista emacs. Yo utilizo emacs, que podría considerarse un procesador de textos termonuclear. Fue creado por Richard Stallman; no hace falta decir más. Está escrito en Lisp, que es el único lenguaje informático que es bello. Es colosal, y sin embargo sólo edita archivos de texto ASCII directo, es decir, sin fuentes, sin negritas, sin subrayados. En otras palabras, las horas de ingeniería que, en el caso de Microsoft Word, se dedicaron a funciones como la combinación de correspondencia y la posibilidad de incrustar largometrajes cinematográficos en memorandos corporativos, en el caso de emacs se concentraron con intensidad maníaca en el problema aparentemente sencillo de editar texto. Si eres escritor profesional, es decir, si pagan a alguien por preocuparse de cómo se formatean e imprimen tus palabras, emacs eclipsa a todos los demás programas de edición aproximadamente de la misma forma que el sol del mediodía eclipsa a las estrellas. No es sólo más grande y más brillante; simplemente hace que todo lo demás se desvanezca".

-Neal Stephenson, "En el principio fue la línea de comandos" (1998)

La filosofía de Vim, al igual que la filosofía clásica del shell scripting, consiste en reunir pequeñas herramientas para realizar un trabajo. El enfoque de Emacs es más global y anima a sus usuarios a meterlo todo en Emacs, como una navaja suiza, pero exponencialmente más engorrosa. A menudo oirás la ocurrencia de los empollones: "Emacs es un gran sistema operativo con un editor de texto decente".

El usuario típico de Emacs es un molde difícil de capturar, porque no hay usuarios típicos de Emacs. La gente con intereses oscuros y divergentes tiende a utilizar Emacs porque es como una pizarra en blanco, puedes configurarlo casi desde cero para hacer prácticamente cualquier cosa según la filosofía del software abierto: es tecnología de propósito general, así que haz que haga lo que tú quieras sin restricciones innecesarias. Los desarrolladores utilizan emacs, y también lo hacen los novelistas, los directores ejecutivos, los académicos, los científicos y los periodistas.

Emacs, como Vim, es un editor de texto modal. Y, como Vim, Emacs utiliza pulsaciones sencillas para invocar funciones complicadas. Sin embargo, los modos de Emacs son mucho mayores. En lugar de limitarse a cambiar entre un modo de inserción y otro de comando, Emacs proporciona un surtido ilimitado de modos "principales" que alteran completamente el programa en función del tipo de trabajo que estés haciendo.

Por ejemplo, si estás codificando un sitio web, podrías utilizar el modo "web". Si estás escribiendo un programa en C, podrías utilizar el modo "C". Hay un modo diferente para prácticamente cada tipo de trabajo que quieras hacer, con comandos de teclado personalizados asignados a funciones de ayuda según el modo en el que estés trabajando.

Como los modos mayores son tan grandes, también hay modos "menores" para cumplir funciones más pequeñas dentro de varios modos mayores.

Aquí es donde la cosa se pone confusa. Emacs tiene un modo principal llamado modo "malvado", que es un modo especial para los usuarios de Vim. ¿Por qué querrían los usuarios de Vim utilizar Emacs?

Una configuración de Emacs para usuarios de Vim

Emacs es más que un editor de texto. Puedes utilizar Emacs para todo, desde gestionar listas de tareas, organizar un evento, iniciar sesión en servidores, escuchar Spotify, ver YouTube, lanzar sitios web, escribir en un blog, cuadrar tu presupuesto y mucho más. A diferencia de Vim, Emacs tiene una rica interfaz de usuario, por lo que no tienes que utilizarlo desde la línea de comandos. De hecho, los usuarios de Emacs recomiendan no utilizar la versión de Emacs para terminal.

Sin embargo, al igual que aprender Vim, hay una curva de aprendizaje para aprender Emacs correctamente. Gran parte es simple ejercicio de dedos. Pero si ya estás acostumbrado a los comandos de teclado de Vim, puede que te desanime aprender todo un nuevo conjunto de comandos de Emacs.

Por eso un grupo de usuarios de Vim se reunieron y portaron los comandos de teclado de Vim a Emacs. Para utilizar los comandos de teclado de Vim sólo tienes que instalar Emacs e instalar el modo mayor "malvado".

Doom Emacs introduce a los exploradores de Vim en el mundo alienígena de Emacs

Así que ahora tienes Emacs y funciona de forma parecida a Vim, pero tienes todas las otras buenas características de Emacs. Pero sigue pareciéndose a algo que podrías ver en un viejo ordenador Amiga. Emacs básico, nada más sacarlo de la caja, necesita un lavado de cara para parecerse a los editores actuales más aerodinámicos: con fuentes bonitas, un atractivo coloreado de la sintaxis y otros bordados más finos.

Aquí es donde el paquete Doom, "[una] configuración de Emacs para el obstinado vimmer marciano", simplifica aún más el proceso. Doom es una configuración preconfigurada de Vim para Emacs y mucho más. Incluye:

  • Una interfaz contemporánea con un toque retro
  • Paquetes populares de Emacs para productividad, ayuda a la codificación y más
  • Opciones de configuración de Vim o Emacs
  • Una biblioteca elisp incorporada para simplificar la codificación personalizada

Los jugadores de ordenador de los 90 apreciarán el homenaje al popular Doom de iD software, obra de los legendarios desarrolladores de juegos John Carmack y John Romero.

Una inversión de tiempo y esfuerzo que puede compensar

Doom facilita a un novato en Emacs la puesta en marcha de una configuración de Emacs viable y altamente funcional. Pero, aprender cualquier tipo de Emacs sigue requiriendo una inversión significativa de tiempo. Hay tantas cosas que puedes hacer que resulta abrumador simplemente decidir qué hacer.

Y sin embargo, Doom es básicamente la configuración de Emacs de otra persona cargada en tu sistema. Así que, con el tiempo, verás la necesidad de adaptarlo a tu propio trabajo, o tal vez de partir de Emacs base.

Comparte este artículo

One thought on "Doom Emacs: Un Emacs para usuarios de Vim"

  1. Pingback: Doom: Un Emacs para usuarios de Vim | WP FeedBack

Deja una respuesta

Tu dirección de correo electrónico no se publicará. Los campos obligatorios están marcados con *.