From 2afe41fe82a9c04be770fc05d60e58f1122aca99 Mon Sep 17 00:00:00 2001 From: Jan Tatarik Date: Wed, 13 Nov 2013 16:10:45 +0100 Subject: [PATCH] Fix for gnus-icalendar handling of empty appt locations. * gnus-icalendar.el (gnus-icalendar--format-summary-line) (gnus-icalendar-event->org-entry) (gnus-icalendar--update-org-event) (gnus-icalendar-event->gnus-calendar): Fix empty location handling. --- lisp/ChangeLog | 7 +++++++ lisp/gnus-icalendar.el | 12 +++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 88d6d894b..6e98f8f2d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2013-11-13 Jan Tatarik + + * gnus-icalendar.el (gnus-icalendar--format-summary-line) + (gnus-icalendar-event->org-entry) + (gnus-icalendar--update-org-event) + (gnus-icalendar-event->gnus-calendar): Fix empty location handling. + 2013-11-12 Jan Tatarik * gnus-icalendar.el (gnus-icalendar-event-from-ical): diff --git a/lisp/gnus-icalendar.el b/lisp/gnus-icalendar.el index f3b62381b..cbb285529 100644 --- a/lisp/gnus-icalendar.el +++ b/lisp/gnus-icalendar.el @@ -361,6 +361,11 @@ Return nil for non-recurring EVENT." (format "<%s %s-%s%s>" start-date start-time end-time repeat) (format "<%s %s>--<%s %s>" start-date start-time end-date end-time)))) +(defun gnus-icalendar--format-summary-line (summary &optional location) + (if location + (format "%s (%s)" summary location) + (format "%s" summary))) + ;; TODO: make the template customizable (defmethod gnus-icalendar-event->org-entry ((event gnus-icalendar-event) reply-status) "Return string with new `org-mode' entry describing EVENT." @@ -378,7 +383,8 @@ Return nil for non-recurring EVENT." ("RRULE" . ,(gnus-icalendar-event:recur event)) ("REPLY" . ,reply)))) - (insert (format "* %s (%s)\n\n" summary location)) + (insert (format "* %s\n\n" + (gnus-icalendar--format-summary-line summary location))) (mapc (lambda (prop) (org-entry-put (point) (car prop) (cdr prop))) props)) @@ -443,7 +449,7 @@ is searched." (headline (delq nil (list (org-entry-get (point) "TODO") (when priority (format "[#%s]" priority)) - (format "%s (%s)" summary location) + (gnus-icalendar--format-summary-line summary location) (org-entry-get (point) "TAGS"))))) (re-search-forward "^\\*+ " (line-end-position)) @@ -591,7 +597,7 @@ is searched." (with-slots (organizer summary description location recur uid method rsvp) event (let ((headers `(("Summary" ,summary) - ("Location" ,location) + ("Location" ,(or location "")) ("Time" ,(gnus-icalendar-event:org-timestamp event)) ("Organizer" ,organizer) ("Method" ,method)))) -- 2.25.1