Marcin Borkowski <mb...@mbork.pl> writes:
> Hi all, > > here's the problem I'd like to solve. I clock various tasks, and then > generate a clock table. So far, so good. But now I'd like to know > better where my time goes. Most tasks I do have a few similar > components: discussion/research, writing code, testing, etc. I thought > that I could create subheadlines under each of the tasks and give them > tags like :discuss:, :code:, :test:, :debug: and so on. (Not very > convenient, but doable, maybe with a bit of Elisp to automate the > process.) > > Now, I'd like to prepare two clock tables: one where I see how much time > every task took, and one where I can see how much time I spent coding, > testing, debugging, emailing etc. I can see in the docs that there is > the ~:match~ option, but if I understand it correctly, it can only > restrict the table to /one/ tag, so I'd need to have as many tables as > I have tags - not optimal. > > Any ideas? Should I use something else than tags for that? > Although I haven't tried it, I think you can have multiple tags. You should be able to do something like +TEST+DEBUG-DISCUSS which would give you those tasks with tags :TEST: and :DEBUG: but not :DISCUSS: Have a look at the 'Matching tags and properties" section in the manual (under the agenda section). Another approach (actually the one I use) is to put things at different levels. So at level 1 is the Tasks heading, at level 2 is each TODO at level 3 is each subtask and at level 4 are the task activities (**** Research, **** Code, **** Meetings, **** Testing, **** Documentation). My main clock table has :maxlevel 4, which shows a complete breakdown while the table I use for invoicing (where I only want to show total time, main task time and sub-task times, but not the level 4 stuff) has :maxlevel 3. Actually, I lie a bit. My current invoicing approach actually uses a custom :formatter function so that my invoice clock table has columns for rate, amount and total amount. However, the :maxlevel approach was where I started! -- Tim Cross