emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Carsten Dominik <carsten.dominik@gmail.com>
To: Bernt Hansen <bernt@norang.ca>
Cc: Rainer Stengele <rainer.stengele@diplan.de>,
	emacs-orgmode mailing list <emacs-orgmode@gnu.org>,
	Paul Mead <paul.d.mead@gmail.com>
Subject: Re: Display missing/overlapping clock ranges
Date: Sun, 24 Apr 2011 17:30:37 +0200	[thread overview]
Message-ID: <1598DF88-B3E8-4502-956F-3A98113EA5BE@gmail.com> (raw)
In-Reply-To: <878vvdj1y6.fsf@norang.ca>


On 13.4.2011, at 23:06, Bernt Hansen wrote:

> Paul Mead <paul.d.mead@gmail.com> writes:
> 
>> Rainer Stengele <rainer.stengele@diplan.de> 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

  parent reply	other threads:[~2011-04-24 15:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-13 15:44 Display missing/overlapping clock ranges Rainer Stengele
2011-04-13 16:28 ` Paul Mead
2011-04-13 21:06   ` Bernt Hansen
2011-04-14  8:26     ` Paul Mead
2011-04-14  9:06     ` Rainer Stengele
2011-04-24 15:30     ` Carsten Dominik [this message]
2011-04-24 21:48       ` Rainer Stengele
2011-04-24 22:07         ` Carsten Dominik
2011-04-27 11:53         ` Carsten Dominik
2011-05-03  7:05           ` Rainer Stengele
2011-04-24 23:09       ` Bernt Hansen
2011-04-27 12:43       ` Sébastien Vauban
2011-04-19 12:28 ` Rainer Stengele

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1598DF88-B3E8-4502-956F-3A98113EA5BE@gmail.com \
    --to=carsten.dominik@gmail.com \
    --cc=bernt@norang.ca \
    --cc=emacs-orgmode@gnu.org \
    --cc=paul.d.mead@gmail.com \
    --cc=rainer.stengele@diplan.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).