[Orgmode] Re: Agenda clock reporting

2010-01-03 Thread Carsten Dominik


On Dec 22, 2009, at 2:03 PM, Bernt Hansen wrote:


Hi Carsten,

I use the agenda clock report during the end of my day.  Would it be
difficult to have it include the currently clocking task if a clock is
active?

I clock billable and nonbillable tasks during the day.  If I want to
stop working at 8 billable hours I currently run the clock report and
then find the current active clock entry (last one on the page with  
'l'
in the agenda) and manually add the time accumulated to the clock  
report

to see when I'm done for the day.  This is a bit tedious and error
prone.

I'm thinking that since agenda clock reports are not permanent it
wouldn't hurt to include the current clocking item in the agenda
report if that is easy to do.  I've been digging around in the clock
report code in my limited spare time but haven't yet made any useful
progress on this task.

Any pointers on where to make this modification would be appreciated.


Hi Bernt,

I think the right place would be `org-clock-sum'.  Right now,
this looks only for complete clock lines.  You could modify the regexp
to check for incomplete lines (first time stamp only) and then check
if the org-clock-marker points to the current line.  If yes, you could
use the current time as the end time and proceed.

Send me a patch if you get this to work, with a customization variable
to turn this off.

HTH

- Carsten


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Agenda clock reporting

2010-01-03 Thread Bernt Hansen
Carsten Dominik carsten.domi...@gmail.com writes:

 On Dec 22, 2009, at 2:03 PM, Bernt Hansen wrote:

 Hi Carsten,

 I use the agenda clock report during the end of my day.  Would it be
 difficult to have it include the currently clocking task if a clock is
 active?

 I clock billable and nonbillable tasks during the day.  If I want to
 stop working at 8 billable hours I currently run the clock report and
 then find the current active clock entry (last one on the page with
 l'
 in the agenda) and manually add the time accumulated to the clock
 report
 to see when I'm done for the day.  This is a bit tedious and error
 prone.

 I'm thinking that since agenda clock reports are not permanent it
 wouldn't hurt to include the current clocking item in the agenda
 report if that is easy to do.  I've been digging around in the clock
 report code in my limited spare time but haven't yet made any useful
 progress on this task.

 Any pointers on where to make this modification would be appreciated.

 Hi Bernt,

 I think the right place would be `org-clock-sum'.  Right now,
 this looks only for complete clock lines.  You could modify the regexp
 to check for incomplete lines (first time stamp only) and then check
 if the org-clock-marker points to the current line.  If yes, you could
 use the current time as the end time and proceed.

 Send me a patch if you get this to work, with a customization variable
 to turn this off.

 HTH

Yes it does thanks.  I found the logic that uses the regexp for parsing
the times and summing them in reverse up to the headline in
org-clock-sum.  I haven't modified the regexp yet but was planning
something similar to what you describe above.

   - org-clock-sum
   - Runs through headings in reverse order
   - counts clock entries bottom up to headline
   - adds a text property to the headline with total time
   - need to find out if current heading is clocking
   - add entry for open clock time with closing time to get correct total
   - regexp needs to match open clock entries
   - for open clock entry matches set time to zero
   - reset time if this is the current clocking entry

I'll post the patch whenever it gets done.

Thanks!
Bernt


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Agenda clock reporting

2010-01-03 Thread Carsten Dominik


On Jan 3, 2010, at 3:22 PM, Bernt Hansen wrote:


Carsten Dominik carsten.domi...@gmail.com writes:


On Dec 22, 2009, at 2:03 PM, Bernt Hansen wrote:


Hi Carsten,

I use the agenda clock report during the end of my day.  Would it be
difficult to have it include the currently clocking task if a  
clock is

active?

I clock billable and nonbillable tasks during the day.  If I want to
stop working at 8 billable hours I currently run the clock report  
and

then find the current active clock entry (last one on the page with
l'
in the agenda) and manually add the time accumulated to the clock
report
to see when I'm done for the day.  This is a bit tedious and error
prone.

I'm thinking that since agenda clock reports are not permanent it
wouldn't hurt to include the current clocking item in the agenda
report if that is easy to do.  I've been digging around in the clock
report code in my limited spare time but haven't yet made any useful
progress on this task.

Any pointers on where to make this modification would be  
appreciated.


Hi Bernt,

I think the right place would be `org-clock-sum'.  Right now,
this looks only for complete clock lines.  You could modify the  
regexp

to check for incomplete lines (first time stamp only) and then check
if the org-clock-marker points to the current line.  If yes, you  
could

use the current time as the end time and proceed.

Send me a patch if you get this to work, with a customization  
variable

to turn this off.

HTH


Yes it does thanks.  I found the logic that uses the regexp for  
parsing

the times and summing them in reverse up to the headline in
org-clock-sum.  I haven't modified the regexp yet but was planning
something similar to what you describe above.

  - org-clock-sum
  - Runs through headings in reverse order
  - counts clock entries bottom up to headline
  - adds a text property to the headline with total time
  - need to find out if current heading is clocking


Yes, the alternative approach would be to *not* modify the regexp, but  
to

check if org-clock-hd-marker points to the current headline and then
add the time since the clock started (in `org-clock-start-time') to  
the appropriate
field in the ltimes vector before extracting the total time.  So you  
would do
this as the first thing when you find a headline, and the proceed  
normally.


Sounds simpler than modifying the regexp and would not cause any  
problems
with other incomplete clock entries that may have been left behind and  
never

properly resolved..

- Carsten


  - add entry for open clock time with closing time to get correct  
total

  - regexp needs to match open clock entries
  - for open clock entry matches set time to zero
  - reset time if this is the current clocking entry

I'll post the patch whenever it gets done.

Thanks!
Bernt


- Carsten





___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Agenda clock reporting

2010-01-03 Thread Bernt Hansen
Carsten Dominik carsten.domi...@gmail.com writes:

 On Jan 3, 2010, at 3:22 PM, Bernt Hansen wrote:

 Carsten Dominik carsten.domi...@gmail.com writes:

 I think the right place would be `org-clock-sum'.  Right now,
 this looks only for complete clock lines.  You could modify the
 regexp
 to check for incomplete lines (first time stamp only) and then check
 if the org-clock-marker points to the current line.  If yes, you
 could
 use the current time as the end time and proceed.

 Send me a patch if you get this to work, with a customization
 variable
 to turn this off.

 HTH

 Yes it does thanks.  I found the logic that uses the regexp for
 parsing
 the times and summing them in reverse up to the headline in
 org-clock-sum.  I haven't modified the regexp yet but was planning
 something similar to what you describe above.

   - org-clock-sum
   - Runs through headings in reverse order
   - counts clock entries bottom up to headline
   - adds a text property to the headline with total time
   - need to find out if current heading is clocking

 Yes, the alternative approach would be to *not* modify the regexp, but
 to
 check if org-clock-hd-marker points to the current headline and then
 add the time since the clock started (in `org-clock-start-time') to
 the appropriate
 field in the ltimes vector before extracting the total time.  So you
 would do
 this as the first thing when you find a headline, and the proceed
 normally.

 Sounds simpler than modifying the regexp and would not cause any
 problems
 with other incomplete clock entries that may have been left behind and
 never
 properly resolved..

That does sound simpler ... I'll give that a try.

Thanks!
Bernt


___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: Agenda clock reporting

2010-01-03 Thread Carsten Dominik


On Jan 3, 2010, at 4:38 PM, Bernt Hansen wrote:


Carsten Dominik carsten.domi...@gmail.com writes:


On Jan 3, 2010, at 3:22 PM, Bernt Hansen wrote:


Carsten Dominik carsten.domi...@gmail.com writes:


I think the right place would be `org-clock-sum'.  Right now,
this looks only for complete clock lines.  You could modify the
regexp
to check for incomplete lines (first time stamp only) and then  
check

if the org-clock-marker points to the current line.  If yes, you
could
use the current time as the end time and proceed.

Send me a patch if you get this to work, with a customization
variable
to turn this off.

HTH


Yes it does thanks.  I found the logic that uses the regexp for
parsing
the times and summing them in reverse up to the headline in
org-clock-sum.  I haven't modified the regexp yet but was planning
something similar to what you describe above.

 - org-clock-sum
 - Runs through headings in reverse order
 - counts clock entries bottom up to headline
 - adds a text property to the headline with total time
 - need to find out if current heading is clocking


Yes, the alternative approach would be to *not* modify the regexp,  
but

to
check if org-clock-hd-marker points to the current headline and then
add the time since the clock started (in `org-clock-start-time') to
the appropriate
field in the ltimes vector before extracting the total time.  So you
would do
this as the first thing when you find a headline, and the proceed
normally.

Sounds simpler than modifying the regexp and would not cause any
problems
with other incomplete clock entries that may have been left behind  
and

never
properly resolved..


That does sound simpler ... I'll give that a try.


In fact, you only need to add the time to t1, not to the ltimes  
vector.


- Carsten



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode