Просмотр исходного кода

Add `org-clock-toggle-auto-clockout'

* doc/org-manual.org: Document the new command.

* lisp/org-clock.el (org-clock-toggle-auto-clockout): New
command.
Bastien 5 лет назад
Родитель
Сommit
a62751a6a5
2 измененных файлов с 12 добавлено и 0 удалено
  1. 3 0
      doc/org-manual.org
  2. 9 0
      lisp/org-clock.el

+ 3 - 0
doc/org-manual.org

@@ -6901,6 +6901,9 @@ set ~org-clock-auto-clockout-timer~ to a number of seconds and add
 When the clock is running and Emacs is idle for more than this number
 of seconds, the clock will be clocked out automatically.
 
+Use =M-x org-clock-toggle-auto-clockout RET= to temporarily turn this
+on or off.
+
 ** Effort Estimates
 :PROPERTIES:
 :DESCRIPTION: Planning work effort in advance.

+ 9 - 0
lisp/org-clock.el

@@ -1421,6 +1421,15 @@ is present in the user configuration."
     (run-with-idle-timer
      org-clock-auto-clockout-timer nil #'org-clock-out)))
 
+;;;###autoload
+(defun org-clock-toggle-auto-clockout ()
+  (interactive)
+  (if (memq 'org-clock-auto-clockout org-clock-in-hook)
+      (progn (remove-hook 'org-clock-in-hook #'org-clock-auto-clockout)
+	     (message "Auto clock-out after idle time turned off"))
+    (add-hook 'org-clock-in-hook #'org-clock-auto-clockout t)
+    (message "Auto clock-out after idle time turned on")))
+
 ;;;###autoload
 (defun org-clock-in-last (&optional arg)
   "Clock in the last closed clocked item.