Version 1.3.0 of package Tmr has just been released in GNU ELPA. You can now find it in M-x list-packages RET.
Tmr describes itself as: ====================================== Set timers using a convenient notation ====================================== More at https://elpa.gnu.org/packages/tmr.html ## Summary: ━━━━━━━━━━━━━━━━━━━━━━ TMR MAY RING Protesilaos Stavrou [email protected] ━━━━━━━━━━━━━━━━━━━━━━ This manual, written by Protesilaos Stavrou, describes the customization options for `tmr' (or TMR, TMR May Ring, …), and provides every other piece of information pertinent to it. The name of the package is pronounced as “timer” or “T-M-R”. The documentation furnished herein corresponds to stable version 1.2.0, released on 2025-10-06. Any reference to a newer feature which does not yet form part of the latest tagged commit, is explicitly marked as such. Current development target is 1.3.0-dev. ## Recent NEWS: ━━━━━━━━━━━━━━━━━━━ CHANGE LOG OF TMR ━━━━━━━━━━━━━━━━━━━ This document contains the release notes for each tagged commit on the project's main git repository: <https://github.com/protesilaos/tmr>. The newest release is at the top. For further details, please consult the manual: <https://protesilaos.com/emacs/tmr>. Table of Contents ───────────────── Version 1.3.0 on 2026-01-25 Version 1.2.0 on 2025-10-06 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. Version 1.2.0 on 2025-10-06 ═══════════════════════════ This release introduces several quality-of-life refinements to an already stable and featureful package. Timers can now appear on the modeline ───────────────────────────────────── The new minor mode `tmr-mode-line-mode' controls whether running timers are displayed on the mode line. More specifically, they are displayed in the `global-mode-string', which can also be set in the `tab-bar-mode' (this way the information appears in one place instead of all the mode lines, assuming default settings). The exact format of a timer on display is controlled by the user option `tmr-mode-line-format'. The number of timers is set with the option `tmr-mode-line-max-timers'. The separator between multiple timers is `tmr-mode-line-separator'. The length of each timer's optional description is subject to `tmr-mode-line-max-desc-length'. While the entire indicator can have a prefix, per `tmr-mode-line-prefix'. … …
