[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r116997: * gnus-icalendar.el (gnus-icalendar-event->
From: |
Katsumi Yamaoka |
Subject: |
[Emacs-diffs] trunk r116997: * gnus-icalendar.el (gnus-icalendar-event->org-entry) |
Date: |
Sun, 20 Apr 2014 22:10:35 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 116997
revision-id: address@hidden
parent: address@hidden
author: Jan Tatarik <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Sun 2014-04-20 22:10:33 +0000
message:
* gnus-icalendar.el (gnus-icalendar-event->org-entry)
(gnus-icalendar--update-org-event): put event timestamp in
the org entry body instead of the drawer.
(gnus-icalendar-event--get-attendee-names): list of participants should
contain even attendees without common name attribute.
(gnus-icalendar--update-org-event): don't generate duplicates of empty
property tags in org drawers.
modified:
lisp/gnus/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1433
lisp/gnus/gnus-icalendar.el
gnusicalendar.el-20130801225830-k3bdrwt8427ren1n-1
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2014-04-15 23:37:21 +0000
+++ b/lisp/gnus/ChangeLog 2014-04-20 22:10:33 +0000
@@ -1,3 +1,13 @@
+2014-04-20 Jan Tatarik <address@hidden>
+
+ * gnus-icalendar.el (gnus-icalendar-event->org-entry)
+ (gnus-icalendar--update-org-event): put event timestamp in
+ the org entry body instead of the drawer.
+ (gnus-icalendar-event--get-attendee-names): list of participants should
+ contain even attendees without common name attribute.
+ (gnus-icalendar--update-org-event): don't generate duplicates of empty
+ property tags in org drawers.
+
2014-04-15 Katsumi Yamaoka <address@hidden>
* gmm-utils.el (gmm-format-time-string): New function.
=== modified file 'lisp/gnus/gnus-icalendar.el'
--- a/lisp/gnus/gnus-icalendar.el 2014-01-01 07:43:34 +0000
+++ b/lisp/gnus/gnus-icalendar.el 2014-04-20 22:10:33 +0000
@@ -170,7 +170,9 @@
(caddr event))))
(gmm-labels ((attendee-role (prop) (plist-get (cadr prop) 'ROLE))
- (attendee-name (prop) (plist-get (cadr prop) 'CN))
+ (attendee-name (prop)
+ (or (plist-get (cadr prop) 'CN)
+ (replace-regexp-in-string "^.*MAILTO:" ""
(caddr prop))))
(attendees-by-type (type)
(gnus-remove-if-not
(lambda (p) (string= (attendee-role p) type))
@@ -452,7 +454,6 @@
"Not replied yet"))
(props `(("ICAL_EVENT" . "t")
("ID" . ,uid)
- ("DT" . ,(gnus-icalendar-event:org-timestamp event))
("ORGANIZER" . ,(gnus-icalendar-event:organizer event))
("LOCATION" . ,(gnus-icalendar-event:location event))
("PARTICIPATION_TYPE" . ,(symbol-name
(gnus-icalendar-event:participation-type event)))
@@ -470,7 +471,9 @@
(when description
(save-restriction
(narrow-to-region (point) (point))
- (insert description)
+ (insert (gnus-icalendar-event:org-timestamp event)
+ "\n\n"
+ description)
(indent-region (point-min) (point-max) 2)
(fill-region (point-min) (point-max))))
@@ -551,20 +554,31 @@
(when description
(save-restriction
(narrow-to-region (point) (point))
- (insert "\n" (replace-regexp-in-string "[\n]+$" "\n"
description) "\n")
+ (insert "\n"
+ (gnus-icalendar-event:org-timestamp event)
+ "\n\n"
+ (replace-regexp-in-string "[\n]+$" "\n"
description)
+ "\n")
(indent-region (point-min) (point-max) (1+
entry-outline-level))
(fill-region (point-min) (point-max))))
;; update entry properties
- (org-entry-put event-pos "DT"
(gnus-icalendar-event:org-timestamp event))
- (org-entry-put event-pos "ORGANIZER" organizer)
- (org-entry-put event-pos "LOCATION" location)
- (org-entry-put event-pos "PARTICIPATION_TYPE" (symbol-name
participation-type))
- (org-entry-put event-pos "REQ_PARTICIPANTS"
(gnus-icalendar--format-participant-list req-participants))
- (org-entry-put event-pos "OPT_PARTICIPANTS"
(gnus-icalendar--format-participant-list opt-participants))
- (org-entry-put event-pos "RRULE" recur)
- (when reply-status (org-entry-put event-pos "REPLY"
- (capitalize (symbol-name
reply-status))))
+ (gmm-labels
+ ((update-org-entry (position property value)
+ (if (or (null value)
+ (string= value ""))
+ (org-entry-delete position property)
+ (org-entry-put position property
value))))
+
+ (update-org-entry event-pos "ORGANIZER" organizer)
+ (update-org-entry event-pos "LOCATION" location)
+ (update-org-entry event-pos "PARTICIPATION_TYPE"
(symbol-name participation-type))
+ (update-org-entry event-pos "REQ_PARTICIPANTS"
(gnus-icalendar--format-participant-list req-participants))
+ (update-org-entry event-pos "OPT_PARTICIPANTS"
(gnus-icalendar--format-participant-list opt-participants))
+ (update-org-entry event-pos "RRULE" recur)
+ (update-org-entry event-pos "REPLY"
+ (if reply-status (capitalize (symbol-name
reply-status))
+ "Not replied yet")))
(save-buffer)))))))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r116997: * gnus-icalendar.el (gnus-icalendar-event->org-entry),
Katsumi Yamaoka <=