1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-26 23:31:55 -08:00

Edward M. Reingold <reingold@emr.cs.iit.edu>

(calendar-goto-day-of-year): New function.
This commit is contained in:
Glenn Morris 2003-08-17 22:49:46 +00:00
parent f9df0ca042
commit 163fd24dfd

View file

@ -327,6 +327,27 @@ Moves forward if ARG is negative."
(calendar-cursor-to-visible-date date)
(run-hooks 'calendar-move-hook))
(defun calendar-goto-day-of-year (year day &optional noecho)
"Move cursor to YEAR, DAY number; echo DAY/YEAR unless NOECHO is t.
Negative DAY counts backward from end of year."
(interactive
(let* ((year (calendar-read
"Year (>0): "
(lambda (x) (> x 0))
(int-to-string (extract-calendar-year
(calendar-current-date)))))
(last (if (calendar-leap-year-p year) 366 365))
(day (calendar-read
(format "Day number (+/- 1-%d): " last)
'(lambda (x) (and (<= 1 (abs x)) (<= (abs x) last))))))
(list year day)))
(calendar-goto-date
(calendar-gregorian-from-absolute
(if (< 0 day)
(+ -1 day (calendar-absolute-from-gregorian (list 1 1 year)))
(+ 1 day (calendar-absolute-from-gregorian (list 12 31 year))))))
(or noecho (calendar-print-day-of-year)))
(provide 'cal-move)
;;; cal-move.el ends here