Login


 
Newsletter
Werbung
Do, 29. November 2012, 15:00

Taskwarrior - What's next? (Teil 4)

Taskwarrior ist eine Aufgabenverwaltung für die Kommandozeile. Von einfachen To-do-Listen bis hin zum Management kleinerer Projekte wird alles durch diese Anwendung abgedeckt.

Dies ist der 4. Teil des Workshops Taskwarrior. Alle Artikel dieses Workshops finden Sie in der Übersicht.

Achtung: In alten Versionen von Taskwarrior steckte ein hässlicher Fehler, der bei Verwendung des Kommandos task merge (bisher noch nicht in dieser Reihe behandelt) zu Datenverlust führen konnte. Das ist der schwerste Fehler, den Taskwarrior bis jetzt hatte. Es wird dringend empfohlen, auf die aktuelle Version 2.1.2 oder neuer zu aktualisieren oder das Kommando nicht einzusetzen.

In Teil 1 wurde die Installation von Taskwarrior und die drei Kommandos add, ls und done erklärt. In Teil 2 folgten dann die Befehle delete, undo, modify, config, show und die Attribute priority, project sowie die Filterung von Aktionen. Fehlt noch der Teil 3, in dem der generelle Aufbau eines Taskwarrior-Kommandos behandelt und begonnen wurde, Zeiten einzuführen. Dazu wurden die Datumsformate erklärt und die Attribute due, wait, scheduled und until sowie die Kommandos start und stop. Um sich die Daten anzeigen zu lassen, wurden die Reports list und waiting erwähnt.

Die meisten Ausgaben von Taskwarrior sind farbig. Es lohnt sich, die Beispiele nachzuvollziehen, um in den Genuss von »bunt« zu kommen. :-)

Wiederkehrende Aufgaben

Ein Feature, das eine moderne Aufgabenverwaltung bieten muss, sind wiederkehrende Aufgaben.

Darunter werden Aufgaben verstanden, die in regelmäßigen Abständen zu erledigen sind. Ein Beispiel könnte das Überweisen der Miete an den Vermieter sein (sofern man keinen Dauerauftrag eingerichtet hat).

Das folgende Kommando leistet das Gewollte:

$ task add due:eom recur:monthly "Miete bezahlen"
Created task 1.

$ task list
ID Project Pri Due      Active Age Description
 2             20121031          - Miete bezahlen
1 task

Das ist verwirrend, oder? Eine Aufgabe mit der ID 1 scheint nicht zu existieren.

Wenn eine wiederkehrende Aufgabe angelegt wird, werden zwei Aufgaben erstellt. Eine, die die »Meta-Informationen« über die wiederkehrende Aufgabe enthält, und eine Aufgabe, die erledigt werden soll.

$ task 1,2 information
Name        Value
ID          1
Description Miete bezahlen
Status      Recurring
Recurrence  monthly
Mask        -
Due         20121031
UUID        47c026d4-0d93-4344-8cb7-1e03c57738ce
Entered     20121022 (37 secs)
Urgency     4.8

Date     Modification
20121022 Mask set to
         '-'.

Name        Value
ID          2
Description Miete bezahlen
Status      Pending
Recurrence  monthly
Parent task 47c026d4-0d93-4344-8cb7-1e03c57738ce
Mask Index  0
Due         20121031
UUID        cdf1ad91-debd-499f-8c8e-87f2b238d7bd
Entered     20121022 (31 secs)
Urgency     4.8

Hier ist deutlich sichtbar, dass die Aufgabe mit der ID 1 den Status Recurring hat. Sie ist also die Mutteraufgabe und die Aufgabe mit der ID 2 ist die, die erledigt werden soll.

Das Feld Parent task zeigt an, von welcher Elternaufgabe sie abstammt.

Wenn man eine wiederkehrende Aufgabe löschen möchte, muss man vor allem die Elternaufgabe löschen, sonst erscheint eine neue Inkarnation nach jedem Wiederholungsinterval aufs Neue.

Wiederholungsintervalle

Taskwarrior unterstützt einige Möglichkeiten, Wiederholungsintervalle zu spezifizieren.

Wiederholungsintervalle
daily, day, 1da, 2da, ...Täglich oder alle 1/2/... Tage
weekdaysWochentäglich, nicht an Samstagen oder Sonntagen
weekly, 1wk, 2wks, ...Wöchentlich oder alle 1/2/... Wochen
biweekly, fortnightAlle zwei Wochen
monthly, month, 1mo, 2mo, ...Monatlich oder alle 1/2/... Monate
quarterly, 1qtr, 2qtrs, ...Vierteljährlich oder alle 1/2/... Quartale
semiannualhalbjährlich
annual, yearly, 1yr, 2yrs, ...Jährlich oder alle 1/2/... Jahre
biannual, biyearly, 2yrsAlle zwei Jahre

Endtermin für Wiederholungen setzen

Statt, wie im ersten Abschnitt beschrieben, eine wiederkehrende Aufgabe zu löschen, kann man ihr auch gleich zu Beginn mitgeben, wie oft sie wiederholt werden soll.

$ task add due:eom recur:monthly until:20131231 "Kreditrate bezahlen"
Created task 3.

$ task list
ID Project Pri Due      Active Age Description
 2             20121031        18s Miete bezahlen
 4             20121031          - Kreditrate bezahlen
2 tasks

$ task 2,4 done
Completed task 2 'Miete bezahlen'.
Completed task 4 'Kreditrate bezahlen'.
Completed 2 tasks.

$ task list
No matches.

Diese Aufgabe wird jeden Monat wiederholt, so lange bis der 31.12.2013 erreicht ist.

Da diese Aufgaben aber bereits alle erledigt wurden, wird dies auch gleich entsprechend markiert.

Pro-Linux
Pro-Linux @Twitter
Neue Nachrichten
Werbung