Rec mode: una base de datos en texto plano dentro de Emacs

Fuentes: Emacs carnival: rec mode, an all-text database system

Rec mode es una funcionalidad poco reconocida de Emacs que convierte archivos de texto plano en una base de datos ligera y flexible. Cada registro se delimita con una línea en blanco y se compone de campos con nombre y valor, sin que sea necesario definir un esquema previo: distintos registros de un mismo archivo pueden contener campos diferentes, lo que aporta una gran libertad de modelado.

El artículo muestra un uso práctico: el autor mantiene una biblioteca personal en un archivo rec donde cada libro incluye campos como título, autor, estado de lectura, fecha y notas. Frente a gestores como Calibre, rec mode permite editar los registros directamente como texto, sin depender del ratón, y aprovechar la potencia de edición de Emacs para manipularlos.

Una de las integraciones más útiles es con Org mode: mediante un bloque de código con la cabecera «#+begin_src rec» se pueden ejecutar consultas —por ejemplo, filtrar todos los libros de un autor— y obtener tablas que Org mode renderiza automáticamente. Al ser texto puro, los archivos rec se versionan sin dificultades con Git, Mercurial o Src, lo que facilita copias de seguridad, historial de cambios y trabajo en paralelo.

El autor también menciona vc mode como funcionalidad infravalorada: ofrece control de versiones integrado y compatible con distintos sistemas (Git, Mercurial, Src), cubriendo el uso diario sin necesidad de recurrir a paquetes externos como Magit, que queda para tareas puntuales más avanzadas.