2010-04-05 11 views
10

Estoy tratando de tener las propiedades "Nombre" de una entrada Org-mode "Cumpleaños" y se añade a la agenda de forma automática:Emacs Org-mode: ¿Cómo incluir propiedades en aniversarios diarios?

* John 
    :PROPERTIES: 
    :Name: John 
    :Birthday: (5 4 1900) 
    :END: 

He encontrado una manera de añadir una entrada en la fecha correcta aniversario en el agenda insertando la siguiente línea justo después de las propiedades:

%%(apply 'diary-anniversary (read (org-entry-get nil "Birthday"))) John 

Sin embargo, usando este código, todavía tengo que ingresar el nombre manualmente. ¿Hay alguna manera de agregar automáticamente el valor de la propiedad "Nombre" al texto del diario para todas las entradas?

EDIT 1: el ejemplo no funcionó parantheses antes, ahora añadido en torno al valor de la propiedad de cumpleaños

Respuesta

3

Tal vez https://julien.danjou.info/projects/emacs-packages#org-contacts es la solución a su problema. org-contacts es una libreta de direcciones para org-mode.

+0

A partir del 2011-05-17, el enlace para org-contacts no muestra cómo obtenerlo. La página web actualmente dice que se envía con la versión org-mode> 7.5 pero la versión actual de org-mode es 7.5 – huyz

+0

Lo siento , No vi tu comentario antes. Org-mode 7.6 fue lanzado el 6 de julio. Antes, la única forma de obtener la última versión de org-contacts era clonar el [repo de modo org] (http://orgmode.org/w/org-mode.git): 'git clone git: // orgmode.org/org-mode.git'. – Michael

+0

A continuación, cambie al repo 'cd org-mode' y cree el modo-organización:' make clean && make'. Como último paso, debe informar a emacs sobre el org-mode-repo. Coloque '(setq load-path (cons)/path/to/repo/org-mode/lisp" (cons "/ ruta/a/repo/org-mode/contrib/lisp" ruta de carga)) y '(requiere 'org-contacts') para su ** ~/.emacs **. – Michael

3

Probablemente es mejor pedir esto en el Org mailing list, son muy activos, y Carsten Dominik (el creador de org-mode) por lo general responde las publicaciones en esta lista casi de inmediato (BTW, this es la lista principal de correo electrónico.

+0

Ya había encontrado la lista. Su sugerencia es buena, aunque debería haber sido un comentario a mi pregunta. – lecodesportif

1

Tal vez estás tomando un camino que requiere que escribas algunos lisp para obtener lo que deseas. -mode manual da un ejemplo de algo similar, pero supongo que querías un formato más simple, cuando describe el calendario/agen la integración da http://www.gnu.org/software/emacs/manual/html_node/org/Weekly_002fdaily-agenda.html

* Birthdays and similar stuff 
#+CATEGORY: Holiday 
%%(org-calendar-holiday) ; special function for holiday names 
#+CATEGORY: Ann 
%%(diary-anniversary 14 5 1956) Arthur Dent is %d years old 
%%(diary-anniversary 2 10 1869) Mahatma Gandhi would be %d years old 

yo creo que hay otras opciones si desea una configuración personalizada: ya sea un nuevo tipo de exportación o bloques dinámicos podría ser utilizado. Esto puede resaltar los diferentes casos de uso de la agenda sobre el diario. La agenda parece estar más orientada hacia las tareas cotidianas.

+0

Esto se acerca a lo que ya estoy haciendo y lo que traté de describir en mi pregunta. Quisiera que los nombres "Arthur Dent" y "Mahatma Gandhi" se insertaran automáticamente en la agenda extrayendo el valor de la propiedad "Nombre". – lecodesportif

Cuestiones relacionadas