TaskWarrior
Habe über TaskWarrior in der aktuellen Ausgabe von freiesMagazin gelesen, im zweiten von zukünftig mehreren Teilen der Artikelreihe über dieses Programm (Teil 1, Teil 2).
Aus Neugierde habe ich das Programm installiert und beschäftige mich seit ein paar Tagen damit.
In den beiden genannten Artikeln bekommt schonmal ein Gefühl für die Syntax; wer sich in die gesamte Funktionalität einarbeiten möchte, dem sei die umfangreiche Manpage task-tutorial angeraten. Dazu gibt es noch die Manpages task für die Bedienung, taskrc für die Konfiguration, task-faq, task-color und task-sync.
Habe mich vorher immer wieder mit Thunderbird, KOrganizer aus KDE PIM, TaskCoach und anderen versucht, doch jedes Tool hat seine Macken:
Thunderbird kennt keine Abhängigkeiten für Aufgaben, KOrganizer ist riesig und braucht dieses furchtbare Akonadi und das UI von TaskCoach ist furchtbar langsam.
Letzlich bin ich bei einem Mix aus verschiedenen Textdateien, Foren-Einträgen und Wiki-Seiten gelandet, aber das ist alles andere als optimal.
TaskWarrior dagegen ist übersichtlich, flott und sehr funktional.
In Gentoo ist die aktuelle Version 2.1.1 bereits enthalten, für viele weitere Systeme gibt es Pakete, siehe unter http://taskwarrior.org/projects/taskwarrior/wiki/Download.
Möglichkeiten von TaskWarrior
Zu den Möglichkeiten des Programms gibt es ja schon die oben genannten Manpages und Anleitungen, deshalb steht hier nur das, was mir besonders gefällt.
In Farbe
Das Programm verwendet zwar eine reine Textausgabe, es gibt jedoch verschiedene Themes, die das ganze farblich aufpolieren. Dabei kann man wählen zwischen Themes mit 16 oder 256 verschiedenen Farben. Um die Farben auch zu sehen, muss z. B. unter Gentoo rxvt-unicode mit dem USE-Flag „256-color“ kompilieren sein.
Dank Farbe sehen auch Listen mit sehr vielen Aufgaben noch übersichtlich aus.
Die verwendbaren Farben zeig „task colors“ an:
Notizen anhängen
Man kann Notizen an eine Aufgabe anhängen:
task <id> annotate "Dies ist eine Notiz"
Verschiedene Berichte
Eine Liste der definierten Berichte lässt sich anzeigen mit
task reports
Jeder Bericht lässt sich in allen Einzelheiten ändern.
Mehrere Einträge auf einmal ändern
Befehle in task werden immer auf alle passenden Einträge angewendet, man kann somit sehr einach mehrere Aufgaben auf einmal ändern und z. B. einem anderen Projekt zuordnen.
task pro:altesprojekt modify pro:neuesprojekt
Eigene Shell
„task shell“ startet die eigene Shell. Ein Vorteil hiervon ist, dass man sich nicht die .bash_history mit den Unmengen an Befehlen zumüllt, zumindest zu Beginn.
Alternativ startet man zuerst eine neue Bash in der Bash und verwendet dann erst TaskWarrior, somit landen die Befehle auch nicht in der History.
Aufgabenübersicht auf dem Desktop (mit KDE SC)
Da ich aktuell, mal wieder, KDE SC nutze, wird das Plasma-Widget „File Watcher“ verwendet, um die Datei (~/.local/share/tw_summary) anzeigen zu lassen, in die per Cronjob jede 10 Minuten die aktuell anstehenden Aufgaben hineingeschrieben werden.
Habe dafür den foldenden Eintrag in Cron erstellt:
*/10 * * * * /usr/bin/task next rc.defaultwidth=200 rc.detection=off 2>/dev/null | tail -n +2 >~/.local/share/tw_summary
Wenn man die Ausgabe von task an eine Pipe leitet, so erkennt das Programm dies und verwendet eine Breite von 80 Zeichen für die Ausgabe; das sieht eher unschön aus, deshalb wird mit den beiden rc.xxx-Definitionen für diesen Aufruf die Konfiguration überladen, die Erkennung abgeschaltet und eine Breite von 200 Zeichen verwendet.
Sieht dann auf dem Desktop so aus (hier für ein Beispielprojekt und mit weniger Breite):
Auf der Projektseite von TaskWarrior sind schönere Lösungen gelistet, z. B. ein Python-Script, welches die Ausgabe von „task export“ (im json-Format) verwendet, um daraus schöne Web-Seiten zu erstellen, doch ich bevorzuge hier eher simple Lösungen.
Externe Scripte
Für einige Dinge, die mit TaskWarrior nicht funkionieren, gibt es eine Scriptsammlung auf der Projektseite: http://taskwarrior.org/projects/taskwarrior/wiki/ExternalScripts.
Enthalten sind z. B. Scripte für Benachrichtigungen auf dem Desktop (http://taskwarrior.org/boards/1/topics/1830) oder auf derselben Seite ein Beispiel für die zsh, die bei jedem Start der Shell anzeigt, was die nächsten beiden Tage ansteht.
In meiner .bashrc steht z. B.
if [ -f $(which tasks 2>/dev/null) ]; then task next due.before:3days fi
Ein Beispielscript für Email-Benachrichtigungen ist auch dabei.
Fehlt noch
Das einzige, was mir noch fehlt, ist die Möglichkeit, Termine auf eine bestimmte Uhrzeit festlegen zu können, bisher beziehen sich Termine nur auf einen Tag.
Update: TaskWarrior kann doch schon mit Zeit umgehen, siehe Kommentarbereich :)
Fertig
Habe jetzt alle Listen, Wiki- und Foreneinträge in TaskWarrior verschoben, (fast) perfekt für mich :)
Kommentare
Bisher gibt es hier keine Kommentare.
Kommentar oder Anmerkung für diesen Blogbeitrag
Öffentlicher Kommentar per E-Mail: Hier klicken
Nicht öffentliche Anmerkung per E-Mail: Hier klicken
Sonstige Kontaktaufnahme: Kontakt