summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichelangelo Rodriguez <michelangelo.rodriguez@gmail.com>2026-04-02 07:45:28 +0200
committerMichelangelo Rodriguez <michelangelo.rodriguez@gmail.com>2026-04-02 19:37:09 +0200
commitac234aee0cb7ba85d7c8ec5316a7ba8a6fc3d265 (patch)
tree36cbb51509525525af6ebf883824776075f699e9
parenta3b568e8123c41d0606ecf01c8d01cbf8693edc9 (diff)
* greader.el (greader-timer-remaining): New command
Display the time remaining before the reading timer expires, formatted as minutes and seconds in the minibuffer. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
-rw-r--r--greader.el12
1 files changed, 12 insertions, 0 deletions
diff --git a/greader.el b/greader.el
index 56d1866..4aafbe0 100644
--- a/greader.el
+++ b/greader.el
@@ -845,6 +845,18 @@ Optional argument TIMER-IN-MINS timer in minutes (integer)."
(greader-timer-mode 1))
(setq-local greader-timer timer-in-mins))
+(defun greader-timer-remaining ()
+ "Display the time remaining before the reading timer expires.
+The remaining time is shown in the minibuffer as minutes and seconds."
+ (interactive)
+ (if (and greader-timer-mode (timerp greader-stop-timer))
+ (let* ((total (greader-convert-mins-to-secs greader-timer))
+ (remaining (max 0 (- total greader-elapsed-time)))
+ (mins (/ remaining 60))
+ (secs (% remaining 60)))
+ (message "Time remaining: %d min %d sec" mins secs))
+ (message "No active timer.")))
+
(defun greader-setup-timers ()
"Set up timers, that is, call `run-at-time' using settings you have specified."
(catch 'timer-is-nil