emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r104103: diary-lib.el fix for bug#858


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r104103: diary-lib.el fix for bug#8583.
Date: Tue, 03 May 2011 19:03:30 -0700
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 104103
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Tue 2011-05-03 19:03:30 -0700
message:
  diary-lib.el fix for bug#8583.
  
  * lisp/calendar/diary-lib.el (diary-fancy-date-pattern):
  Do not use non-numbers for `year' etc pseudo-variables.
modified:
  lisp/ChangeLog
  lisp/calendar/diary-lib.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2011-05-04 01:44:58 +0000
+++ b/lisp/ChangeLog    2011-05-04 02:03:30 +0000
@@ -1,3 +1,8 @@
+2011-05-04  Glenn Morris  <address@hidden>
+
+       * calendar/diary-lib.el (diary-fancy-date-pattern): Do not use
+       non-numbers for `year' etc pseudo-variables.  (Bug#8583)
+
 2011-05-04  Teodor Zlatanov  <address@hidden>
 
        * net/gnutls.el (gnutls-negotiate): Use CL-style keyword arguments

=== modified file 'lisp/calendar/diary-lib.el'
--- a/lisp/calendar/diary-lib.el        2011-04-19 04:11:01 +0000
+++ b/lisp/calendar/diary-lib.el        2011-05-04 02:03:30 +0000
@@ -2090,7 +2090,7 @@
                                   '(day " " monthname))
                                  (t '(monthname " " day))))
         ;; Iso cannot contain "-", because this form used eg by
-        ;; insert-anniversary-diary-entry.
+        ;; diary-insert-anniversary-entry.
         (t (cond ((eq calendar-date-style 'iso)
                  '((format "%s %.2d %.2d" year
                            (string-to-number month) (string-to-number day))))
@@ -2369,13 +2369,20 @@
   (concat
    (let ((dayname (diary-name-pattern calendar-day-name-array nil t))
          (monthname (diary-name-pattern calendar-month-name-array nil t))
-         (day "[0-9]+")
-         (month "[0-9]+")
-         (year "-?[0-9]+"))
-     (mapconcat 'eval calendar-date-display-form ""))
+         (day "1")
+         (month "2")
+         ;; FIXME? This used to be "-?[0-9]+" - what was the "-?" for?
+         (year "3"))
+     ;; This is ugly.  c-d-d-form expects `day' etc to be "numbers in
+     ;; string form"; eg the iso version calls string-to-number on some.
+     ;; Therefore we cannot eg just let day = "[0-9]+".  (Bug#8583).
+     ;; Assumes no integers in c-day/month-name-array.
+     (replace-regexp-in-string "[0-9]+" "[0-9]+"
+                               (mapconcat 'eval calendar-date-display-form "")
+                               nil t))
    ;; Optional ": holiday name" after the date.
    "\\(: .*\\)?")
-  "Regular expression matching a date header in Fancy Diary.")
+  "Regular expression matching the first line of a fancy diary date header.")
 
 (define-obsolete-variable-alias 'fancy-diary-font-lock-keywords
   'diary-fancy-font-lock-keywords "23.1")


reply via email to

[Prev in Thread] Current Thread [Next in Thread]