Listado de titulares PROGRAMADOS de un archivo de organización ordenado por fecha

8

Hace unos meses, convertí mi archivo init en un archivo de organización, y desde entonces lo he estado usando para organizar mis publicaciones en el blog . No voy a entrar en demasiados detalles aquí, basta con decir que este es un gran org-modeamortiguador, donde muchos titulares tienen una SCHEDULEDfecha.

¿Cómo puedo enumerar todos los titulares PROGRAMADOS en este archivo, ordenados por fecha?

Todo lo que me importa ver es la fecha , el estado de todo y el título . Cualquier otra cosa es superflua.
Otros requisitos importantes:

  • Hacer no titulares ommit marcados como DONE.
  • Enumere solo SCHEDULED artículos. No quiero ver titulares que simplemente tengan una fecha ( <2014-10-04 Sat>) en ellos.
  • Solo use este archivo. No busque en todos mis archivos de agenda.

Para mayor claridad, tome el siguiente archivo.

* DONE Hi guys
  CLOSED: [2014-10-04 Sat 15:18] SCHEDULED: <2014-10-04 Sat>
* Hello me
** Hello everyone <2014-10-05 Sun>
** TODO The world is at my feet
   SCHEDULED: <2014-10-11 Sat>

Me gustaría ejecutar un comando que muestre una lista como esta:

<2014-10-04 Sat> DONE Hi guys
<2014-10-11 Sat> TODO The world is at my feet

Por supuesto, no soy exigente con el formato. Lo importante es que esta información se muestre de manera conveniente.


Mi instinto me dice que esto tiene algo que ver org-agenda, pero no estoy seguro de cómo llegar allí.

Malabarba
fuente

Respuestas:

8

Aquí una forma de hacerlo usando org-agenda. Puede escribir un comando de agenda personalizado como el siguiente

(setq org-agenda-custom-commands
  '(("i" "Only scheduled entries in init.org sorted by time" agenda ""
     ((org-agenda-files '("~/.emacs.d/init.org"))
      (org-agenda-entry-types '(:scheduled))
      (org-agenda-start-day "2014-01-01")
      (org-agenda-span 'year)
      (org-agenda-include-diary nil)
      (org-agenda-show-all-dates nil))))) 

La mayor parte de la configuración está sucediendo como settingsparte de un comando personalizado (omito la explicación del formato de org-agenda-custom-commandsbrevedad, vea C-hvorg-agenda-custom-command RET). A continuación se incluye una breve explicación de cada uno de los ajustes utilizados.

1) org-agenda-filesestá configurado en el archivo init para que el modo de organización no busque todos los archivos de agenda mientras crea esta agenda en particular.

2) org-agenda-entry-typesse establece en ': programado' para restringirlo solo a los elementos programados.

3) org-agenda-start-dayEs el día en el que desea que se enumeren las entradas, lo he establecido para el inicio de este año, es posible que desee establecer el día de su primer artículo.

4) org-agenda-spanle dice a los números días que se incluirán en la vista de agenda. org-agenda-include-diaryse establece en nulo para evitar tener entradas de diario en la vista de agenda.

5) Finalmente, las fechas vacías se ocultan estableciendo org-agenda-show-all-datesen cero.

Ahora, cuando ejecute el comando org-agendaen el menú del despachador, obtendrá la opción 'i' que puede seleccionar para obtener la vista deseada.

Vieja respuesta

Usa el comando org-occurde la cadena de documentación

(REGEXP org-ocurrida y RECUPERACIÓN DE LLAMADAS PREVIAS opcional)

Haga un árbol compacto que muestre todas las coincidencias de REGEXP. El árbol mostrará las líneas donde coincide la expresión regular, y todos los títulos más altos sobre la coincidencia.

Aquí hay otra forma de hacerlo. El uso ocurre con un argumento prefijo. Desde la cadena de documentos del comando.

(ocurren REGEXP y NLINES opcionales)

Mostrar todas las líneas en el búfer actual que contiene una coincidencia para REGEXP. Si una coincidencia se extiende a través de varias líneas, se muestran todas esas líneas.

Cada línea se muestra con líneas NLINES antes y después, o -NLINES antes si NLINES es negativo.

Al hacerlo, C-u-1M-xse producen RETPROGRAMADO RETEn caso de que lo que quiere dar

No estoy seguro de cómo ordenar los titulares difíciles.

Iqbal Ansari
fuente
Perfecto, sabía que la agenda de la organización tenía que tener una solución.
Malabarba