5 Paquetes Útiles de Emacs para Mejorar la Productividad

Paquetes de Emacs 00 Imagen Destacada

Emacs es el fregadero de la extensibilidad. Inicialmente se creó para ser un simple editor de texto similar a nano. Hoy en día, Emacs a menudo se considera un intérprete de Lisp que puede hacer casi cualquier cosa.

Emacs puede ser tu navegador web, tu reproductor de música e incluso tu gestor de ventanas. En este artículo, hablamos sobre cinco paquetes que pueden mejorar tu productividad y cómo puedes instalarlos en Emacs vanilla.

Consejo: Descarga nuestra hoja de trucos de atajos de teclado de Emacs para aumentar aún más tu productividad.

Tabla de Contenidos

  • Emacs Vanilla
  • Cómo Instalar Paquetes de Emacs
  • ELPA y MELPA: Repositorios de Paquetes para Emacs
    1. Org Mode
    1. Magit
    1. Evil Mode
    1. Focus Mode
    1. Darkroom
  • Preguntas Frecuentes

También lee: Cómo Usar IRC en Emacs con ERC

Emacs Vanilla

Una instalación mínima de Emacs es, en su mayor parte, ya completa en características. Tiene un tutorial fácil de abordar que enseña los conceptos básicos de su uso como editor de texto.

Paquetes de Emacs 01 Menú de Ayuda

También tiene un poderoso modo de documentación que describe cada función que tiene. Por último, entre otras cosas, Emacs tiene un poderoso sistema de gestión de paquetes que nos permite instalar extensiones de terceros desde dentro de sí mismo.

También lee: Cómo Usar Emacs Como Lector de USENET Con Gnus

Cómo Instalar Paquetes de Emacs

Instalar paquetes de terceros en Emacs es relativamente simple. Solo abre el búfer de comandos y escribe un comando. Haz esto presionando Alt + x y escribiendo list-packages. Esto abrirá una ventana que mostrará todos los paquetes disponibles que puedes instalar.

Paquetes de Emacs 02 Lista de Paquetes

Esta ventana se comporta de manera similar a un búfer estándar de Emacs. Realiza búsquedas dentro de ella usando Ctrl + s y muévete usando los controles de movimiento estándar de Emacs, como Ctrl + n y Ctrl + p.

Ahora, para instalar software en list-packages solo necesitamos presionar Enter o hacer clic en el nombre del paquete en la lista. En mi caso, quería instalar el paquete ledger-mode.

Para hacerlo, busqué el nombre del paquete que quería instalar. Una vez seleccionado, presioné Enter para abrir un búfer separado que mostraba los detalles del paquete.

Paquetes de Emacs 03 Ejemplo de Paquete

En este búfer, puedes ver información sobre el paquete particular que seleccionamos. Aquí es también donde instalamos el paquete. Haz esto moviendo el cursor a ese búfer usando Ctrl + x + o y presionando Enter en el botón ‘Instalar’ o haciendo clic en el botón “Instalar” usando el mouse.

También lee: 5 de las Mejores Distribuciones de Linux para Desarrolladores y Programadores

ELPA y MELPA: Repositorios de Paquetes para Emacs

Una cosa importante a tener en cuenta es que Emacs tiene dos grandes fuentes para sus paquetes. La primera, ELPA, es el Archivo de Paquetes de Emacs Lisp, un repositorio de paquetes mantenido directamente por los desarrolladores de Emacs.

Paquetes de Emacs 04 Elpa

ELPA contiene principalmente un conjunto de paquetes básicos y estables que son mantenidos directamente por los desarrolladores o utilizados por la mayoría de los usuarios de Emacs.

El segundo repositorio, por otro lado, es el Archivo de Paquetes de Emacs Lisp de Milkypostman (MELPA). La comunidad más amplia de Emacs mantiene activamente este repositorio de terceros que contiene la mayoría, si no todos, los paquetes disponibles para Emacs. Se actualiza constantemente para nuevas versiones de paquetes.

Paquetes de Emacs 05 Melpa

Sin embargo, MELPA no es el predeterminado en Emacs. Para agregar el repositorio a tu instalación de Emacs, agrega las siguientes líneas a tu archivo “init.el”:

(require 'package)  
(add-to-list 'package-archives '("melpa"."https://melpa.org/packages/") t)  
(package-initialize)

Este fragmento de código Lisp primero cargará el paquete “package.el” dentro de Emacs. Luego modifica su lista interna de archivos usando la función “add-to-list”. En nuestro caso, estamos agregando el archivo MELPA y su URL para que Emacs lo use.

El último comando que estamos ejecutando es package-initialize. Esto significa que ahora estamos iniciando el paquete “package.el” y que Emacs puede cargar tanto ELPA como MELPA.

A continuación se describen los cinco paquetes útiles de Emacs.

También lee: Cómo Crear Hermosas Diapositivas Beamer con Emacs

1. Org Mode

Org Mode es un programa extenso. En su núcleo, es un modo de programación y organización para Emacs con una sintaxis intuitiva y rica en características que te permite tener un seguimiento de tareas limpio y estructurado.

Paquetes de Emacs 06 Org Mode

Esta sintaxis también ha sido adoptada por muchos usuarios de Emacs para tomar notas y publicar. La función org-export-dispatch te permite exportar tus archivos org a una variedad de formatos, como LaTeX, HTML y OpenDocument.

Además, Org Mode es altamente extensible. Los usuarios de Org han adoptado el modo para varios programas, así como nuevas características y extensiones.

Paquetes de Emacs 07 Org Pomodoro

Obtén Org mode del repositorio ELPA. Una vez que se ha instalado, puedes comenzar a utilizar Org mode creando archivos .org.

Paquetes de Emacs 08 Ejemplo de Archivo Org

2. Magit

Si eres programador, es posible que ya estés al tanto del sistema de control de versiones git, un programa que te permite rastrear cambios para un conjunto particular de archivos. Por lo tanto, es muy útil en el desarrollo de software donde deseas múltiples versiones de un archivo para depurar y desplegar cambios fácilmente.

Paquetes de Emacs 09 Magit

Magit es un cliente git para Emacs. Es un programa completo que te permite gestionar tus repositorios git desde dentro de Emacs. Una característica principal es permitirte realizar commits de archivos sin problemas y recorrer el historial de commits mientras editas dentro del búfer.

Paquetes de Emacs 10 Ejemplo de Instancia de Magit

Magit es un centro único para todo lo relacionado con git en Emacs. Por esta razón, Magit es uno de los paquetes más importantes para programadores que usan Emacs.

Puedes obtener Magit del repositorio MELPA.

También lee: Cómo Configurar Nombre de Usuario y Correo Electrónico de Git en Ubuntu

3. Evil Mode

Evil significa Capa de Vi Extensible, un modo que te permite adoptar combinaciones de teclas al estilo de Vim en Emacs. Esto es útil si ya eres un usuario prolífico de Vim antes de entrar en Emacs. Tiene todas las teclas de movimiento básicas de Vi, así como las teclas adicionales de Vim, como ciw, ci" y ci<.

Paquetes de Emacs 11 Evil Mode

Es importante tener en cuenta que Evil no reemplazará todas las combinaciones de teclas predeterminadas de Emacs. El comportamiento de Evil es similar a establecer set -o vi en el shell. Solo agrega una capa de emulación de Vi sobre Emacs, por lo que aún puedes usar las combinaciones de teclas predeterminadas, como Alt + x, Ctrl + x y Ctrl + f.

Paquetes de Emacs 12 Ejemplo de Evil Mode

Evil está disponible en el repositorio MELPA, y su instalación para tu cliente de Emacs es relativamente simple. Una vez instalado, solo necesitas insertar un par de líneas de código en tu init.el para iniciarlo:

(require 'evil)  
(evil-mode 1)

4. Focus Mode

Focus es una extensión simple para Emacs que resalta el texto en el que estás trabajando actualmente al cambiar activamente el color del texto no seleccionado.

Paquetes de Emacs 15 Focus Mode

Además, Focus resalta inteligentemente diferentes segmentos y formas de texto. Focus puede trabajar con escritura similar a ensayos que utiliza oraciones y párrafos, pero también puede trabajar con escritura similar a programación que utiliza funciones y corchetes.

Debido a eso, Focus puede ser especialmente útil para escritores y programadores que desean que el párrafo o bloque de código en el que están trabajando se destaque.

Paquetes de Emacs 13 Ejemplo de Focus Mode

Focus está disponible en el repositorio MELPA. Una vez que lo hayas instalado, actívalo fácilmente presionando Alt + x y escribiendo focus-mode.

5. Darkroom

Similar a Focus, Darkroom es una extensión “orientada al enfoque”. Sin embargo, está más dirigida a escritores que a programadores. Darkroom crea un entorno libre de distracciones al eliminar toda la información innecesaria alrededor del marco de Emacs, incluidas las barras de menú, las barras de desplazamiento y la línea de modo.

Paquetes de Emacs 16 Modo Darkroom

Además, Darkroom centra y contiene el texto alrededor de 80 columnas. Esto es especialmente útil para componer y corregir ensayos, ya que dirige la vista hacia un solo segmento de la pantalla, haciendo que el texto sea más fácil de leer.

Darkroom también se puede personalizar. Ajusta el margen predeterminado para el texto invocando darkroom-increase-margins y darkroom-decrease-margins.

Paquetes de Emacs 14 Ejemplo de Modo Darkroom 1

Darkroom está disponible en el repositorio ELPA, y el modo se puede habilitar fácilmente presionando Alt + x y escribiendo darkroom-mode en el búfer de comandos.

¡Felicidades! Ahora has aprendido sobre algunos paquetes útiles de Emacs que podrían mejorar significativamente tu flujo de trabajo productivo. Si deseas aprender sobre algunos trucos simples para mejorar tu productividad en Linux, consulta este artículo.

Preguntas Frecuentes

1. ¿Es seguro usar MELPA?

¡Sí! Solo unos pocos mantenedores seleccionados pueden agregar paquetes al archivo MELPA. Para enviar un paquete, el desarrollador debe enviar una solicitud de extracción a los mantenedores del archivo. Después de eso, el paquete debe ser revisado y aprobado por los mantenedores. Este proceso asegura que todos los paquetes en MELPA sean seguros para que el usuario regular los use.

2. El sitio web de MELPA dijo que los paquetes que ofrece son de última generación. ¿Podrían romperse mis paquetes?

Hay poca o ninguna posibilidad de esto. Los paquetes de MELPA se están construyendo constantemente para verificar si están funcionando.

Sin embargo, si la escasa posibilidad de que un paquete se rompa es una preocupación, MELPA ofrece una rama estable de su archivo que se actualiza con menos frecuencia. Los paquetes aquí han sido probados con la versión actual de Emacs. Para usar el repositorio MELPA-Stable, actualiza tu archivo “init.el” a:

(require 'package)  
(add-to-list 'package-archives '("melpa-stable"."https://stable.melpa.org/packages/") t)  
(package-initialize)

3. No quiero este paquete más. ¿Cómo puedo desinstalar un paquete en Emacs?

En la parte inferior de la página list-packages, podrás ver los paquetes instalados. También puedes buscarlos presionando Ctrl + s y escribiendo “instalados”.

Una vez que hayas elegido el paquete para desinstalar, presiona Enter y haz clic en el botón “Eliminar” en el búfer de descripción. Emacs eliminará automáticamente el paquete del sistema.

Una cosa a tener en cuenta, sin embargo, es que este proceso no eliminará ninguna configuración que hayas hecho en el archivo init.el. Por ejemplo, si has agregado una configuración para un paquete específico X, debes eliminar esa configuración manualmente.