emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Display missing/overlapping clock ranges


From: Carsten Dominik
Subject: Re: [O] Display missing/overlapping clock ranges
Date: Mon, 25 Apr 2011 00:07:25 +0200

On 24.4.2011, at 23:48, Rainer Stengele wrote:

> Am 24.04.2011 17:30, schrieb Carsten Dominik:
>> On 13.4.2011, at 23:06, Bernt Hansen wrote:
>> 
>>> Paul Mead <address@hidden> writes:
>>> 
>>>> Rainer Stengele <address@hidden> writes:
>>>> 
>>>>> I do clock every task I work on during the whole day.
>>>>> At the end of the day or week I have to go over all clock entries in my 
>>>>> agenda
>>>>> and see if there are holes or overlappings in my clock tables.
>>>>> If yes I have to adjust the clocks.
>>>>> 
>>>>> I read Bernt Hansen's comments on how he works with clocks
>>>>> (http://doc.norang.ca/org-mode.html#Clocking).
>>>>> 
>>>>> What about a function showing the lacking clock ranges over
>>>>> the day while being in the agenda with log mode on?
>>>>> 
>>>>> The function could even check for overlapping clock ranges and indicate 
>>>>> these
>>>>> or jump to these.
>>>>> 
>>>>> Maybe it would even be good to be able to configure daily and weekly
>>>>> regular holes in the ranges, for example
>>>>> 
>>>>> - daily lunch time from [12:00]--[13:00]
>>>>> - week end days (maybe with diary syntax)
>>>>> - working days (Monday to Friday for example)
>>>>> 
>>>>> What do you think?
>>>>> 
>>>>> -- Rainer
>>>> I'd defintely use something which identified the gaps and overlaps as
>>>> they're taking some time to find now that I have to account more closely
>>>> for my time! I've been considering whether to raise this for a
>>>> while. The 'regular holes' idea is good to, although not as important
>>>> for me.
>>>> 
>>>> Paul
>>> Hi Rainer and Paul,
>>> 
>>> Locating gaps would be useful.  I've been meaning to investigate this
>>> but haven't spent any time on it yet.  With my current clocking setup
>>> I've found I get very few holes.  Checking the times is a task I do
>>> manually just before billing for my time.  I currently just use a visual
>>> scan of the daily agenda(s) including clocking lines displayed ensuring
>>> that the start and end times match over the clocking period.
>>> 
>>> It should be possible to automate the check.  How should a filtered
>>> agenda be handled?  I expect you'd want to see the gaps for the entries
>>> that are filtered away otherwise it's only really meaningful when you
>>> look at the entire clocking data.
>>> 
>>> The major problem I used to have was clocks that would be opened and
>>> never closed.  These were bad because they count as 0 minutes and
>>> without fixing those entries I don't bill for that time.  Since the
>>> invention of M-x org-resolve-clocks (which runs everytime I clock in) I
>>> now find these open clocks quickly and don't need to reconstruct the
>>> data a week later.  I haven't had this problem in a long time.
>>> 
>>> Maybe something like the following mock up?
>>> 
>>> --8<---------------cut here---------------start------------->8---
>>> Day-agenda (W15):
>>> Wednesday  13 April 2011
>>> todo:        7:09- 7:11 Clocked:   (0:02) Organization                      
>>>              :PERSONAL::
>>>              7:11- 8:00 - Gap ->   (0:49)
>>> org:         8:00- 8:12 Clocked:   (0:12) DONE Try to fix this bug          
>>>       :ORG:WORK:tuning::
>>> todo:        8:12- 8:26 Clocked:   (0:14) Organization                      
>>>              :PERSONAL::
>>> diary:       8:26- 9:06 Clocked:   (0:40) Breakfast
>>> todo:        9:06- 9:30 Clocked:   (0:24) Task A                            
>>>              :PERSONAL::
>>>              9:30-10:58 - Gap ->   (1:28)
>>>             10:00...... ----------------
>>> todo:       10:58-11:11 Clocked:   (0:13) Organization                      
>>>              :PERSONAL::
>>>             vvv ------ Overlap ------ vvv
>>> todo:       11:11-11:12 Clocked:   (0:01) Read Mail and News                
>>>              :PERSONAL::
>>> todo:       11:10-11:14 Clocked:   (0:01) Organization                      
>>>              :PERSONAL::
>>>             ^^^ ------ Overlap ------ ^^^
>>> todo:       11:14-11:15 Clocked:   (0:01) Read Mail and News                
>>>              :PERSONAL::
>>> todo:       11:15-11:16 Clocked:   (0:01) Organization                      
>>>              :PERSONAL::
>>>             12:00...... ----------------
>>>             14:00...... ----------------
>>>             16:00...... ----------------
>>>             11:16-16:33 - Gap ->   (5:17)
>>> todo:       16:33...... Clocked:   (-) Read Mail and News                   
>>>              :PERSONAL::
>>>             16:43...... now - - - - - - - - - - - - - - - - - - - - - - - - 
>>> -
>>>             18:00...... ----------------
>>>             20:00...... ----------------
>>> --8<---------------cut here---------------end--------------->8---
>> 
>> Hi Bernt, Rainer, Paul,
>> 
>> these are pretty good ideas, and since it is a holiday, I have some time,
>> so I have tried an implementation and just pushed it to the master.
>> 
>> This introduces a new key in the agenda, "v c", which will check for
>> clocking issues and display them in a similar way as Bernt proposes.
>> 
>> The whole thing works like log view, so it applies to the currently
>> displayed span in the agenda, and it sticks if you move around
>> with "f" and "b".  To get out of this view, press "l" to turn off
>> log view, for example.
>> 
>> Also, it is a special log view in that it only shows clocking
>> information, I believe this makes it more direct and useful.
>> 
>> There is a variable to configure what constitutes clocking issues.
>> The default value is
>> 
>> (setq org-agenda-clock-consistency-checks
>>  '(:max-duration "10:00" :min-duration 0 :max-gap "0:05" :gap-ok-around 
>> ("4:00")))
>> 
>> which means the following:
>> 
>> 1. Report any clocking chunks that are longer than 10 hours,
>> 2. Report clocking chunks that are shorter than 0 minutes
>>   (so this could be used to find short clocks, by setting it
>>    to one minute or so)
>> 3. Report gaps in the clocking, if the gap is larger than 5 minutes
>>   (should than be called :min-gap?  I am confused....)
>> 4. If the time 4am falls into a large gap, do not report the gap.
>>   This is to avoid the spurious reporting of gaps between the
>>   last evening task and the first morning task.
>> 
>> 
>> Testing and feedback would be much appreciated.
>> Also, it is not really useful to use this on a filtered agenda view,
>> but testing of this would be appreciated as well.
>> 
>> Happy holidays!
>> 
>> - Carsten
>> 
> 
> Hi Carsten,
> 
> excellent, I already found some gaps and overlaps in last weeks work
> clockings!
> 
> 1. I wonder how to get rif of the lunch break "gaps". Of course I could
> clock the lunch time as such,
> but I would prefer to provide my daily fixed lunch time in order to
> - ignore any gap occuring between start and end of "lunch time"
> 
> OK I just set 
> 
> :gap-ok-around ("4:00" "12:30")
> 
> which did what I wanted. But imagine I would have my lunch break from 12:31 
> to 12:55. The break would be reported as gap.
> I would rather have a clock range wherein anay gap would be ignored.
> Did I understand something wrong?

The idea is to pick a time that is safely in the break, like 4:00 is safely
after you last work from the previous day and safely before your first work
of the next day.  Just pick a single time that is safely in your
lunch break, for example 12:45.  If you break is too irregular, then this
will not work for you.  But, you know, it is OK to ignore a gap warning
when you know what has caused it.  Tools are there the help
us, not to enslave us.  Good tools, anyway.

> 2. Maybe the fonts or the indicating strings for "gap" and "overlap" could be 
> made configurable?
> 
> I would try to make these two look differently.

The easiest would be to define these fonts also in the property list.
I'll take a look at this.

> 
> Thanks again! Marvelous!
> I will use the function daily or at least weekly!

Jup, I think checking this regularly makes sense, maybe
as part of the weekly review.

- Carsten




reply via email to

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