]> code.delx.au - gnu-emacs/blobdiff - man/calendar.texi
Add a provide statement.
[gnu-emacs] / man / calendar.texi
index a4eca0513ffd3cc29a65312d5a3a327c4a7b0048..8ebe7c4b3d7f5dc3c411c953409d741fab1e567d 100644 (file)
@@ -37,6 +37,7 @@ information about the calendar and diary.
 * Other Calendars::     Converting dates to other calendar systems.
 * Diary::               Displaying events from your diary.
 * Appointments::       Reminders when it's time to do something.
+* iCalendar::           Converting diary events to/from iCalendar format.
 * Daylight Savings::    How to specify when daylight savings time is active.
 * Time Intervals::      Keeping track of time intervals.
 @end menu
@@ -1383,6 +1384,54 @@ clock.  The command @kbd{M-x appt-add} adds entries to the appointment
 list without affecting your diary file.  You delete entries from the
 appointment list with @kbd{M-x appt-delete}.
 
+@node iCalendar
+@section iCalendar
+@cindex iCalendar support
+
+  The icalendar package aims at providing an implementation of the
+iCalendar standard, as defined in ``RFC 2445 -- Internet Calendaring and
+Scheduling Core Object Specification (iCalendar)''.  It provides a means
+for importing iCalendar (and the earlier vCalendar format) data into
+Emacs diary files and vice versa.
+
+  Importing works for ``ordinary'' (i.e. non-recurring) events, but (at
+present) may not work correctly (if at all) for recurring events.
+Exporting of diary files into iCalendar files should work correctly for
+most diary entries.  Please note that @file{icalendar.el} is work in
+progress, so usage may evolve in future.
+
+  To activate the package, use @code{(require 'icalendar)}.
+
+@findex icalendar-import-buffer
+  The command @code{icalendar-import-buffer} extracts
+iCalendar data from the current buffer and adds it to your (default)
+diary file.  This function is also suitable for automatic extraction of
+iCalendar data; for example with the Rmail mail client one could use:
+
+@example
+(add-hook 'rmail-show-message-hook 'icalendar-import-buffer)
+@end example
+
+@findex icalendar-import-file
+  The command @code{icalendar-import-file} imports an iCalendar file
+and adds the results to an Emacs diary file.  For example:
+
+@example
+(icalendar-import-file "/here/is/calendar.ics" "/there/goes/ical-diary")
+@end example
+
+@noindent
+You can use an @code{#include} directive to add the import file contents
+to the main diary file, if these are distinct.  @xref{Fancy Diary
+Display,,, elisp, The Emacs Lisp Reference Manual}.
+
+@findex icalendar-export-file, icalendar-export-region
+  Use @code{icalendar-export-file} to interactively export an entire
+Emacs diary file to iCalendar format.  To export only a part of a diary
+file, mark the relevant area, and call @code{icalendar-export-region}.
+In both cases the result is appended to the target file.
+
+
 @node Daylight Savings
 @section Daylight Savings Time
 @cindex daylight savings time