emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Accepted] [O] org-clock-report to insert a :scope sutree report when ca


From: Bastien Guerry
Subject: [Accepted] [O] org-clock-report to insert a :scope sutree report when called from within a subtree?
Date: Wed, 23 Mar 2011 15:12:54 +0100 (CET)

Patch 696 (http://patchwork.newartisans.com/patch/696/) is now "Accepted".

Maintainer comment: none

This relates to the following submission:

http://mid.gmane.org/%3C874o72koig.fsf%40altern.org%3E

Here is the original message containing the patch:

> Content-Type: text/plain; charset="utf-8"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Subject: [O] org-clock-report to insert a :scope sutree report when called
>       from within a subtree?
> Date: Thu, 17 Mar 2011 15:52:23 -0000
> From: Bastien Guerry <address@hidden>
> X-Patchwork-Id: 696
> Message-Id: <address@hidden>
> To: address@hidden
> 
> Hi all,
> 
> The default when creating a clock report is to use :scope file.  I find
> it not practical for big files, where the report can take long to build.
> 
> I'm thinking of applying this change: when called from within a subtree,
> `C-c C-x C-r' will insert a clock report with ":scope subtree", and use
> ":scope subtree" elsewhere.
> 
> Please let me know if you think that's a bad idea.
> 
> 
> diff --git a/lisp/org-clock.el b/lisp/org-clock.el
> index c567a26..87b175c 100644
> --- a/lisp/org-clock.el
> +++ b/lisp/org-clock.el
> @@ -1652,7 +1652,10 @@ fontified, and then returned."
>  (defun org-clock-report (&optional arg)
>    "Create a table containing a report about clocked time.
>  If the cursor is inside an existing clocktable block, then the table
> -will be updated.  If not, a new clocktable will be inserted.
> +will be updated.  If not, a new clocktable will be inserted.  The scope
> +of the new clock will be subtree when called from within a subtree, and 
> +file elsewhere.
> +
>  When called with a prefix argument, move to the first clock table in the
>  buffer and update it."
>    (interactive "P")
> @@ -1662,8 +1665,12 @@ buffer and update it."
>      (org-show-entry))
>    (if (org-in-clocktable-p)
>        (goto-char (org-in-clocktable-p))
> -    (org-create-dblock (append (list :name "clocktable")
> -                            org-clock-clocktable-default-properties)))
> +    (let ((props (if (ignore-errors 
> +                    (save-excursion (org-back-to-heading)))
> +                  (list :name "clocktable" :scope 'subtree)
> +                (list :name "clocktable"))))
> +      (org-create-dblock 
> +       (org-combine-plists org-clock-clocktable-default-properties props))))
>    (org-update-dblock))
>  
>  (defun org-in-clocktable-p ()
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]