Function: diary-icalendar-vevent-skeleton

diary-icalendar-vevent-skeleton is a byte-compiled function defined in diary-icalendar.el.gz.

Signature

(diary-icalendar-vevent-skeleton VEVENT)

Documentation

Default skeleton to format an icalendar-vevent for the diary.

Source Code

;; Defined in /usr/src/emacs/lisp/calendar/diary-icalendar.el.gz
(defun di:vevent-skeleton (vevent)
  "Default skeleton to format an `icalendar-vevent' for the diary."
  (ignore vevent)  ; we only need the dynamic `ical-*' variables here
  (skeleton-insert
   '(nil
     (when (or ical-nonmarking (equal ical-transparency "TRANSPARENT"))
       diary-nonmarking-symbol)
     (or ical-rrule-sexp ical-start-to-end ical-start) & " "
     ical-summary "\n"
     @ ; start of body (for indentation)
     (when ical-location "Location: ") ical-location
     & "\n" (when ical-url "URL: ") & ical-url
     & "\n" (when ical-status "Status: ") & ical-status
     & "\n" (when ical-organizer "Organizer: ") & ical-organizer
     & "\n" (di:format-list ical-attendees "Attendee")
     & "\n" (di:format-list ical-categories "Category" "Categories")
     & "\n" (di:format-list ical-comments "Comment")
     & "\n" (di:format-list ical-contacts "Contact")
     & "\n" (di:format-list ical-attachments "Attachment")
     & "\n" (when (and ical-importing ical-access) "Access: ") & ical-access
     & "\n" (when (and ical-importing ical-uid) "UID: ") & ical-uid
     & "\n" (when ical-description "Description: ") & ical-description
     & "\n"
     @ ; end of body
     (let* ((end (pop skeleton-positions))
            (start (pop skeleton-positions)))
       ;; TODO: should diary define a customizable indentation level?
       ;; For now, we use 1 because that's what icalendar.el chose
       (indent-code-rigidly start end 1)
       nil) ; Don't insert return value
     (when ical-importing "\n"))))