emacs-devel
[Top][All Lists]
Advanced

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

Re: calendar problem: week number


From: Ed Reingold
Subject: Re: calendar problem: week number
Date: Thu, 07 Aug 2008 06:58:54 -0500

The "fix" below will break many, many things--holidays, diary entries, 
conversions to other calendars, etc.  The exact shape of the calendar window 
cannot be changed.


> Werner LEMBERG wrote:
> 
> 
> > Companies in German are used to refer to the `Kalenderwoche' (the
> > current number of the week counted from the beginning of the year).
> > For example, this week is the 32nd week.  Can I configure `calendar'
> > to make it display, eg., like in the attached image?  I haven't found
> > a hint in the info file.
> 
> The following patch seems to do the right thing, although it only
> works correctly if calendar-week-start-day is 1 (monday).  I don't think
> it breaks any of the movement commands.
> 
> Cheers,
> 
> Lawrence
> 
> diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
> index dc2f8ce..9989b22 100644
> --- a/lisp/calendar/calendar.el
> +++ b/lisp/calendar/calendar.el
> @@ -1409,7 +1409,13 @@ line."
>            (substring string 0 calendar-day-header-width)))
>        (make-string (- calendar-column-width calendar-day-header-width) ?\s)))
>     (calendar-ensure-newline)
> -   (calendar-insert-at-column indent calendar-intermonth-text trunc)
> +   (calendar-insert-at-column (- indent 3) calendar-intermonth-text trunc)
> +   (insert (propertize (format "%2d " (car (calendar-iso-from-absolute
> +                                            (calendar-dayname-on-or-before
> +                                             1 
> (calendar-absolute-from-gregorian
> +                                                (list month 1
> +                                                      year))))))
> +                       'font-lock-face 'font-lock-comment-face))
>     ;; Add blank days before the first of the month.
>     (insert (make-string (* blank-days calendar-column-width) ?\s))
>     ;; Put in the days of the month.
> @@ -1429,7 +1435,18 @@ line."
>                  (/= day last))
>         (calendar-ensure-newline)
>         (setq day (1+ day))              ; first day of next week
> -       (calendar-insert-at-column indent calendar-intermonth-text trunc)))))
> +       (calendar-insert-at-column (- indent 3) calendar-intermonth-text 
> trunc)
> +       (insert (propertize
> +                (format "%2d " (car (calendar-iso-from-absolute
> +                                     (calendar-dayname-on-or-before
> +                                      1
> +                                      (calendar-absolute-from-gregorian
> +                                       (list month
> +                                             (+ i
> +                                                (- 7
> +                                                   calendar-week-start-day))
> +                                            year))))))
> +                'font-lock-face 'font-lock-comment-face))))))
>  
>  (defun calendar-redraw ()
>    "Redraw the calendar display, if `calendar-buffer' is live."
> 
> -- 
> Lawrence Mitchell <address@hidden>
> 
> 






reply via email to

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