Taskwarrior Configuration
Installation
apt install taskwarrior timewarrior libjson-perl
Add environment variables to bash.
export TASKRC=~/task/.taskrc
export TIMEWARRIORDB=~/task/timew
alias taskopen='taskopen -c ~/task/taskopen/.taskopenrc'
task
git clone https://github.com/ValiValpas/taskopen
cd taskopen
make PREFIX=/usr install
mkdir -p ~/task/taskopen ~/task/tasknotes
taskopen -c ~/.task/taskopen/.taskopenrc
cp /usr/share/doc/timewarrior/ext/on-modify.timewarrior ~/task/hooks
chmod +x ~/task/hooks/on-modify.timewarrior
task diagnostics
Hooks
System: Enabled
Location: /home/{USER}/task/hooks
Active: on-modify.timewarrior (executable)
Inactive:
Customize Taskwarrior
Displayed without comments / unchanged lines.
1# From taskrc man page https://linux.die.net/man/5/taskrc
2displaydweeknumber=no
3dateformat=Y-M-D
4dateformat.report=Y-M-D
5dateformat.holiday=YMD
6dateformat.annotation=Y-M-D
7
8# Files
9data.location=~/task
10
11# Color theme (uncomment one to use)
12include /usr/share/taskwarrior/dark-256.theme
13
14# show tracking time
15journal.time=on
16
17# Default burndown to daily
18alias.burndown=burndown.daily
19
20# punt push to next day
21alias.punt=modify wait:1d
22
23# someday shortcut
24alias.someday=mod +someday wait:someday
25
26# Shortcuts
27alias.dailystatus=status:completed end.after:today all
28
29# Set active task indicator
30active.indicator=>
31
32# Case insensitive search
33search.case.sensitive=no
34
35# Remove more urgent tasks nag message on commands.
36nag=
37
38# Remove task header section (taskrc redirection notification, command run).
39verbose=blank,footnote,label,new-id,new-uuid,affected,edit,special,project,sync,unwait,recur
40
41# Only set urgency based on priority and due date.
42urgency.active.coefficient=6.0
43urgency.age.coefficient=0.0
44urgency.age.max=0.0
45urgency.annotations.coefficient=0.0
46urgency.blocked.coefficient=0.0
47urgency.blocking.coefficient=0.0
48urgency.due.coefficient=12.0
49urgency.inherit=on
50urgency.project.coefficient=0.0
51urgency.scheduled.coefficient=0.0
52urgency.tags.coefficient=0.0
53urgency.user.tag.next.coefficient=0.0
54urgency.waiting.coefficient=0.0
55
56# Add UDA task estimation in minutes, default 30.
57uda.estimate.type=string
58uda.estimate.label=Est
59uda.estimate.default=30
60
61# Add UDA priority, A-Z, default Z, urgency modifications, coloring
62uda.priority.label=Priority
63uda.priority.type=string
64uda.priority.values=a,b,c,d,z
65uda.priority.default=z
66color.uda.priority.a=color255
67color.uda.priority.b=color245
68color.uda.priority.c=color250
69color.uda.priority.d=color009
70urgency.uda.priority.a.coefficient=6.0
71urgency.uda.priority.b.coefficient=3.9
72urgency.uda.priority.c.coefficient=1.8
73urgency.uda.priority.d.coefficient=0.7
74urgency.uda.prirotiy.z.coefficient=-6.0
75
76# Add contexts.
77context.accounts=+accounts
78context.apartment=+apartment
79context.computer=+computer
80context.exercise=+exercise
81context.food=+food
82context.games=+games
83context.hacking=+hacking
84context.hardware=+hardware
85context.ideas=+ideas
86context.inspiration=+inspiration
87context.job=+job
88context.links=+links
89context.media=+media
90context.moving=+moving
91context.organization=+organization
92context.personal=+personal
93context.programming=+programming
94context.travel=+travel
95context.windows=+windows
96context.salt=+salt
97context.download=+download
98context.telemetry=+telemetry
99context.linux=+linux
100context.achievements=+achievements
101
102# Add Estimate to report list, remove urgency, tags.
103report.list.columns=id,start.age,entry.age,depends.indicator,priority,estimate,project,recur.indicator,scheduled.countdown,due,until.remaining,description.count
104report.list.labels=ID,Active,Age,D,P,Est,Project,R,Sch,Due,Until,Description
105# Remove age, urgency, tags; add estimate to task list report.
106report.list.labels=ID,Active,D,P,Est,Project,R,Sch,Due,Until,Description
107report.list.columns=id,start.age,depends.indicator,priority,estimate,project,recur.indicator,scheduled.countdown,due,until.remaining,description.count
108# Remove age, urgency, tags from task next report.
109report.next.labels=ID,Active,Deps,P,Est,Project,Recur,S,Due,Until,Description
110report.next.columns=id,start.age,depends,priority,estimate,project,recur,scheduled.countdown,due.relative,until.remaining,description
111# Remove age, urgency to task all report.
112report.all.labels=ID,St,UUID,A,Done,D,P,Est,Project,Tags,R,Wait,Sch,Due,Until,Description
113report.all.columns=id,status.short,uuid.short,start.active,end.age,depends.indicator,priority,estimate,project.parent,tags.count,recur.indicator,wait.remaining,scheduled.remaining,due,until.remaining,description
Customized Timewarrior
Displayed without comments / unchanged lines.
1import /usr/share/doc/timewarrior/doc/themes/dark.theme
2
3define exclusions:
4 monday = <10:00>17:00
5 tuesday = <10:00>17:00
6 wednesday = <10:00>17:00
7 thursday = <10:00>17:00
8 friday = <10:00>17:00
9 saturday = <10:00>17:00
10 sunday = <10:00>17:00
Customize Taskopen
Displayed without comments / unchanged lines.
1#BROWSER='xdg-open $FILE &>/dev/null'
2EDITOR='subl'
3#FILE_CMD='xdg-open'
4TASKBIN='task'
5
6# If you sync tasks NOTES_FOLDER should be a location that syncs and is available to
7# other computers, i.e. /users/dropbox/tasknotes
8# NOTES_FOLDER to store notes in, must already exist!
9NOTES_FOLDER="$HOME/task/tasknotes/"
10
11# Preferred extension for tasknotes
12NOTES_EXT=".md"
13
14# Regular expression that referes to the NOTES_FILE.
15# Default is: Notes
16NOTES_REGEX="notes"
References