Emacs: tmr version 1.3.0
TMR provides facilities for setting timers using a convenient notation. Lots of commands are available to operate on timers, while there also exists a tabulated view to display all timers in a nice grid.
- Package name (GNU ELPA):
tmr - Official manual: https://protesilaos.com/emacs/tmr
- Change log: https://protesilaos.com/emacs/tmr-changelog
- Git repositories:
- GitHub: https://github.com/protesilaos/tmr
- GitLab: https://gitlab.com/protesilaos/tmr
- Video demonstration: https://protesilaos.com/codelog/2026-01-19-emacs-timers-tmr-demo/
- Backronym: TMR May Ring; Timer Must Run.
Below are the release notes.
Version 1.3.0 on 2026-01-25
This version adds some user options and new features to an already stable package.
Timers can be paused
The command tmr-toggle-pause will prompt for a running timer and
pause it.
Users who have something like the following in their configuration,
have access to tmr-toggle-pause under the P key:
;; All TMR commands are behind this prefix key. So `tmr-toggle-pause' is C-c t P.
(define-key global-map (kbd "C-c t") #'tmr-prefix-map)
In the buffer produced by the command tmr-tabulated-view the pause
functionality applies to the timer at point. The tmr-toggle-pause is
invoked with the P key.
An extra column in the tabulated view shows whether a timer is paused or not. Here is an example:
Start End Duration Remaining Paused? Acknowledge? Description
08:49:41 09:19:46 30m 29m 17s Yes Work on TMR for 30 minutes
08:49:31 08:54:31 5m 3m 53s Prepare tea
08:49:21 08:59:21 10m 8m 42s Yes Edit the description with this one instead
Configure the confirmation text for acknowledgements
When a timer is set to be acknowledged (i.e. the user must confirm
that they saw it elapse) it prompts for confirmation. The default
input text that confirms the acknowledgement is ack. This is now
subject to configuration via the user option tmr-acknowledge-timer-text.
Change how frequently the tabulated list is refreshed
The buffer produced by tmr-tabulated-view is set to automatically
refresh every 5 seconds by default. In previous versions this was every
1 second. The new user option tmr-tabulated-refresh-interval can be
set to a number of seconds or nil. In the latter case, the automatic
refresh is disabled.
Removed the long-obsolete tmr-tabulated.el
Its code was merged into tmr.el on 2024-10-30 and all it was doing
thenceforth is issue a warning to those who would require the
tmr-tabulated feature. Now (require 'tmr-tabulated) produces an
error.