update taskwarrior
This commit is contained in:
34
data/task/contexts.md
Normal file
34
data/task/contexts.md
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: "Taskwarrior Contexts"
|
||||
tags: [ "data", "task" ]
|
||||
requires: [ "Taskwarrior" ]
|
||||
---
|
||||
|
||||
# Contexts
|
||||
|
||||
Set three contexts by their tags:
|
||||
|
||||
```sh
|
||||
task context define work +sa or +hr
|
||||
```
|
||||
|
||||
```sh
|
||||
task context define study +ed or +void or +rat
|
||||
```
|
||||
|
||||
```sh
|
||||
task context define home -sa -hr -ed -void -rat
|
||||
```
|
||||
|
||||
Change to the first context.
|
||||
|
||||
```sh
|
||||
task context work
|
||||
```
|
||||
|
||||
Then stop.
|
||||
|
||||
```sh
|
||||
task context none
|
||||
```
|
||||
|
115
data/task/task.md
Normal file
115
data/task/task.md
Normal file
@@ -0,0 +1,115 @@
|
||||
---
|
||||
title: "Taskwarrior"
|
||||
tags: [ "data", "organization" ]
|
||||
---
|
||||
|
||||
Set up the configuration file:
|
||||
|
||||
```sh
|
||||
task
|
||||
```
|
||||
|
||||
Taskwarrior published a new feature to synchronize tasks others, but the feature was not ready.
|
||||
The server's default installation instructions assume that users pay for hosting services.
|
||||
All listed providers run proprietary software and actively support genocide.
|
||||
|
||||
|
||||
To ignore the synchronization, tell the configuration file to use a local synchronization file.
|
||||
|
||||
```
|
||||
task config sync.local.server_dir
|
||||
task config data.location ~/.local/state/
|
||||
```
|
||||
|
||||
Add a task:
|
||||
|
||||
```sh
|
||||
task add update linux
|
||||
```
|
||||
|
||||
See which task is next:
|
||||
|
||||
```sh
|
||||
task next
|
||||
```
|
||||
|
||||
Note the id number.
|
||||
|
||||
Mark a task as started:
|
||||
|
||||
```sh
|
||||
task start 1
|
||||
```
|
||||
|
||||
Once finished:
|
||||
|
||||
```sh
|
||||
task 1 done
|
||||
```
|
||||
|
||||
# Projects
|
||||
|
||||
Add a project:
|
||||
|
||||
```sh
|
||||
task add project:house buy potted plant
|
||||
task add proj:house.repair buy screwdriver
|
||||
task add proj:house.repair buy shelf brackets
|
||||
task add pro:house.paint buy white paint
|
||||
|
||||
for t in "buy red paint" "buy black paint" "buy brushes" ; do
|
||||
task add pro:house.paint $t
|
||||
done
|
||||
```
|
||||
|
||||
## Summary
|
||||
|
||||
```sh
|
||||
task pro:house sum
|
||||
task burndown.daily pro:house
|
||||
```
|
||||
|
||||
The summaries will show how fast a project is being completed, and when you can expect it to finish at the present rate.
|
||||
|
||||
# Tags
|
||||
|
||||
|
||||
```sh
|
||||
task add +buy toothbrush
|
||||
task +buy
|
||||
```
|
||||
|
||||
# Review
|
||||
|
||||
View list of tasks completed in the last week:
|
||||
|
||||
```sh
|
||||
task end.after:today-1wk completed
|
||||
```
|
||||
|
||||
# User Defined Attributes
|
||||
|
||||
Define a new attribute for tasks called 'size'.
|
||||
The 'user defined attribute' (UDA) needs a `type` and `label`.
|
||||
|
||||
```sh
|
||||
task config uda.size.type string
|
||||
task config uda.size.label Size
|
||||
```
|
||||
You can also ensure task tasks can only be `large`, `medium`, or `small`, then set a default.
|
||||
|
||||
```sh
|
||||
task config uda.size.values large,medium,small
|
||||
uda.size.default=medium
|
||||
```
|
||||
|
||||
# Tricks
|
||||
|
||||
This command shows tasks I'm most interested in:
|
||||
|
||||
```sh
|
||||
task next +ACTIVE or +OVERDUE or due:today or scheduled:today or pri:H
|
||||
```
|
||||
|
||||
The command is long, so `alias` is your friend.
|
||||
|
20
data/task/taskwarrior_configuration.md
Normal file
20
data/task/taskwarrior_configuration.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: "Taskwarrior Configuration"
|
||||
tags: [ "data", "task" ]
|
||||
requires: [ "Taskwarrior" ]
|
||||
---
|
||||
|
||||
Show your current config:
|
||||
|
||||
|
||||
```sh
|
||||
task show
|
||||
```
|
||||
|
||||
Use machine-readable output to make a config file with all configuration keys shown, then make it your configuration file.
|
||||
|
||||
```sh
|
||||
task _show > ${file}
|
||||
mv ${file} ~/.config/task/taskrc
|
||||
```
|
||||
|
172
data/task/timew.md
Normal file
172
data/task/timew.md
Normal file
@@ -0,0 +1,172 @@
|
||||
---
|
||||
title: "timewarrior"
|
||||
tags: [ "data", "tracking", "time", "timew" ]
|
||||
---
|
||||
# Summaries
|
||||
|
||||
Try:
|
||||
|
||||
```sh
|
||||
timew summary :yesterday
|
||||
```
|
||||
|
||||
You can also use :week, :lastweek, :month, :quarter, :year, or a range such as:
|
||||
|
||||
```sh
|
||||
timew summary today to tomorrow
|
||||
timew today - tomorrow
|
||||
2018-10-15T06:00 - 2018-10-17T06:00
|
||||
```
|
||||
|
||||
Each of these can gain with the :ids tag.
|
||||
|
||||
# Basics
|
||||
|
||||
```sh
|
||||
timew start
|
||||
timew stop
|
||||
timew continue
|
||||
timew summary
|
||||
timew tags
|
||||
```
|
||||
|
||||
And add ids with:
|
||||
|
||||
```sh
|
||||
timew summary :ids
|
||||
timew track 10am - 1pm timewarrior
|
||||
timew track 1pm for 2h walk
|
||||
```
|
||||
|
||||
# Adjusting Timewarrior
|
||||
|
||||
First get ids.
|
||||
|
||||
```sh
|
||||
timew summary :ids
|
||||
```
|
||||
|
||||
Then if we're looking at task @2:
|
||||
|
||||
```sh
|
||||
timew move @2 12:00
|
||||
timew lengthen @2 3mins
|
||||
```
|
||||
|
||||
```sh
|
||||
time shorten @2 40mins
|
||||
```
|
||||
|
||||
# Forgetting
|
||||
|
||||
```sh
|
||||
timew start 1h ago @4
|
||||
```
|
||||
|
||||
Or if your action actually had a break:
|
||||
|
||||
```sh
|
||||
timew split @8
|
||||
```
|
||||
|
||||
Or maybe not?
|
||||
|
||||
```sh
|
||||
timew join @4 @8
|
||||
timew @8 delete
|
||||
```
|
||||
|
||||
Start at previous time
|
||||
|
||||
```sh
|
||||
timew start 3pm 'Read chapter 12'
|
||||
timew start 90mins ago 'Read chapter 12'
|
||||
```
|
||||
|
||||
Cancel currently tracked time.
|
||||
|
||||
```sh
|
||||
timew cancel
|
||||
```
|
||||
|
||||
# Backdated tracking
|
||||
|
||||
> timew untag @3
|
||||
|
||||
|
||||
# Hints
|
||||
|
||||
* :quit - for automation
|
||||
|
||||
* :yes
|
||||
|
||||
* :color
|
||||
|
||||
* :fill - expand the time to fill out available time
|
||||
|
||||
* :adjust - automatically correct overlaps
|
||||
|
||||
* :ids - show id numbers
|
||||
|
||||
|
||||
# Times
|
||||
|
||||
* :yesterday
|
||||
|
||||
* :day
|
||||
|
||||
* :week
|
||||
|
||||
* :month
|
||||
|
||||
* :quarter
|
||||
|
||||
* :lastweek
|
||||
|
||||
* :lastmonth
|
||||
|
||||
* :lastquarter
|
||||
|
||||
* :lastyear
|
||||
|
||||
|
||||
|
||||
# Mistakes
|
||||
|
||||
task end.after:2015-05-01 and end.before:2015-05-31 completed
|
||||
|
||||
task end.after:today-1wk completed
|
||||
|
||||
# Errors with Python3
|
||||
|
||||
Replace
|
||||
|
||||
> os.system('timew start ' + combined + ' :yes')
|
||||
|
||||
with:
|
||||
|
||||
> os.system('timew start ' + combined.decode() + ' :yes')
|
||||
|
||||
and
|
||||
|
||||
> os.system('timew stop ' + combined + ' :yes')
|
||||
|
||||
with:
|
||||
|
||||
> os.system('timew stop ' + combined.decode() + ' :yes')
|
||||
|
||||
# Fixing Errors
|
||||
|
||||
```sh
|
||||
curl -O https://taskwarrior.org/download/timew-dbcorrection.py
|
||||
```
|
||||
|
||||
```sh
|
||||
python timew-dbcorrections.py
|
||||
```
|
||||
|
||||
# Setup
|
||||
|
||||
With taskwarrior installed as well, `locate on-modify-time`, then add it to ~/.task/hooks and make it executable.
|
||||
This will track the time of any tasks used with [taskwarrior](task.md).
|
||||
|
Reference in New Issue
Block a user