Niełatwo to zrobić, kod, aby wygenerować kalendarz jest:
(defun calendar-generate (month year)
"Generate a three-month Gregorian calendar centered around MONTH, YEAR."
;; A negative YEAR is interpreted as BC; -1 being 1 BC, and so on.
;; Note that while calendars for years BC could be displayed as it
;; stands, almost all other calendar functions (eg holidays) would
;; at best have unpredictable results for such dates.
(if (< (+ month (* 12 (1- year))) 2)
(error "Months before January, 1 AD cannot be displayed"))
(setq displayed-month month
displayed-year year)
(erase-buffer)
(calendar-increment-month month year -1)
(dotimes (i 3)
(calendar-generate-month month year
(+ calendar-left-margin
(* calendar-month-width i)))
(calendar-increment-month month year 1)))
Tutaj, (dotimes (i 3) ...)
generowanie 3 miesiące z rzędu.
Jeśli chcesz wygenerować więcej niż 3 miesiące w więcej niż jednym wierszu, musisz zastąpić funkcję calendar-generate
samodzielnie, tak samo jak @Luke powiedział.
Wygląda na to, że rok był zakodowany na stałe jako rok 2012? Coś takiego może być lepsze: '(string-to-number (format-string-string"% Y "(current-time)))' – phils
Tak, możesz edytować. –