From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: Display missing/overlapping clock ranges Date: Mon, 25 Apr 2011 00:07:25 +0200 Message-ID: <1C42E9C2-9DC9-42CA-A8BA-9AF0B1893917@gmail.com> References: <87ei56yv2y.fsf@gmail.com> <878vvdj1y6.fsf@norang.ca> <1598DF88-B3E8-4502-956F-3A98113EA5BE@gmail.com> <4DB49ACB.3010800@diplan.de> Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([140.186.70.92]:56863) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QE7Sm-00027o-Ow for emacs-orgmode@gnu.org; Sun, 24 Apr 2011 18:07:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QE7Sl-00024e-Bs for emacs-orgmode@gnu.org; Sun, 24 Apr 2011 18:07:32 -0400 Received: from mail-ey0-f169.google.com ([209.85.215.169]:57427) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QE7Sl-00024K-2o for emacs-orgmode@gnu.org; Sun, 24 Apr 2011 18:07:31 -0400 Received: by eyd9 with SMTP id 9so605820eyd.0 for ; Sun, 24 Apr 2011 15:07:29 -0700 (PDT) In-Reply-To: <4DB49ACB.3010800@diplan.de> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Rainer Stengele Cc: Bernt Hansen , emacs-orgmode mailing list , Paul Mead 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: >>=20 >>> Paul Mead writes: >>>=20 >>>> Rainer Stengele writes: >>>>=20 >>>>> 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. >>>>>=20 >>>>> I read Bernt Hansen's comments on how he works with clocks >>>>> (http://doc.norang.ca/org-mode.html#Clocking). >>>>>=20 >>>>> What about a function showing the lacking clock ranges over >>>>> the day while being in the agenda with log mode on? >>>>>=20 >>>>> The function could even check for overlapping clock ranges and = indicate these >>>>> or jump to these. >>>>>=20 >>>>> Maybe it would even be good to be able to configure daily and = weekly >>>>> regular holes in the ranges, for example >>>>>=20 >>>>> - daily lunch time from [12:00]--[13:00] >>>>> - week end days (maybe with diary syntax) >>>>> - working days (Monday to Friday for example) >>>>>=20 >>>>> What do you think? >>>>>=20 >>>>> -- 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. >>>>=20 >>>> Paul >>> Hi Rainer and Paul, >>>=20 >>> 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. >>>=20 >>> 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. >>>=20 >>> 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. >>>=20 >>> Maybe something like the following mock up? >>>=20 >>> --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--- >>=20 >> Hi Bernt, Rainer, Paul, >>=20 >> 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. >>=20 >> 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. >>=20 >> 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. >>=20 >> Also, it is a special log view in that it only shows clocking >> information, I believe this makes it more direct and useful. >>=20 >> There is a variable to configure what constitutes clocking issues. >> The default value is >>=20 >> (setq org-agenda-clock-consistency-checks >> '(:max-duration "10:00" :min-duration 0 :max-gap "0:05" = :gap-ok-around ("4:00"))) >>=20 >> which means the following: >>=20 >> 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. >>=20 >>=20 >> 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. >>=20 >> Happy holidays! >>=20 >> - Carsten >>=20 >=20 > Hi Carsten, >=20 > excellent, I already found some gaps and overlaps in last weeks work > clockings! >=20 > 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" >=20 > OK I just set=20 >=20 > :gap-ok-around ("4:00" "12:30") >=20 > 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? >=20 > 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. >=20 > 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