Org-Mode: Capturas rápidas con org-capture
— Carlos M.Las plantillas para org-capture
ahorran mucho tiempo a la hora de
agregar nuevas entradas, yo las suelo usar para registrar rápidamente
tareas, citas, notas para el blog y otra información.
Para que veas su funcionalidad te muestro un ejemplo de su utilidad, más adelante de explicaré como añadirlo a tu fichero de configuración.
Iniciando el modo captura #
Supongamos que necesita añadir una nueva tarea personal, con la
combinación de teclas C-c c
inicio el menú para capturas

Como puedes ver en la captura, tengo generedas una serie de plantillas
dependiendo si es una tarea, cita, un nuevo contacto, etc, como quiero
añadir una nueva tarea personal pulso la tecla t
Escribo la tarea a realizar

Me gusta saber cuanto tiempo me lleva cada tarea así que he añadido
una pequeña función para saber aproximadamente el tiempo que me va a
llevar realizar la tarea, si no te gusta la puedes quitar de la
configuración de tu fichero init.el

Después de añadir la información que creas oportuna para tu nueva tarea, tenemos tres opciones

-
C-c C-c
guarda la tarea en el ficheroreubicar
, este fichero lo suelo utilizar para guardar tareas, notas, etc, para su posterior revisión y archivado en el fichero y rama correspondiente. -
C-c C-w
guarda directamente la tarea en el fichero y rama que indiquemos. -
C-c C-k
cancela la tare
C-c C-w #
Si pulsamos la combinación de teclas C-c C-w
(refile) y empiezo a
teclear por ejemplo las letras tare
irán apareciendo todas las ramas
de los ficheros (que formen a parte de mi agenda) donde encuentre esa
palabra, en mi caso podria guardar la tarea tanto en el fichero
personal.org
como en trabajo.org
.

Solo tenemos que seleccionar el fichero personal.org
para guardar la
tarea en la rama correspondiente

C-c C-c #
Si por el contaría queremos guardar la tarea en el fichero reubicar
para revisarla más tarde, pulsaremos la combinación de teclas C-c C-c
, veamos el contenido de ese fichero, de entre los buffers que
tenemos abiertos

lo seleccionamos y lo abrimos

Para ubicar la tarea en su rama y fichero correspondiente pulsamos
C-c C-w
y repetimos el proceso que vimos en el paso anterior

Esto que he aplicado a una tarea lo puedes aplicar tambien a notas que en ese momento no sabes muy bien donde ubicar, tareas, citas, contactos, etc.
Configuración #
Una vez vista su utilizad necesitas configurar tu fichero init.d
para añadir el paquete org-capture
y definir las funciones de
captura y plantillas. Yo utilizo use-package
y un fichero org
para
mi configuración, si no es tu caso, copia las funciones
dev-var
. Puedes observar como defino C-c c
para iniciar la captura
:bind ("C-c c" . org-capture)
Si no necesitas hacer una valoración del tiempo estimado que te llevan realizar las tareas puedes suprimir
:PROPERTIES:
:Effort: %^{effort|1:00|0:05|0:15|0:30|2:00|4:00}
:END:
Si tampoco usas org-contacts
también puedes suprimir la función
my/org-contacts-template
file+headline "~/.personal/agenda/reubicar.org" "Fechas"
si no
existe, crea en el fichero reubicar.org
, una rama llamada Fechas y
guarda allí las notas capturadas con la tecla f
, así lo mismo para
Nota, Blog, Tareas, etc.
Creo que el código es bastante fácil de seguir, modifícalo según tus necesidades
(use-package org-capture
:ensure nil
:after org
:bind ("C-c c" . org-capture)
:preface
(defvar my/org-basic-task-template "* TODO %^{Tareas}
:PROPERTIES:
:Effort: %^{effort|1:00|0:05|0:15|0:30|2:00|4:00}
:END:
Capturado %<%Y-%m-%d %H:%M>" "Plantilla básica de tareas.")
(defvar my/org-contacts-template "* %(org-contacts-template-name)
:PROPERTIES:
:EMAIL: %(org-contacts-template-email)
:PHONE: %^{123-456-789}
:HOUSE: %^{123-456-789}
:ALIAS: %^{nuko}
:NICKNAME: %^{Carlos M}
:IGNORE:
:NOTE: %^{NOTA}
:ADDRESS: %^{Calle Ejemplo 1 2A, 28320, Pinto, Madrid, España}
:BIRTHDAY: %^{yyyy-mm-dd}
:END:" "Plantilla para org-contacts.")
:custom
(org-capture-templates
`(("c" "Contactos" entry (file+headline "~/.personal/agenda/contactos.org" "Amigos"),
my/org-contacts-template
:empty-lines 1)
("f" "Fecha" entry (file+headline "~/.personal/agenda/reubicar.org" "Fechas"),
my/org-basic-task-template
:empty-lines 1)
("n" "Nota" entry (file+headline "~/.personal/agenda/reubicar.org" "Nota"),
my/org-basic-task-template
:empty-lines 1)
("i" "Cita" entry (file "~/.personal/agenda/diario.org" ),
"* cita con %? \n%T"
:empty-lines 1)
("b" "Blog" entry (file+headline "~/.personal/agenda/reubicar.org" "Blog"),
my/org-basic-task-template
:empty-lines 1)
("t" "Tarea" entry (file+headline "~/.personal/agenda/reubicar.org" "Tareas"),
my/org-basic-task-template
:empty-lines 1))))
Espero que te haya gustado, pasa un buen día…🐧