org-contacts: added custom org-contacts-birthday-format
Signed-off-by: Rüdiger Sonderfeld <ruediger@c-plusplus.de> Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
parent
2f0d7e94dd
commit
6e66e4a769
1 changed files with 12 additions and 1 deletions
|
@ -59,6 +59,16 @@ If set to nil, all your Org files will be used."
|
||||||
:type 'string
|
:type 'string
|
||||||
:group 'org-contacts)
|
:group 'org-contacts)
|
||||||
|
|
||||||
|
(defcustom org-contacts-birthday-format "Birthday: %l (%Y)"
|
||||||
|
"Format of the anniversary agenda entry. The following replacements are available:
|
||||||
|
|
||||||
|
%h - Heading name
|
||||||
|
%l - Link to the heading
|
||||||
|
%y - Number of year
|
||||||
|
%Y - Number of year (ordinal)"
|
||||||
|
:type 'string
|
||||||
|
:group 'org-contacts)
|
||||||
|
|
||||||
(defcustom org-contacts-last-read-mail-property "LAST_READ_MAIL"
|
(defcustom org-contacts-last-read-mail-property "LAST_READ_MAIL"
|
||||||
"Name of the property for contact last read email link storage."
|
"Name of the property for contact last read email link storage."
|
||||||
:type 'string
|
:type 'string
|
||||||
|
@ -263,6 +273,7 @@ Format is a string matching the following format specification:
|
||||||
%Y - Number of year (ordinal)"
|
%Y - Number of year (ordinal)"
|
||||||
(let ((calendar-date-style 'american)
|
(let ((calendar-date-style 'american)
|
||||||
(entry ""))
|
(entry ""))
|
||||||
|
(unless format (setq format org-contacts-birthday-format))
|
||||||
(loop for contact in (org-contacts-filter)
|
(loop for contact in (org-contacts-filter)
|
||||||
for anniv = (let ((anniv (cdr (assoc-string
|
for anniv = (let ((anniv (cdr (assoc-string
|
||||||
(or field org-contacts-birthday-property)
|
(or field org-contacts-birthday-property)
|
||||||
|
@ -272,7 +283,7 @@ Format is a string matching the following format specification:
|
||||||
(org-time-string-to-absolute anniv))))
|
(org-time-string-to-absolute anniv))))
|
||||||
;; Use `diary-anniversary' to compute anniversary.
|
;; Use `diary-anniversary' to compute anniversary.
|
||||||
if (and anniv (apply 'diary-anniversary anniv))
|
if (and anniv (apply 'diary-anniversary anniv))
|
||||||
collect (format-spec (or format "Birthday: %l (%Y)")
|
collect (format-spec format
|
||||||
`((?l . ,(org-with-point-at (cadr contact) (org-store-link nil)))
|
`((?l . ,(org-with-point-at (cadr contact) (org-store-link nil)))
|
||||||
(?h . ,(car contact))
|
(?h . ,(car contact))
|
||||||
(?y . ,(- (calendar-extract-year date)
|
(?y . ,(- (calendar-extract-year date)
|
||||||
|
|
Loading…
Reference in a new issue