From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernt Hansen Subject: [PATCH] Optionally include current clocking task time in clock reports Date: Fri, 26 Feb 2010 21:09:07 -0500 Message-ID: <1267236547-2273-1-git-send-email-bernt@norang.ca> Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NlC7T-00061o-Pn for emacs-orgmode@gnu.org; Fri, 26 Feb 2010 21:09:27 -0500 Received: from [140.186.70.92] (port=35770 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NlC7S-00061g-2T for emacs-orgmode@gnu.org; Fri, 26 Feb 2010 21:09:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NlC7P-0004ni-U3 for emacs-orgmode@gnu.org; Fri, 26 Feb 2010 21:09:25 -0500 Received: from mho-01-ewr.mailhop.org ([204.13.248.71]:54892) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NlC7P-0004nG-SB for emacs-orgmode@gnu.org; Fri, 26 Feb 2010 21:09:23 -0500 Received: from cpe000102d0fe75-cm0012256ecbde.cpe.net.cable.rogers.com ([99.239.148.180] helo=mail.norang.ca) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.68) (envelope-from ) id 1NlC7I-000BV8-Es for emacs-orgmode@gnu.org; Sat, 27 Feb 2010 02:09:16 +0000 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Cc: Bernt Hansen Use a new custom variable org-clock-report-include-clocking-task which defaults to nil to keep the original clock reporting behaviour. --- This patch is available at git://git.norang.ca/org-mode for-carsten lisp/org-clock.el | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/lisp/org-clock.el b/lisp/org-clock.el index cb378e6..0244f31 100644 --- a/lisp/org-clock.el +++ b/lisp/org-clock.el @@ -240,6 +240,11 @@ string as argument." (const :tag "Always" t) (const :tag "When no clock is running" when-no-clock-is-running))) +(defcustom org-clock-report-include-clocking-task nil + "When non-nil, include the current clocking task time in clock reports." + :group 'org-clock + :type 'boolean) + (defvar org-clock-in-prepare-hook nil "Hook run when preparing the clock. This hook is run before anything happens to the task that @@ -1341,6 +1346,13 @@ TSTART and TEND can mark a time range to be considered." (setq t1 (+ t1 (string-to-number (match-string 5)) (* 60 (string-to-number (match-string 4)))))) (t ;; A headline + ;; Add the currently clocking item time to the total + (when (and org-clock-report-include-clocking-task + (equal (org-clocking-buffer) (current-buffer)) + (equal (marker-position org-clock-hd-marker) (point))) + (let ((time (floor (- (org-float-time) + (org-float-time org-clock-start-time)) 60))) + (setq t1 (+ t1 time)))) (setq level (- (match-end 1) (match-beginning 1))) (when (or (> t1 0) (> (aref ltimes level) 0)) (loop for l from 0 to level do -- 1.7.0.90.g251a4