On 2018-01-26, at 19:41, Nick Dokos <ndo...@gmail.com> wrote: > Marcin Borkowski <mb...@mbork.pl> writes: > >> Hi all, >> >> I want to be able to dynamically switch between various settings of >> org-clock-mode-line-total. To this end, I wrote the following code. >> >> (setq org-clock-mode-line-total-settings >> '((current . "time spent in this chunk on the current task") >> (today . "time spent today on the current task") >> (all . "total time spent on the current task"))) >> (setq org-clock-mode-line-total-setting-number 0) >> >> (defun toggle-org-clock-mode-line-total-setting (setting-number) >> "Toggle between org-clock-mode-line-total settings. >> With a numeric argument, use setting SETTING-NUMBER." >> (interactive "P") >> (if (numberp setting-number) >> (setq org-clock-mode-line-total-setting-number >> (mod setting-number (length org-clock-mode-line-total-settings))) >> (setq org-clock-mode-line-total-setting-number >> (mod (1+ org-clock-mode-line-total-setting-number) >> (length org-clock-mode-line-total-settings)))) >> (let ((org-clock-mode-line-total-setting (nth >> org-clock-mode-line-total-setting-number >> >> org-clock-mode-line-total-settings))) >> (setq org-clock-mode-line-total (car org-clock-mode-line-total-setting)) >> (org-clock-update-mode-line) >> (message "Modeline shows %s." >> (cdr org-clock-mode-line-total-setting)))) >> >> Unfortunately, it doesn't work. I checked that the variable >> org-clock-mode-line-total is modified correctly, but even after saying >> (org-clock-update-mode-line), nothing gets updated. Am I doing >> something wrong? >> > > AFAICT, org-clock-mode-line-total is not used by > org-clock-update-mode-line at all. It may be that the name of the > variable is misleading. The only place I see it used is > org-clock-get-sum-start.
Thanks, that helped! It seems my function is now working (almost) correctly, although it is now cargo cult programming - I don't really understand what's going on here. I'll try to make sense of it tomorrow, now it's too late;-). Best, -- Marcin Borkowski