From ff6965ef9156f69b124568b1d9eb7807ad602c35 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Fri, 25 Dec 2020 17:56:58 +0100 Subject: [PATCH] taskwarrior: Add today report, fix overdue report Simple today report added, mimicking the overall next report list (i.e. sorted by urgency), but only focusing on things due today. This reflects my setup in Todoist a bit better, and should perhaps provide a bit of a crutch until I get more used to the taskwarrior way of doing things. Additionally, added a simple fix for the annoying tendency of taskwarrior to add today's tasks to its overdue list. This happens because tasks added without a specific time will be added as due at the very *first* minute of a day (instead of e.g. at the very last, every task needs an exact time). This simply removes tasks due today from overdue reports. This is not perfect! Two things remain: Tasks still carry the virtual `+OVERDUE` tag around with them, and those tags that actually should be done at a certain time during the day will also not be shown in the overdue report - though they definitely are overdue then. A possible workaround for the second issue is the taskwarrior hook here: https://gitlab.com/marty-oehme/dotfiles/-/snippets/2054237 But, I am happy enough with the setup as-is for now, without complicating it with the hook. --- taskwarrior/.config/task/taskrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/taskwarrior/.config/task/taskrc b/taskwarrior/.config/task/taskrc index 7aa3812..0cdfb96 100644 --- a/taskwarrior/.config/task/taskrc +++ b/taskwarrior/.config/task/taskrc @@ -23,6 +23,7 @@ alias.burndown=burndown.daily # Sort the columns a little differently active.indicator=> + # customize list report: focus on due dates report.list.columns=start.active,id,project,priority,due,description,tags,entry.age report.list.labels=,,Project,Pri,Due,Description,Tags,Age @@ -30,6 +31,14 @@ report.list.labels=,,Project,Pri,Due,Description,Tags,Age report.next.columns=id,project,priority,urgency,due,description,tags,scheduled,entry.age,recur report.next.labels=,Project,Pri,Urg,Due,Description,Tags,Sched,Age,Recur +# customize overdue report: hide tasks which are due today, but scheduled for 00:00:00 +report.overdue.filter=(status:pending or status:waiting) and +OVERDUE and -TODAY +# custom today report, sorted by urgency +report.today.filter=status:pending +TODAY limit:page +report.today.sort=urgency- +report.today.columns=id,project,priority,urgency,due,description,tags,scheduled,entry.age,recur +report.today.labels=,Project,Pri,Urg,Due,Description,Tags,Sched,Age,Recur + # reorder priorities so that explicitly tagged 'Low' items are lower than normal uda.priority.values=H,M,,L urgency.uda.priority.L.coefficient=0