¿Qué es Org mode? ¿Para qué sirve?

Aprendemos en que consiste Org mode y para qué sirve. Para ello vamos a empezar por el principio. El modo Org o en inglés "Org mode", tiene como intención ayudarnos a mantener notas, listas TODO, planificar proyectos o gestionar una agenda, todo ello utilizando un sistema de texto plano rápido y efectivo. Esta disponible en GNU Emacs desde la versión 22.2, también lo podemos encontrar en XEmacs a partir de la versión 22.1

Pero no queda ahí la cosa, también permite cosas como crear una página web, muestra de ello son los proyectos de uGeek o el Blog de Lazaro, ambos creados utilizando Org mode

Preparando GNU Emacs para Org mode

Uno de los mitos de Emacs es que cuando se empieza a utilizar la parte más dolorosa es su configuración inicial. Para ello debemos editar un fichero de texto. Depende del sistema operativo y distribución este se encontrará en un lugar distinto. La parte positiva es que este fichero lo podrás mover entre equipos sin problema, y así reutilizarlo.

En nuestro sistemas favoritos GNU/Linux, lo encontraremos en ~/.emacs Aunque también lo podemos encontrar, según indica en la documentación oficial de GNU Emacs, en otras rutas: ~/.emacs.el o ~/.emacs.d/init.el. Más adelante vemos un ejemplo de configuración.

Creamos un fichero de configuración de Emacs

Abrimos el fichero de configuración de Emacs, recuerda que antes he comentado donde se suele ubicar en GNU/Linux

  1. emacs -nw ~/.emacs

Y escribimos:

;; -*- mode: elisp -*- 
 
;; Desabilitamos la pantalla de bienvenida (para habilitarla nuevamente, debemos reemplazar t por 0)
(setq inhibit-splash-screen t)
 
;; Habilitamos la marca transitoria
(transient-mark-mode 1)
 
;;;; Modo de configuración para Org
;; Habilitamos Org mode
(require 'org)
;; Hacemos que el modo Org funcione con fichero acabados con extensión .org
;; (agrear a la lista 'auto-mode-alist' (\\.org$" .org-mode))

Respecto al fichero de configuración, os recomiendo la entrada que ha escrito el compañero Notxor en su web, llamado «Niveles de configuración en emacs»

Para empezar con Org Mode

Ya sabéis que en GNU Emacs se trabaja con un gran número de atajos de teclado, por lo que para empezar con Org mode no podía ser de otra manera:

  • C-x C-s Guarda un documento
  • C-x C-f Abre un documento

Mi primer documento

Si tenemos una instalación de GNU Emacs nueva cuando los abramos nos aparecerá la pantalla de bienvenida. Si queremos abrir uno nuevo documento, utilzaremos el atajo de teclado que he mencionado antes C-x C-f, de esta manera abriremos un nuevo documento (o buffer utilizando el argot de emacs), o bien creamos un nuevo, que es nuestro caso. Como nombre yo he puesto nuevo.org

Una vez creado, nos aparecerá el documento vacío, listo para editar. Para guardarlo recuerda el atajo C-x C-s

Todavía nos falta un paso más en esta parte y es indicar a Emacs que se trata de un fichero en formato Org Mode, para ello utilizamos el atajo Alt-x (En las guías los verás como M-x, esto es debido que en muchos casos, la tecla Alt se llama Meta) y escribe org-mode

De forma adicional a esto, al inicio del documento debemos añadir:

MI PROYECTO -*- mode: org -*-

El título "MI PROYECTO" es el que he escogido yo para la guía, podemos escoger el que queramos. Esto habilitará el Org mode para el documento.

Llevar un registro de las notas y las listas

Antes de continuar, añadimos nuevos atajos de teclado para esta parte.

  • TAB / -STAB -(des) doblar
  • Alt – arriba/abajo – Mueve un título hacia arriaba o hacia abajo.
  • Alt – izquierda/derecha – Promueve o degrada un título.
  • Alt – RET – Inserta un nuevo título.
  • C-h C-s – Guarda el fichero (este ya nos lo sabemos)

Ahora que ya hemos configurado nuestro Emacs, podemos empezar a trabajar. Por lo que comenzaremos con un esquema para conocer el Org mode

Creamos un nuevo documento, con C-x b, lo podemos llamar como queramos.

Y copiaremos:

#-*- mode: org -*-
#+STARTUP: showall
 
* Bienvenido a Org mode

Para ver su funcionamiento, creamos un esquema ficticio de un curso de GNU/Linux

Por lo que añadiremos lo siguiente, al mismo documento:

* Bievenidos al curso de GNU/Linux
 
** Temario del curso

Trabajando con listas

No cabe duda de lo importante de las listas, ya sean de la cosas a comprar, de las tareas a realizar o la lista, simplemente, de nuestros autos favoritos.

Para sacar la máxima potencia a la lista podemos utilizar los atajos de teclado para doblar o desdoblar , que hemos comentado antes. De esta manera podemos ocultar y desplegar parte de las listas. Para ello nos serviremos de los títulos que hemos comentado antes, además de los símbolos -,+, o bien *

También utilizaremos Alt+arriba o bien Alt+abajo para ordenar la lista.

En cambio con Alt+izquierda o bien Alt+derecha aumentamos o disminuimos la importancia de un título o encabezado.

Veamos un ejemplo:

#-*- mode: org -*-
#+STARTUP: showall
 
*Bievenidos al curso de GNU/Linux
 
** Temario del curso
   1. Introducción a sistemas operativos.
   2. ¿Qué es Linux?
   3. Historia del proyecto GNU
      - RMS como figura
      - Proyectos más importantes: GNU Emacs, gcc, etc
   4. Arranque del sistema
    + UEFI
   5. Y un largo etcétera

Veamos aquí una demostración de su uso, que he generado utilizando el programa Peek:

Más cosas

Nos queda en el tintero cosas como trabajar con objetos TODO, agendas o GTD y muchas más cosas. Pero eso será otro día que la entrada ya ha quedado un poco extensa.

Fuentes consultadas

Org mode beginning at the basics – https://orgmode.org/worg/org-tutorials/org4beginners.html