Version 1.2.1 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.2.0 on 2025-10-06 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'. Thanks to Steven Allen for contributing the original version of this feature in pull request 2: <https://github.com/protesilaos/tmr/pull/2>. Steven has assigned copyright to the Free Software Foundation. Further changes by me, such as to make the timers on the mode line clickable (which produces a tabulated view, per `tmr-tabulated-view'). Notifications for more operating systems ──────────────────────────────────────── Timers can optionally trigger a system notification, via the abnormal hook `tmr-timer-finished-functions'. The relevant function is `tmr-notification-notify'. It used to only support Linux. Now it is extended to handle Android, Windows, and Haiku. Thanks to Lucas Quintana for the contribution in pull request 10: <https://github.com/protesilaos/tmr/pull/10>. Lucas has assigned copyright to the Free Software Foundation. The tabulated timers have a "duration" column ───────────────────────────────────────────── The `tmr-tabulated-view' command (alias `tmr-list-timers') now includes a "duration" column, in addition to all the other informative data on display. [ Remember that the tabulated view can be used to create, duplicate, edit, etc. the timers. ] Thanks to jpg for suggesting this in issue 11: <https://github.com/protesilaos/tmr/issues/11>. Miscellaneous ───────────── • System notifications specify the `:app-icon' of Emacs. It will be displayed, if the underlying software supports it (I see it on Linux, anyway). • The option to play the `tmr-sound-file' via the abnormal hook `tmr-timer-finished-functions' is redone to not rely on the system shell (implicitly `bash'). This way, users who use exotic shell alternatives will not run into any trouble. This is done in response to a relevant problem that g-gundam was facing with the `nushell': <https://github.com/protesilaos/tmr/pull/7>. • The function `tmr-notification-notify' is better at informing the user that it has produced the warning about the lack of DBUS support. Before, the notification did not identity itself as belonging to the `tmr' package. • The function `tmr-running-timers-p' is now available as a standalone function to do what was done before inside other functions. This is useful for anyone writing custom code on top of `tmr'. Thanks to Eugene Mikhaylov for suggesting the idea in issue 9: <https://github.com/protesilaos/tmr/issues/9>. … …
