Fix analyzing european dates with time but without year
* lisp/org.el (org-read-date-analyze): Fix analyzing for dates like "29.03 16:40". * testing/lisp/test-org.el: Add test.
This commit is contained in:
parent
93f4b7c6d8
commit
5212d4fa6b
11
lisp/org.el
11
lisp/org.el
|
@ -15502,14 +15502,13 @@ user."
|
|||
|
||||
;; Help matching dotted european dates
|
||||
(when (string-match
|
||||
"^ *\\(3[01]\\|0?[1-9]\\|[12][0-9]\\)\\. ?\\(0?[1-9]\\|1[012]\\)\\. ?\\([1-9][0-9][0-9][0-9]\\)?" ans)
|
||||
(setq year (if (match-end 3)
|
||||
(string-to-number (match-string 3 ans))
|
||||
(progn (setq kill-year t)
|
||||
(string-to-number (format-time-string "%Y"))))
|
||||
"^ *\\(3[01]\\|0?[1-9]\\|[12][0-9]\\)\\. ?\\(0?[1-9]\\|1[012]\\)\\.\\( ?[1-9][0-9]\\{3\\}\\)?" ans)
|
||||
(setq year (if (match-end 3) (string-to-number (match-string 3 ans))
|
||||
(setq kill-year t)
|
||||
(string-to-number (format-time-string "%Y")))
|
||||
day (string-to-number (match-string 1 ans))
|
||||
month (string-to-number (match-string 2 ans))
|
||||
ans (replace-match (format "%04d-%02d-%02d\\5" year month day)
|
||||
ans (replace-match (format "%04d-%02d-%02d" year month day)
|
||||
t nil ans)))
|
||||
|
||||
;; Help matching american dates, like 5/30 or 5/30/7
|
||||
|
|
|
@ -89,6 +89,25 @@ http://article.gmane.org/gmane.emacs.orgmode/21459/"
|
|||
(should (equal '(2 1) (org-babel-execute-src-block)))))
|
||||
|
||||
|
||||
|
||||
;;; Date Analysis
|
||||
|
||||
(ert-deftest test-org/org-read-date ()
|
||||
"Test `org-read-date' specifications."
|
||||
;; Parse ISO date with abbreviated year and month.
|
||||
(should (equal "2012-03-29 16:40"
|
||||
(let ((org-time-was-given t))
|
||||
(org-read-date t nil "12-3-29 16:40"))))
|
||||
;; Parse Europeans dates.
|
||||
(should (equal "2012-03-29 16:40"
|
||||
(let ((org-time-was-given t))
|
||||
(org-read-date t nil "29.03.2012 16:40"))))
|
||||
;; Parse Europeans dates without year.
|
||||
(should (string-match "2[0-9]\\{3\\}-03-29 16:40"
|
||||
(let ((org-time-was-given t))
|
||||
(org-read-date t nil "29.03. 16:40")))))
|
||||
|
||||
|
||||
|
||||
;;; Links
|
||||
|
||||
|
|
Loading…
Reference in New Issue