Taskwarrior - What's next? (Teil 4)
Reports
Die in Taskwarrior definierten Reports, auch die eigenen, lassen sich durch Eingabe von task reports
ausgeben.
$ task reports Report Description active Lists active tasks all Lists all pending and completed tasks blocked Lists all blocked tasks burndown.daily Shows a graphical burndown chart, by day burndown.monthly Shows a graphical burndown chart, by month burndown.weekly Shows a graphical burndown chart, by week completed Lists completed tasks ghistory.annual Shows a graphical report of task history, by year ghistory.monthly Shows a graphical report of task history, by month history.annual Shows a report of task history, by year history.monthly Shows a report of task history, by month information Shows all data and metadata list Lists all pending tasks long Lists all pending tasks ls Minimal listing of all pending tasks minimal Minimal listing of all pending tasks newest Shows the newest tasks next Lists the most urgent tasks oldest Shows the oldest tasks overdue Lists overdue tasks projects Shows all project names used ready Lists the most urgent tasks recurring Lists recurring tasks summary Shows a report of task status by project tags Shows a list of all tags used unblocked Lists all unblocked tasks waiting Lists all waiting tasks 27 reports
Eine Reihe von Reports konnte man schon kennen lernen, die meisten beziehen sich direkt auf Aufgaben.
Es gibt aber auch spezielle Reports, wie beispielsweise burndown
, history
und ghistory
, die andere Ausgaben haben. Diese werden am Ende des Artikels besprochen.
Ebenfalls häufig genutzt sind die Reports projects
und tags
, die eine Liste der aktiven Projekte und Etiketten zeigen.
Die Definition eines auf bestimmte Aufgaben bezogenen Reports lässt sich mit task show report.name
anzeigen.
$ task show report.ls Config Variable Value report.ls.columns id,project,priority,description report.ls.description Minimal listing of all pending tasks report.ls.filter status:pending report.ls.labels ID,Project,Pri,Description report.ls.sort priority-,project+
Dabei kommen den einzelnen Konfigurationsoptionen die folgenden Bedeutungen zu.
Spalten und Spaltenköpfe
In columns
finden sich die Spalten, die im Report erscheinen sollen. Mit labels
kann man die Spalten benennen.
Der Befehl columns
gibt die verschiedenen Spalten aus und welche Formate verwendet werden können. Die folgende Ausgabe ist gekürzt, um den Rahmen des Artikels nicht über alle Maßen zu verlängern.
Columns Supported Formats Example bg default* 'on red' depends list* 1 2 10 count [3] indicator D ... wait formatted* 20121022 julian 2456222.87824 epoch 1350896680 iso 20121022T090440Z age 2m
Beschreibung
Mit description
kann eine aussagekräftige Beschreibung des kompletten Reports gegeben werden. Diese Beschreibung erscheint auch in der Ausgabe von task reports
.
Filter
Der Parameter filter
definiert einen Ausgabefilter. Bei einem großen Teil der Reports sind bereits verschiedene Filter gesetzt. Um die Kombination verschiedener Filter wird es in der nächsten Ausgabe des Workshops gehen.
$ task show filter Config Variable Value report.active.filter status:pending start.any: report.all.filter status.not:deleted report.blocked.filter status:pending depends.any: report.completed.filter status:completed report.list.filter status:pending report.long.filter status:pending report.ls.filter status:pending report.minimal.filter status:pending report.newest.filter status:pending limit:10 report.next.filter status:pending limit:page report.oldest.filter status:pending limit:10 report.overdue.filter status:pending due.before:now report.ready.filter status:pending limit:page wait.none: '(scheduled.none: or scheduled.before:now )' report.recurring.filter status:pending parent.any: report.unblocked.filter status:pending depends.none: report.waiting.filter status:waiting
Sortierung
Der Parameter sort
legt eine Sortierreihenfolge fest. Dazu wird der Spaltenname verwendet und eine Reihenfolge, in der sortiert werden soll.
Ein Beispiel
Der unten stehende Report ll
ist bei mir im Einsatz. Er zeigt die Verwendung der Spalte Countdown, um die verbleibende Zeit bis zum Stichzeitpunkt der Aufgabe darzustellen.
$ task config report.ll.columns id,project,priority,due,due.countdown,tags,description $ task config report.ll.description "Dirks task list" $ task config report.ll.filter status:pending $ task config report.ll.labels ID,Project,Pri,Due,Countdown,Tags,Description $ task config report.ll.sort due+,priority-,project+,description+ $ task ll ID Project Pri Due Countdown Tags Description 3 home Staubsaugen 4 work Urlaub einreichen 5 phone Versicherungsagenten anrufen 3 tasks