Hi Carsten, thanks you so much for adding the week features, which sometimes are necessary even inside universities :-)
> > How difficult would it be to > > (a) add the current iso-week into the headline of the Week-View > > That does not work, because the week view may or may not start > on a Monday, so it may contain days from two different weeks. > For now I am adding the ISO week number to every date in the > agenda, if this seems too cluttered we need to think of a > different solution. Hmmh, the view get a little busy, and I don't know about performance issues when iso weekdays are calculated for each day (speed is an issue on my N810). There's a lot of redundant information now. Donnerstag 6 Dezember 2007 W49 4 Freitag 7 Dezember 2007 W49 5 BTW: (format "%-9s %2d %s %4d %s" dayname day monthname year weekstring))) doesn't work as expected for German locale What about Week-agenda (W01-02): if the view does not start on weekday one. Similarly the day/month view could show: Day-Agenda (W01): Month-agenda (W01-05): I don't think we need weeks for the year view :-) > I have just pushed the necessary changes into the git repo. Here is the > user interface: > There seem's to be a problem with '.': Debugger entered--Lisp error: (wrong-number-of-arguments (lambda (sd span n) "Compute starting date and number of days for agenda. SPAN may be `day', `week', `month', `year'. The return value is a cons cell with the starting date and the number of days, so that the date SD will be in that range." (let* ((greg (calendar-gregorian-from-absolute sd)) (dg (nth 1 greg)) (mg (car greg)) (yg (nth 2 greg)) nd w1 y1 m1 thisweek) (cond ((eq span (quote day)) (when n (setq sd (+ (calendar-absolute-from-gregorian (list mg 1 yg)) n -1))) (setq nd 1)) ((eq span (quote week)) (let* ((nt (calendar-day-of-week (calendar-gregorian-from-absolute sd))) (d (if org-agenda-start-on-weekday (- nt org-agenda-start-on-weekday) 0))) (setq sd (- sd (+ (if (< d 0) 7 0) d))) (when n (require (quote cal-iso)) (setq thisweek (car (calendar-iso-from-absolute sd))) (when (> n 99) (setq y1 (org-small-year-to-year (/ n 100)) n (mod n 100))) (setq sd (calendar-absolute-from-iso (list n 1 (or y1 (nth 2 (calendar-iso-from-absolute sd))))))) (setq nd 7))) ((eq span (quote month)) (when (and n (> n 99)) (setq y1 (org-small-year-to-year (/ n 100)) n (mod n 100))) (setq sd (calendar-absolute-from-gregorian (list (or n mg) 1 (or y1 yg))) nd (- (calendar-absolute-from- gregorian (list (1+ (or n mg)) 1 (or y1 yg))) sd))) ((eq span (quote year)) (setq sd (calendar-absolute-from-gregorian (list 1 1 (or n yg))) nd (- (calendar-absolute-from-gregorian (list 1 1 (1+ (or n yg)))) sd)))) (cons sd nd))) 2) org-agenda-compute-time-span(733121 day) (let* ((sd ...) (comp ...) (org-agenda-overriding-arguments org-agenda-last-arguments)) (setf (nth 1 org-agenda-overriding-arguments) (car comp)) (setf (nth 2 org-agenda-overriding-arguments) (cdr comp)) (org-agenda-redo) (org-agenda-find-same-or-today-or-agenda)) (cond (tdpos (goto-char tdpos)) ((eq org-agenda-type ...) (let* ... ... ... ... ...)) (t (error "Cannot find today"))) (let ((tdpos ...)) (cond (tdpos ...) (... ...) (t ...))) org-agenda-goto-today() call-interactively(org-agenda-goto-today nil nil) And there's a general problem with emacs23 (which seems to be rather unstable at the moment): Due to some changes in calendar, calendar-absolute-from-iso is _not_ autoloaded. (require 'cal-iso) does the trick. > Enjoy! Definitely, thanks again Thomas _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode