;;; nndiary.el --- A diary back end for Gnus
-;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+;; 2008, 2009, 2010 Free Software Foundation, Inc.
;; Author: Didier Verna <didier@xemacs.org>
;; Maintainer: Didier Verna <didier@xemacs.org>
;; This file is part of GNU Emacs.
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; IMHO, nnoo is actually badly designed. A much simpler, and yet more
;; powerful one would be to make *real* functions and variables for a new
;; back end based on another. Lisp is a reflexive language so that's a very
-;; easy thing to do: inspect the function's form, replace occurences of
+;; easy thing to do: inspect the function's form, replace occurrences of
;; <nnfrom> (even in strings) with <nnto>, and you're done.
;; * nndiary-get-new-mail, nndiary-mail-source and nndiary-split-methods:
(setq head (nth 0 elt))
(nndiary-parse-schedule (nth 0 elt) (nth 1 elt) (nth 2 elt)))
nndiary-headers)
- (t
+ (error
(nnheader-report 'nndiary "X-Diary-%s header parse error: %s."
head (cdr arg))
nil))
(sort res 'time-less-p)))
(defun nndiary-last-occurence (sched)
- ;; Returns the last occurence of schedule SCHED as an Emacs time struct, or
+ ;; Returns the last occurrence of schedule SCHED as an Emacs time struct, or
;; nil for permanent schedule or errors.
(let ((minute (nndiary-max (nth 0 sched)))
(hour (nndiary-max (nth 1 sched)))
(encode-time 0 minute hour
(car days) month year time-zone)))
)))))
- ;; There's an upper limit, but we didn't find any last occurence.
+ ;; There's an upper limit, but we didn't find any last occurrence.
;; This means that the schedule is undecidable. This can happen if
;; you happen to say something like "each Feb 31 until 2038".
(progn
))))
(defun nndiary-next-occurence (sched now)
- ;; Returns the next occurence of schedule SCHED, starting from time NOW.
- ;; If there's no next occurence, returns the last one (if any) which is then
+ ;; Returns the next occurrence of schedule SCHED, starting from time NOW.
+ ;; If there's no next occurrence, returns the last one (if any) which is then
;; in the past.
(let* ((today (decode-time now))
(this-minute (nth 1 today))
;; The article should be re-considered as unread if there's a reminder
;; between the group timestamp and the current time.
(when (and sched (setq sched (nndiary-next-occurence sched now)))
- (let ((reminders ;; add the next occurence itself at the end.
+ (let ((reminders ;; add the next occurrence itself at the end.
(append (nndiary-compute-reminders sched) (list sched))))
(while (and reminders (time-less-p (car reminders) timestamp))
(pop reminders))
;; The reminders might be empty if the last date is in the past,
- ;; or we've got at least the next occurence itself left. All past
+ ;; or we've got at least the next occurrence itself left. All past
;; dates are renewed.
(or (not reminders)
(time-less-p (car reminders) now)))
(provide 'nndiary)
-;;; arch-tag: 9c542b95-92e7-4ace-a038-330ab296e203
+;; arch-tag: 9c542b95-92e7-4ace-a038-330ab296e203
;;; nndiary.el ends here