Commit fd3a9a6b authored by Glenn Morris's avatar Glenn Morris

* lisp/calendar/diary-lib.el (diary-from-outlook-function): New variable.

(diary-from-outlook): Respect diary-from-outlook-function.

* doc/emacs/calendar.texi (Importing Diary):
Mention diary-from-outlook-function.

* etc/NEWS: Mention this.
parent f4c7b20f
2013-05-04 Glenn Morris <rgm@gnu.org>
* calendar.texi (Importing Diary): Mention diary-from-outlook-function.
2013-03-17 Paul Eggert <eggert@cs.ucla.edu>
doc: convert some TeX accents to UTF-8
......
......@@ -1542,7 +1542,8 @@ variety of other formats.
messages. While viewing such a message in Rmail or Gnus, do @kbd{M-x
diary-from-outlook} to import the entry. You can make this command
recognize additional appointment message formats by customizing the
variable @code{diary-outlook-formats}.
variable @code{diary-outlook-formats}. Other mail clients can set
@code{diary-from-outlook-function} to an appropriate value.
@c FIXME the name of the RFC is hardly very relevant.
@cindex iCalendar support
......
......@@ -146,6 +146,12 @@ The default separator is changed to allow surrounding spaces around the comma.
*** Battery information via the BSD `apm' utility is now supported.
** Calendar and Diary
+++
*** New variable `diary-from-outlook-function' for used by the command
`diary-from-outlook'.
** cl-lib
*** New macro cl-tagbody.
......
2013-05-04 Glenn Morris <rgm@gnu.org>
* calendar/diary-lib.el (diary-from-outlook-function): New variable.
(diary-from-outlook): Respect diary-from-outlook-function.
2013-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
* simple.el (read-expression-map): Use completion-at-point (bug#14255).
......
......@@ -2611,14 +2611,23 @@ user is asked to confirm its addition."
(diary-from-outlook-internal subject body)
(message "Diary entry added"))))))
(defvar diary-from-outlook-function nil
"If non-nil, a function of one argument for `diary-from-outlook' to call.
If the current buffer contains an Outlook-style appointment message,
this function should extract it into a diary entry. If the argument is
nil, it should ask for confirmation before adding this entry to the diary.
For examples, see `diary-from-outlook-rmail' and `diary-from-outlook-gnus'.")
(defun diary-from-outlook (&optional noconfirm)
"Maybe snarf diary entry from current Outlook-generated message.
Currently knows about Gnus and Rmail modes. Unless the optional
argument NOCONFIRM is non-nil (which is the case when this
function is called interactively), then if an entry is found the
user is asked to confirm its addition."
Uses `diary-from-outlook-function' if that is non-nil, else
`diary-from-outlook-rmail' for Rmail or `diary-from-outlook-gnus' for Gnus.
Unless the optional argument NOCONFIRM is non-nil (which is the
case when this function is called interactively), then if an
entry is found the user is asked to confirm its addition."
(interactive "p")
(let ((func (cond
(diary-from-outlook-function)
((eq major-mode 'rmail-mode)
#'diary-from-outlook-rmail)
((memq major-mode '(gnus-summary-mode gnus-article-mode))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment