-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow tracking "nested intervals" #503
Comments
Intervals can each have arbitrary tags, so you can just add whatever tags you want to be associated with those intervals, to implement a hierarchical view of those tags. I use |
@smemsh That could work, but, if I understand it correctly, that would require me listing every level of the hierarchy in the command line, right? Example: timew start /a # Start working on a: non-specific tasks
timew start /a /a/b # Start to work specifically on b
timew start /a /a/c # Stop b and start c
timew stop If we added the ability to use nested intervals, we could do something like below:
As with the current version, the structure of the names of the tags would be transparent to timewarrior, the user could use whatever tag she wanted. What would tell timewarrior that we are nesting intervals would be the |
Personally I only work on leaf tasks, and don't use containers. However the containers are emergent based on the tags, which for me are installed automatically via wrappers and triggers, so I don't have to write them all. These extra tags are useful for accounting or selection after the fact, but not for logging. I feel there is only one task worked at a time so nesting them per se doesn't make sense for my work flow. Therefore I only use leaves. If I need to tally time spent on related tasks that share some hierarchy, I can do that (such as, for tasks But, I do get your suggestion and can see that some might find it useful. |
Hi! First things first: Sorry for necro-bumping! I realize this issue is >2 years old, but
I am currently looking for a way to do 'hierarchical tagging', and reading @smemsh's comment, it seemed they managed to get something along those lines to work. Specifically, I am looking for a way to do:
and have timewarrior recognize that these are multiple tags on different hierarchical levels.
@smemsh in case you are still around, would you mind sharing how you got this working? I wrote a small wrapper using #!/bin/sh
#FILE: timew-htags.sh
IN="${@}"
tags=$(echo $IN | tr '/' "\n")
timew start
htag=""
for tag in $tags; do
htag="$htag/$tag"
timew tag "$htag"
done There is still the inconvenience of having all tag levels displayed in the summary. For instance, after running
However, it would make sense to somehow hide the hierarchical tags, as they are already implied by the leaf tag:
Furthermore, since each level of the tag is stored, it would allow to filter for Anyway, just wanted to throw the question in the room and see if this is something anyone else has worked on already or would be interested in discussing. Cheers! |
@cyberme0w my wrapper scripts are all in my taskwtools repo, you might want to look at my In the shell I would use There's of course no native notion of hierarchy in timewarrior, but it can be simulated by putting all the tags comprising each level of the hierarchy on any task whose fully qualified tag hierarchy includes those components. With such tags in place, all tasks that share those levels of hierarchy can be selected as a group. I use those for generating reports, project or even category -level accounting, etc. |
Consider the following use case:
A user is working on multiple projects and is using taskwarrior to track time spent on each project. Let's say that project A uses a ticketing system and the user would like to be able to use taskwarrior to track time spent on each ticket. Since the user is already tracking time on project A,
taskwarrior
can't be used to track the ticket time, becausetimew start
will cause the tracking of project A to stop.To solve that, we could allow "nested intervals" to be recorded. This would turn timewarrior into a "hierarchical" time-tracking system.
The text was updated successfully, but these errors were encountered: