emacs-orgmode
[Top][All Lists]
Advanced

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

[O] Feature Request: Merge subtrees in clock report


From: Subhan Michael Tindall
Subject: [O] Feature Request: Merge subtrees in clock report
Date: Wed, 30 Jul 2014 17:44:25 +0000

I’m looking for a way to merge subtrees with duplicate structure into a single subtree, primarily for the purposes of clockreporting on time.

In my mind it would work like this

‘(org-merge-subtree-level 2) => determines how far down the tree to merge

org-merge-subtrees would match headlines down to the org-merge-subtree level, and if matched, content and further subtrees from matches would be merged into the first match. This could be done non-destructively or destructively (possibly another configuration option to determine this)

* m1

** mm1

   CLOCK: [2013-07-28 Mon 09:05]--[2013-07-28 Mon 09:30] =>  0:25

   mm1 content

** mm2

   CLOCK: [2013-07-28 Mon 09:45]--[2013-07-28 Mon 10:13] =>  0:28

   mm2 content

* m1

  CLOCK: [2013-07-28 Mon 09:30]--[2013-07-28 Mon 09:40] =>  0:10

** mm2

   CLOCK: [2013-07-28 Mon 09:40]--[2013-07-28 Mon 09:45] =>  0:05

   more mm2 content

** mm3

   CLOCK: [2013-07-28 Mon 10:30]--[2013-07-28 Mon 11:30] =>  1:00

   mm3 content
(org-merge-subtrees) would produce a single tree:

* m1

     CLOCK: [2013-07-28 Mon 09:30]--[2013-07-28 Mon 09:40] =>  0:10

** mm1

   CLOCK: [2013-07-28 Mon 09:05]--[2013-07-28 Mon 09:30] =>  0:25

   mm1 content

** mm2

   CLOCK: [2013-07-28 Mon 09:45]--[2013-07-28 Mon 10:13] =>  0:28

   CLOCK: [2013-07-28 Mon 09:40]--[2013-07-28 Mon 09:45] =>  0:05

   mm2 content

   more mm2 content

** mm3

   CLOCK: [2013-07-28 Mon 10:30]--[2013-07-28 Mon 11:30] =>  1:00

   mm3 content

 

Drawers should merge, CLOCK notes stay with the CLOCK line, etc

 

Ideally this would operate across files into a temporary buffer or var as well

 

Motivation is primarily to facilitate clockreporting.

Example: I have a project, RA, with 3 files in it.

I use a standard structure in files, like this

* overview

  project overview

* data files

** file 1

   content

** file 2

*** TODO generate data

* SQL

** query 1

 

I’d like to be able to generate a clocktable at the project level with all time spent on eg data files grouped and summarized into one entry. Instead what I get is something that looks like this (using my example above)

#+BEGIN: clocktable :block lastyear :narrow 30 :scope file :tcolumns 2 :maxlevel 2

#+CAPTION: Clock summary at [2014-07-30 Wed 10:22], for the year 2013.

| <30>                           |        |      |

| Headline                       |   Time |      |

|--------------------------------+--------+------|

| *Total time*                   | *2:08* |      |

|--------------------------------+--------+------|

| m1                             |   0:53 |      |

| \__ mm1                        |        | 0:25 |

| \__ mm2                        |        | 0:28 |

| m1                             |   1:15 |      |

| \__ mm2                        |        | 0:05 |

| \__ mm3                        |        | 1:00 |

#+END:

 

I guess this could operate either on the subtrees themselves, or maybe make clocktable smarter and have options to collapse tables like the above like this:

#+BEGIN: clocktable :block lastyear :narrow 30 :scope file :tcolumns 2 :maxlevel 2 :collapse 2

#+CAPTION: Clock summary at [2014-07-30 Wed 10:22], for the year 2013.

| <30>                           |        |      |

| Headline                       |   Time |      |

|--------------------------------+--------+------|

| *Total time*                   | *2:08* |      |

|--------------------------------+--------+------|

| m1                             |  2:08 |      |

| \__ mm1                        |        | 0:25 |

| \__ mm2                        |        | 0:33 |

| \__ mm3                        |        | 1:00 |

#+END:

 

And also work at the file level, so if the 2 m1 trees came from separate files they would be combined.

 

Subhan

 

 

 

 

Subhan Michael Tindall

Program Analyst – FamilyCare Health Plans

825 NE Multnomah St, Suite 1400; Portland OR 97232

Direct: 503-471-3127

Fax:      503-471-3177

Email:  address@hidden

Email-Signature-Logos June 20143

 


This message is intended for the sole use of the individual and entity to which it is addressed and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If you are not the intended addressee, nor authorized to receive for the intended addressee, you are hereby notified that you may not use, copy, disclose or distribute to anyone the message or any information contained in the message. If you have received this message in error, please immediately advise the sender by reply email and delete the message.  Thank you.

reply via email to

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