Novedades de Emacs 31.1: el fin del dumper unexec y mejoras de usabilidad

Fuentes: What's New in Emacs 31.1?

Emacs 31.1 ya está disponible y, a diferencia de entregas anteriores, no llega encabezado por una única gran característica: el esperado recolector de basura se ha aplazado a Emacs 32. La novedad más simbólica es el fin del dumper unexec, el método histórico que volcaba la memoria de Emacs a un binario y que dependía de comportamientos específicos de glibc. El sistema,deprecated desde Emacs 27, se elimina por completo y queda como única opción el portable dumper, introducido hace una década por Daniel Colascione y basado en una serialización estándar de las estructuras internas.

Entre las mejoras prácticas destaca un nuevo directorio user-lisp/ dentro de .emacs.d, que permite clonar o descargar paquetes y delegar en Emacs su carga y configuración de autoloads. El sistema de completados introducido en Emacs 30.1 amplía sus opciones de personalización, y se añaden comandos para rotar layouts de ventanas, como window-layout-rotate-clockwise, accesibles desde C-x w. También se incorpora un ajuste para que C-x C-x intercambie punto y marca sin activar la región, un comportamiento largamente demandado.

En el ámbito de Tree-sitter, Emacs 31.1 puede descargar e instalar automáticamente la gramática adecuada para cada modo conocido, lo que elimina uno de los principales frenos para su adopción, especialmente en Windows. En el apartado de inicio, xterm-mouse-mode se activa por defecto en terminales compatibles y site-start.el pasa a cargarse antes que el early init del usuario, lo que facilita la configuración a nivel de sistema.

Cambios de instalación: desaparece el programa ctags propio de Emacs en favor de Universal Ctags (etags --ctags reproduce el comportamiento clásico), se ajustan opciones por defecto de GCC en sistemas x86 de 32 bits para esquivar el bug 58416, y se añade --with-systemduserunitdir para registrar una unidad de usuario que ejecute el servidor de Emacs.