On Sat, Jan 11, 2025, at 09:17, Ihor Radchenko wrote: > "Stefan van der Walt" <stef...@berkeley.edu> writes: > >> I have two small improvement suggestions for org-timer, and would like to >> hear your thoughts. >> >> 1. I use org-timer to run pomodoro-style clocks. When the timer finishes, I >> would like to generate a log entry. It would be helpful to be able to access >> the duration of the clock; however, in org-timer--run-countdown-timer, the >> variable org-timer-start-time is reset BEFORE the org-timer-done-hook is run. >> >> Could we reset the variable *after* the hooks are run instead, so that they >> can access the timer value? > > Yes, that would make sense. See the attached tentative patch.
Thanks, Ihor! That patch looks great. In the description: `ran` -> `run`. >> 2. I have a custom notification for when the timer is done, installed via >> the done hook. I would like to suppress the existing notification, but there >> seems to be no option to do so. Would it make sense to provide a mechanism >> to override/silence the notification? > > We can do it. > One would need to implement analogues to > org-timer-start/stop/pause/continue/set/done-hook that will hold what > Org does by default at that point (turn on/off mode line, play sound, > print message, etc). Something like > org-timer-start/stop/...-default-hook. That would be a good generic solution. In my case, if I can suppress org-show-notification, it'd be enough. Here's what I tried (but it didn't work): (defun stefanv/suppress-org-notify (orig-fun &rest args) (cl-letf ( ((symbol-function 'org-show-notification) (lambda (&rest _) (ignore))) ) (apply orig-fun args))) (advice-add 'org-timer--run-countdown-timer :around #'stefanv/suppress-org-notify) Stéfan