natenom-website-dump-2024-0.../natenom.de/2012/09/perfekte-aufgabenverwaltung-taskwarrior-fur-die-kommandozeile/index.html

133 lines
44 KiB
HTML
Raw Normal View History

2024-02-01 17:43:06 +01:00
<!doctype html><html class=position-relative itemscope itemtype=https://schema.org/WebPage lang=de data-bs-theme=auto data-palette=blue><head><script src=/assets/init/bundle.min.a63b05c8004831f165aca508cfe52bdc3b3c568ce762c0e22f82b1fe1ed14173.js integrity="sha256-pjsFyABIMfFlrKUIz+Ur3Ds8VoznYsDiL4Kx/h7RQXM=" crossorigin=anonymous></script><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :) - Natenoms Blog</title>
<link rel=icon href=/favicon_hudc94279ded70d7b83fccc56e43bdd2fa_24074_16x16_resize_catmullrom_3.png sizes=16x16 type=image/png><link rel=icon href=/favicon_hudc94279ded70d7b83fccc56e43bdd2fa_24074_32x32_resize_catmullrom_3.png sizes=32x32 type=image/png><link rel=icon href=/favicon_hudc94279ded70d7b83fccc56e43bdd2fa_24074_150x150_resize_catmullrom_3.png sizes=150x150 type=image/png><link rel=apple-touch-icon href=/favicon_hudc94279ded70d7b83fccc56e43bdd2fa_24074_180x180_resize_catmullrom_3.png sizes=180x180 type=image/png><link rel=icon href=/favicon_hudc94279ded70d7b83fccc56e43bdd2fa_24074_192x192_resize_catmullrom_3.png sizes=192x192 type=image/png><link rel=mask-icon href=/safari-pinned-tab.svg color=#6f42c1><meta name=keywords content="Verkehrswende,Fahrrad,CriticalMass,OpenBikeSensor,SimRa,Mumble,Open Source,Minimalismus,OpenStreetMap,Müllsammeln,Fotografie,Malen,Zeichnen"><meta name=description content="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."><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://natenom.de/wp-content/uploads/2012/09/planner.png"><meta name=twitter:title content="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)"><meta name=twitter:description content="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."><meta property="og:title" content="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)"><meta property="og:description" content="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."><meta property="og:type" content="article"><meta property="og:url" content="https://natenom.de/2012/09/perfekte-aufgabenverwaltung-taskwarrior-fur-die-kommandozeile/"><meta property="og:image" content="https://natenom.de/wp-content/uploads/2012/09/planner.png"><meta property="article:section" content="posts"><meta property="article:published_time" content="2012-09-21T11:48:32+00:00"><meta property="article:modified_time" content="2012-09-21T11:48:32+00:00"><meta itemprop=name content="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)"><meta itemprop=description content="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."><meta itemprop=datePublished content="2012-09-21T11:48:32+00:00"><meta itemprop=dateModified content="2012-09-21T11:48:32+00:00"><meta itemprop=wordCount content="699"><meta itemprop=image content="https://natenom.de/wp-content/uploads/2012/09/planner.png"><meta itemprop=keywords content="Aufgaben,CLI,cron,Konsole,Open Source,Shell,"><meta property="og:image:alt" content="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)"><meta name=twitter:image:alt content="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)"><link data-precache rel=stylesheet href="/assets/main/bundle.min.b189232e48c49a02f23e6616502e93a36137102626fd47589f55ab6447b15b4d.css" integrity="sha256-sYkjLkjEmgLyPmYWUC6To2E3ECYm/UdYn1WrZEexW00=" crossorigin=anonymous></head><body><header class="mb-4 sticky-top"><nav class="top-app-bar shadow navbar navbar-expand-xxl"><div class=container><a class="navbar-brand d-flex align-items-center flex-grow-1 flex-xxl-grow-0 justify-content-xxl-start ms-2 ms-xxl-0 mx-auto me-xxl-2" href=https://natenom.de/><picture><img class=logo alt=Logo src=https://natenom.de/images/logo.svg loading=lazy>
</picture>Natenoms Blog</a><div class="offcanvas-xxl offcanvas-end flex-grow-1" data-bs-scroll=true tabindex=-1 id=navbarMenus aria-labelledby=navbarMenusLabel><div class="offcanvas-header px-4 pb-0"><div class="offcanvas-title h5" id=navbarMenusLabel>Natenoms Blog</div><button type=button class="btn-close btn-close-white" data-bs-dismiss=offcanvas data-bs-target=#navbarMenus aria-label=Close></button></div><div class="offcanvas-body p-4 pt-0 p-xxl-0"><hr class=d-xxl-none><ul class="navbar-nav flex-row flex-wrap align-items-center me-auto"><li class="nav-item col-6 col-xxl-auto"><a class="nav-link py-2 px-0 px-xxl-2" href=https://natenom.de/><i class="fas fa-home me-1"></i></a></li><li class="nav-item col-6 col-xxl-auto"><a class="nav-link py-2 px-0 px-xxl-2" href=https://natenom.de/ueber/>Über</a></li><li class="nav-item col-6 col-xxl-auto"><a class="nav-link py-2 px-0 px-xxl-2" href=https://wiki.natenom.de/ target=_blank rel="noopener noreferrer">Wiki</a></li><li class="nav-item col-6 col-xxl-auto"><a class="nav-link py-2 px-0 px-xxl-2" href=https://natenom.de/blogroll/>Blogroll</a></li><li class="nav-item col-6 col-xxl-auto"><a class="nav-link py-2 px-0 px-xxl-2" href=https://kagube.de/ target=_blank rel="noopener noreferrer">Blog vom kleinen 🐘</a></li></ul><hr class=d-xxl-none><form class="search-bar ms-auto my-auto" action=/search/ novalidate><div class="input-group align-items-center"><span class="btn btn-search disabled position-absolute left-0 border-0 px-1"><i class="fas fa-fw fa-search fa-lg"></i>
</span><input class="my-1 form-control border-white rounded-5 search-input bg-body" name=q type=search placeholder=Suchen aria-label=Search required>
<span class="search-shortcut position-absolute end-0 top-0 me-2"><kbd class="text-dark bg-white opacity-75 rounded-3 shadow border border-primary py-1 fw-bold">/</kbd></span></div></form><hr class=d-xxl-none><ul class="navbar-nav flex-row flex-wrap align-items-center ms-md-auto"><li class="nav-item py-2 py-xxl-1 col-12 col-xxl-auto"><nav class="social-links nav justify-content-center flex-row"><a class="nav-link social-link col-6 col-xxl-auto p-1" target=_blank href=https://digitalcourage.social/@natenom title=Mastodon rel=me><i class="fa-fw fab fa-mastodon"></i>
<span class="ms-1 d-xxl-none">Mastodon</span>
</a><a class="nav-link social-link col-6 col-xxl-auto p-1" target=_blank href=/index.xml title=RSS rel=me><i class="fas fa-fw fa-rss"></i>
<span class="ms-1 d-xxl-none">RSS</span></a></nav></li><li class="nav-item py-2 py-xxl-1 col-12 col-xxl-auto"><div class="vr d-none d-xxl-flex h-100 mx-xxl-2 text-white"></div><hr class="d-xxl-none my-2"></li><li class="nav-item dropdown col-6 col-xxl-auto"><a class="nav-link px-0 py-2 px-xxl-1" href=# id=fontSizeDropdown role=button data-bs-toggle=dropdown aria-expanded=false><i class="fas fa-fw fa-font"></i>
<span class=d-xxl-none>Schriftgröße</span></a><ul class="font-size-dropdown-menu dropdown-menu dropdown-menu-end" aria-labelledby=fontSizeDropdown><li><button class="font-size-item dropdown-item" data-size=xs>
Extra klein</button></li><li><button class="font-size-item dropdown-item" data-size=sm>
Klein</button></li><li><button class="font-size-item dropdown-item active" data-size=md>
Mittel</button></li><li><button class="font-size-item dropdown-item" data-size=lg>
Groß</button></li><li><button class="font-size-item dropdown-item" data-size=xl>
Extra groß</button></li></ul></li><li class="nav-item dropdown col-6 col-xxl-auto"><a class="nav-link px-0 py-2 px-xxl-1" href=# id=paletteDropdown role=button data-bs-toggle=dropdown aria-expanded=false><i class="fas fa-fw fa-palette"></i>
<span class=d-xxl-none>Palette</span></a><ul class="palette-dropdown-menu dropdown-menu dropdown-menu-end px-2 row g-2" aria-labelledby=paletteDropdown><li class="col-4 my-1"><a role=button id=palette-blue aria-label=Blau class="btn btn-sm w-100 palette text-bg-blue" data-palette=blue></a></li><li class="col-4 my-1"><a role=button id=palette-blue-gray aria-label=Blaugrau class="btn btn-sm w-100 palette text-bg-blue-gray" data-palette=blue-gray></a></li><li class="col-4 my-1"><a role=button id=palette-brown aria-label=Braun class="btn btn-sm w-100 palette text-bg-brown" data-palette=brown></a></li><li class="col-4 my-1"><a role=button id=palette-cyan aria-label=Cyan class="btn btn-sm w-100 palette text-bg-cyan" data-palette=cyan></a></li><li class="col-4 my-1"><a role=button id=palette-green aria-label=Grün class="btn btn-sm w-100 palette text-bg-green" data-palette=green></a></li><li class="col-4 my-1"><a role=button id=palette-indigo aria-label=Indigo class="btn btn-sm w-100 palette text-bg-indigo" data-palette=indigo></a></li><li class="col-4 my-1"><a role=button id=palette-orange aria-label=Orange class="btn btn-sm w-100 palette text-bg-orange" data-palette=orange></a></li><li class="col-4 my-1"><a role=button id=palette-pink aria-label=Rosa class="btn btn-sm w-100 palette text-bg-pink" data-palette=pink></a></li><li class="col-4 my-1"><a role=button id=palette-purple aria-label=Purpur class="btn btn-sm w-100 palette text-bg-purple" data-palette=purple></a></li><li class="col-4 my-1"><a role=button id=palette-red aria-label=Rot class="btn btn-sm w-100 palette text-bg-red" data-palette=red></a></li><li class="col-4 my-1"><a role=button id=palette-teal aria-label=Teal class="btn btn-sm w-100 palette text-bg-teal" data-palette=teal></a></li><li class="col-4 my-1"><a role=button id=palette-yellow aria-label=Gelb class="btn btn-sm w-100 palette text-bg-yellow" data-palette=yellow></a></li></ul></li><li class="nav-item dropdown col-6 col-xxl-auto"><a class="nav-link px-0 py-2 px-xxl-1" href=# id=modeDropdown role=button data-bs-toggle=dropdown aria-expanded=false><i class="mode-icon fas fa-fw fa-adjust" id=modeIcon></i>
<span class=d-xxl-none>Modus</span></a><ul class="mode-dropdown-menu dropdown-menu dropdown-menu-end" aria-labelledby=modeDropdown><li class=mode-item data-color-mode=light data-icon=sun><button class=dropdown-item>
<i class="mode-icon fas fa-fw fa-sun"></i> Hell</button></li><li class=mode-item data-color-mode=dark data-icon=moon><button class=dropdown-item>
<i class="mode-icon fas fa-fw fa-moon"></i> Dunkel</button></li><li class="mode-item active" data-color-mode=auto data-icon=adjust><button class=dropdown-item>
<i class="mode-icon fas fa-fw fa-adjust"></i> Auto</button></li></ul></li></ul></div></div><div class=d-flex><button class="navbar-toggler order-5 border-0" type=button data-bs-toggle=offcanvas data-bs-target=#navbarMenus aria-controls=navbarMenus aria-expanded=false aria-label="Toggle navigation">
<i class="fas fa-ellipsis-h"></i></button></div></div></nav></header><main class=container><div class="row content"><noscript><div class="alert alert-danger" role=alert>Dein Browser unterstützt kein JavaScript.</div></noscript><div class=col-xxl-8><div class=container><nav class="row card component" aria-label=breadcrumb><div class="card-body pb-0"><ol class="hbs-breadcrumb breadcrumb flex-nowrap"><li class="breadcrumb-item text-surface"><a href=/>Blog</a></li><li class="breadcrumb-item text-surface"><a href=/posts/>Posts</a></li><li class="breadcrumb-item active">Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)</li></ol></div></nav><div class="post-panel-wrapper position-relative d-flex justify-content-center"><div class="d-flex flex-row justify-content-center rounded-5 border post-panel position-fixed px-3 py-1 surface shadow-1"><a class="action action-toc d-none d-xxl-block" href=#postTOC role=button title=Inhaltsverzeichnis><i class="fas fa-fw fa-list-alt"></i>
</a><a class="action action-toc d-block d-xxl-none" href=#post-toc-container role=button title=Inhaltsverzeichnis><i class="fas fa-fw fa-list-alt"></i>
</a><a class="action action-post-comments" href=#post-comments role=button aria-label=Comments title=Kommentare><i class="fas fa-fw fa-comments"></i>
</a><a id=sidebarToggler class="action action-sidebar-toggler d-none d-xxl-block" role=button title><i class="fas fa-fw fa-expand-alt" data-fa-transform=rotate-45></i></a></div></div><article class="row card component mb-4 post"><div class=card-header><h1 class="card-title post-title my-2">Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)</h1></div><div class=card-body><div class="post-meta mb-3"><span class="post-date me-1 mb-1" title="Erstellt am 2012-09-21 13:48:32 +0200 CEST.">Freitag, 21. September 2012</span><span class="post-reading-time me-1 mb-1">4 Min. Lesezeit</span><a href=/categories/linux/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-category">
<i class="fas fa-fw fa-folder me-1"></i>Linux</a><a href=/tags/aufgaben/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">Aufgaben</a><a href=/tags/cli/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">CLI</a><a href=/tags/cron/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">Cron</a><a href=/tags/konsole/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">Konsole</a><a href=/tags/open-source/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">Open Source</a><a href=/tags/shell/ class="btn btn-sm btn-secondary mb-1 me-2 py-0 pe-1 post-taxonomy post-taxonomy-sm post-tag">Shell</a></div><picture class="d-flex justify-content-center"><img class="post-featured-img h-auto w-auto mb-3" alt="Perfekte Aufgabenverwaltung TaskWarrior für die Kommandozeile :)" src=https://natenom.de/wp-content/uploads/2012/09/planner.png></picture><div id=postTOC class=toc-details><details open><summary>Inhaltsverzeichnis</summary><nav id=TableOfContents><ul><li><a href=#taskwarrior>TaskWarrior</a></li><li><a href=#möglichkeiten-von-taskwarrior>Möglichkeiten von TaskWarrior</a><ul><li><a href=#in-farbe>In Farbe</a></li><li><a href=#notizen-anhängen>Notizen anhängen</a></li><li><a href=#verschiedene-berichte>Verschiedene Berichte</a></li><li><a href=#mehrere-einträge-auf-einmal-ändern>Mehrere Einträge auf einmal ändern</a></li><li><a href=#eigene-shell>Eigene Shell</a></li></ul></li><li><a href=#aufgabenübersicht-auf-dem-desktop-mit-kde-sc>Aufgabenübersicht auf dem Desktop (mit KDE SC)</a></li><li><a href=#externe-scripte>Externe Scripte</a></li><li><a href=#fehlt-noch>Fehlt noch</a></li><li><a href=#fertig>Fertig</a></li></ul></nav></details></div><div class="post-content mb-3" data-bs-spy=scroll data-bs-target=#TableOfContents tabindex=0><div id=post-summary><h2 id=taskwarrior data-numberify>TaskWarrior<a class="anchor ms-1" href=#taskwarrior></a></h2><p>Habe über TaskWarrior in der aktuellen Ausgabe von <a title=http://freiesmagazin.de href=http://freiesmagazin.de target=_self>freiesMagazin</a> gelesen, im zweiten von zukünftig mehreren Teilen der Artikelreihe über dieses Programm (<a title=http://www.freiesmagazin.de/mobil/freiesMagazin-2012-08-bilder.html#12_08_taskwarrior href=http://www.freiesmagazin.de/mobil/freiesMagazin-2012-08-bilder.html#12_08_taskwarrior target=_self>Teil 1</a>, <a title=http://www.freiesmagazin.de/mobil/freiesMagazin-2012-09-bilder.html#12_09_taskwarrior_02 href=http://www.freiesmagazin.de/mobil/freiesMagazin-2012-09-bilder.html#12_09_taskwarrior_02 target=_self>Teil 2</a>).</p><p>Aus Neugierde habe ich das Programm installiert und beschäftige mich seit ein paar Tagen damit.</p></div><div id=post-content-body><p>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.</p><p>Habe mich vorher immer wieder mit <a title=http://www.mozilla.org/de/thunderbird/ href=http://www.mozilla.org/de/thunderbird/ target=_self>Thunderbird</a>, <a title=http://userbase.kde.org/KOrganizer href=http://userbase.kde.org/KOrganizer target=_self>KOrganizer</a> aus <a title=http://community.kde.org/KDE_PIM href=http://community.kde.org/KDE_PIM target=_self>KDE PIM</a>, <a title=http://taskcoach.org/ href=http://taskcoach.org/ target=_self>TaskCoach</a> und anderen versucht, doch jedes Tool hat seine Macken:<br>Thunderbird kennt keine Abhängigkeiten für Aufgaben, KOrganizer ist riesig und braucht dieses furchtbare <a href=/2012/03/akonadi-erklart-wo-verbleiben-die-daten/ title="Akonadi erklärt Wo verbleiben die Daten?">Akonadi</a> und das UI von TaskCoach ist furchtbar langsam.</p><p>Letzlich bin ich bei einem Mix aus verschiedenen Textda
</pre><p>Jeder Bericht lässt sich in allen Einzelheiten ändern.</p><h3 id=mehrere-einträge-auf-einmal-ändern data-numberify>Mehrere Einträge auf einmal ändern<a class="anchor ms-1" href=#mehrere-einträge-auf-einmal-ändern></a></h3><p>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.</p><pre>task pro:altesprojekt modify pro:neuesprojekt</pre><h3 id=eigene-shell data-numberify>Eigene Shell<a class="anchor ms-1" href=#eigene-shell></a></h3><p>„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.</p><p>Alternativ startet man zuerst eine neue Bash in der Bash und verwendet dann erst TaskWarrior, somit landen die Befehle auch nicht in der History.</p><h2 id=aufgabenübersicht-auf-dem-desktop-mit-kde-sc data-numberify>Aufgabenübersicht auf dem Desktop (mit KDE SC)<a class="anchor ms-1" href=#aufgabenübersicht-auf-dem-desktop-mit-kde-sc></a></h2><p>Da ich aktuell, mal wieder, KDE SC nutze, wird das Plasma-Widget „File Watcher“ verwendet, um die Datei <em>(~/.local/share/tw_summary)</em> anzeigen zu lassen, in die per Cronjob jede 10 Minuten die aktuell anstehenden Aufgaben hineingeschrieben werden.</p><p>Habe dafür den foldenden Eintrag in Cron erstellt:</p><pre>*/10 * * * * /usr/bin/task next rc.defaultwidth=200 rc.detection=off 2&amp;amp;gt;/dev/null | tail -n +2 &amp;amp;gt;~/.local/share/tw_summary</pre><p>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.</p><p>Sieht dann auf dem Desktop so aus (hier für ein Beispielprojekt und mit weniger Breite):</p><figure id=attachment_16522 aria-describedby=caption-attachment-16522 style=width:470px class="wp-caption alignnone"><img loading=lazy class="size-full wp-image-16522" title='TaskWarrior-Ausgabe im Plasmoid "File Watcher"' alt='TaskWarrior-Ausgabe im Plasmoid "File Watcher"' src=/wp-content/uploads/2012/09/taskwarrior_plasmoid.png srcset="/wp-content/uploads/2012/09/taskwarrior_plasmoid.png 470w, /wp-content/uploads/2012/09/taskwarrior_plasmoid-150x60.png 150w, /wp-content/uploads/2012/09/taskwarrior_plasmoid-300x120.png 300w" sizes="(max-width: 470px) 100vw, 470px"><figcaption id=caption-attachment-16522 class=wp-caption-text>TaskWarrior-Ausgabe im Plasmoid &#8222;File Watcher&#8220;</figcaption></figure><p>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.</p><h2 id=externe-scripte data-numberify>Externe Scripte<a class="anchor ms-1" href=#externe-scripte></a></h2><p>Für einige Dinge, die mit TaskWarrior nicht funkionieren, gibt es eine Scriptsammlung auf der Projektseite: <a title=http://taskwarrior.org/projects/taskwarrior/wiki/ExternalScripts href=http://taskwarrior.org/projects/taskwarrior/wiki/ExternalScripts target=_self><a class=urlextern href=http://taskwarrior.org/projects/taskwarrior/wiki/ExternalScripts>http://taskwarrior.org/projects/taskwarrior/wiki/ExternalScripts</a></a>.<br>Enthalten sind z. B. Scripte für Benachrichtigungen auf dem Desktop (<a class=urlextern href=http://taskwarrior.org/boards/1/topics/1830>http://taskwarrior.org/boards/1/topics/1830</a>) oder auf derselben Seite ein Beispiel für die zsh, die bei jedem Start der Shell anzeigt, was die nächsten beiden Tage ansteht.</p><p>In meiner .bashrc steht z. B.</p><pre>if [ -f $(which tasks 2&amp;amp;gt;/dev/null) ];
then
task next due.before:3days
fi
</pre><p>Ein Beispielscript für Email-Benachrichtigungen ist auch dabei.</p><h2 id=fehlt-noch data-numberify>Fehlt noch<a class="anchor ms-1" href=#fehlt-noch></a></h2><p><del>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.</del></p><p><span style=text-decoration:underline><strong>Upda</strong></span><span style=text-decoration:underline><strong>te</strong><strong>:</strong></span> TaskWarrior kann doch schon mit Zeit umgehen, siehe Kommentarbereich :)</p><h2 id=fertig data-numberify>Fertig<a class="anchor ms-1" href=#fertig></a></h2><p>Habe jetzt alle Listen, Wiki- und Foreneinträge in TaskWarrior verschoben, <del>(fast)</del> perfekt für mich :)</p></div></div></div><div class=card-footer><div class="post-navs d-flex justify-content-evenly"><div class="post-nav post-prev"><i class="fas fa-fw fa-chevron-down post-prev-icon me-1" data-fa-transform=rotate-90></i>
<a href=/2012/09/pdf-betrachter-zathura/>PDF-Betrachter zathura</a></div><div class="post-nav post-next"><a href=/2012/09/speicherauslastung-der-grafikkarte-unter-linux-auslesen/>Speicherauslastung der Grafikkarte unter Linux auslesen</a>
<i class="fas fa-fw fa-chevron-down post-next-icon ms-1" data-fa-transform=rotate-270></i></div></div></div></article><section class="related-posts row card component"><div class=card-header><h2 class="card-title fs-4 my-2 text-surface">Ähnliche Beiträge</h2></div><div class=card-body><ul class="post-list list-styled"><li><a href=https://natenom.de/2012/02/verzeichnisstruktur-ordentlich-in-textform-darstellen/>Verzeichnisstruktur ordentlich in Textform darstellen</a></li><li><a href=https://natenom.de/2011/02/newsbeuter-newsfeeds-auf-der-konsole-lesen/>Newsbeuter … Newsfeeds auf der Konsole lesen</a></li><li><a href=https://natenom.de/2012/09/pdf-betrachter-zathura/>PDF-Betrachter zathura</a></li><li><a href=https://natenom.de/2012/06/uberschriften-im-dokuwiki-an-den-stil-von-wikipedia-angepasst/>Überschriften im DokuWiki an den Stil von Wikipedia angepasst</a></li><li><a href=https://natenom.de/2012/06/liste-der-pads-bei-etherpad-lite/>Liste der Pads bei Etherpad-lite</a></li><li><a href=https://natenom.de/2012/06/uberschriftennummerierung-in-dokuwiki-monobook/>Überschriftennummerierung in DokuWiki (Monobook)</a></li><li><a href=https://natenom.de/2012/05/dokuwiki-plugin-fur-verwaistenicht-verlinkte-seiten/>DokuWiki Plugin für verwaiste/nicht verlinkte Seiten</a></li><li><a href=https://natenom.de/2012/04/verbesserungen-im-wiki/>Verbesserungen im Wiki</a></li><li><a href=https://natenom.de/2012/04/dokuwiki-plugin-sortablejs-erweitert-bestehende-tabellen-um-sortierung/>DokuWiki Plugin sortablejs erweitert bestehende Tabellen um Sortierung</a></li><li><a href=https://natenom.de/2012/04/link-linux-optimal-partitionieren/>Link: Linux optimal partitionieren</a></li></ul></div></section><div class="card component row post-comments" id=post-comments><div class=card-header><h2 class="card-title my-2 fs-4 text-surface">Kommentare</h2></div><div class=card-body><p>Bisher gibt es hier keine Kommentare.</p><p><details class="mastodon-comments email"><summary class="mastodon-comments email-summary">Kommentar oder Anmerkung für diesen Blogbeitrag</summary><div class="mastodon-comments emailcontent"><p>Öffentlicher Kommentar per E-Mail: <a href='mailto:natenom@posteo.de?subject=Kommentar zum Blogbeitrag: Perfekte%20Aufgabenverwaltung%20%e2%80%93%20TaskWarrior%20f%c3%bcr%20die%20Kommandozeile%20%3a%29&body=Hallo Natenom, %0D%0A%0D%0Azu diesem Blogbeitrag habe ich einen Kommentar:%0D%0A%0D%0AMein Name (optional):%0D%0AMeine Website (optional):%0D%0AIch beziehe mich speziell auf den Kommentar mit der ID:%0D%0A%0D%0AURL zum Blogbeitrag: https%3a%2f%2fnatenom.de%2f2012%2f09%2fperfekte-aufgabenverwaltung-taskwarrior-fur-die-kommandozeile%2f'>Hier klicken</a></p><p>Nicht öffentliche Anmerkung per E-Mail: <a href='mailto:natenom@posteo.de?subject=Persönliche Anmerkung zum Blogbeitrag: Perfekte%20Aufgabenverwaltung%20%e2%80%93%20TaskWarrior%20f%c3%bcr%20die%20Kommandozeile%20%3a%29&body=Hallo Natenom,%0D%0A%0D%0Azu diesem Blogbeitrag habe ich eine persönliche, nicht zu veröffentlichende Anmerkung:%0D%0A%0D%0AURL zum Blogbeitrag: https%3a%2f%2fnatenom.de%2f2012%2f09%2fperfekte-aufgabenverwaltung-taskwarrior-fur-die-kommandozeile%2f'>Hier klicken</a></p></p><p>Sonstige Kontaktaufnahme: <a href=/natenom/>Kontakt</a></p></div></details></p></div></div></div></div><aside class="col-xxl-4 sidebar d-flex"><div class="container d-flex flex-column"><div class="accordion profile"><div class="accordion-item card row text-center component"><div class="accordion-header card-header border-0" id=profile-header><a class="accordion-button d-lg-none mb-2 shadow-none p-0 bg-transparent text-surface collapsed" role=button data-bs-toggle=collapse href=#profile aria-expanded=false aria-controls=profile>Profil</a></div><div class="card-body collapse accordion-collapse accordion-body d-lg-block" id=profile aria-labelledby=profile-header><div class="col-12 d-flex align-items-center justify-content-center"><picture><img class="profile-avatar rounded-circle" alt=Natenom src=https://natenom.de/images/logo-natenom-circle-150x150.png loading=lazy data-viewer-
<span class="badge badge-sm text-secondary bg-white ms-1">450</span>
</a><a href=/categories/fotografie/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Fotografie>Fotografie
<span class="badge badge-sm text-secondary bg-white ms-1">328</span>
</a><a href=/categories/diverses/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Diverses>Diverses
<span class="badge badge-sm text-secondary bg-white ms-1">242</span>
</a><a href=/categories/web/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Web>Web
<span class="badge badge-sm text-secondary bg-white ms-1">200</span>
</a><a href=/categories/linux/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Linux>Linux
<span class="badge badge-sm text-secondary bg-white ms-1">135</span>
</a><a href=/categories/android/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Android>Android
<span class="badge badge-sm text-secondary bg-white ms-1">68</span>
</a><a href=/categories/linkdump/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Linkdump>Linkdump
<span class="badge badge-sm text-secondary bg-white ms-1">42</span>
</a><a href=/categories/mumble/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Mumble>Mumble
<span class="badge badge-sm text-secondary bg-white ms-1">16</span>
</a><a href=/categories/navesima/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=NavesiMa>NavesiMa
<span class="badge badge-sm text-secondary bg-white ms-1">9</span>
</a><a href=/categories/links/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-category me-2 mb-2" title=Links>Links
<span class="badge badge-sm text-secondary bg-white ms-1">2</span></a></div></div></section></div><div class="accordion tags-taxonomies"><section class="row card component"><div class=card-header><h2 class="card-title my-2 fs-4 text-surface d-none d-lg-block"><a href=https://natenom.de/tags>Tags</a></h2><a class="accordion-button d-lg-none mb-1 shadow-none p-0 bg-transparent text-surface collapsed" role=button data-bs-toggle=collapse href=#taxonomy-tags aria-expanded=false aria-controls=taxonomy-tags>Tags</a></div><div class="card-body collapse accordion-collapse accordion-body d-lg-block" id=taxonomy-tags><div class=py-2><a href=/tags/fahrrad/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Fahrrad>Fahrrad
<span class="badge badge-sm text-secondary bg-white ms-1">557</span>
</a><a href=/tags/fotos/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Fotos>Fotos
<span class="badge badge-sm text-secondary bg-white ms-1">410</span>
</a><a href=/tags/mobilit%C3%A4t/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Mobilität>Mobilität
<span class="badge badge-sm text-secondary bg-white ms-1">380</span>
</a><a href=/tags/pforzheim/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Pforzheim>Pforzheim
<span class="badge badge-sm text-secondary bg-white ms-1">263</span>
</a><a href=/tags/open-source/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title="Open Source">Open Source
<span class="badge badge-sm text-secondary bg-white ms-1">237</span>
</a><a href=/tags/natur/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Natur>Natur
<span class="badge badge-sm text-secondary bg-white ms-1">208</span>
</a><a href=/tags/linux/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Linux>Linux
<span class="badge badge-sm text-secondary bg-white ms-1">161</span>
</a><a href=/tags/autos/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Autos>Autos
<span class="badge badge-sm text-secondary bg-white ms-1">131</span>
</a><a href=/tags/enzkreis/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Enzkreis>Enzkreis
<span class="badge badge-sm text-secondary bg-white ms-1">115</span>
</a><a href=/tags/statistiken/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Statistiken>Statistiken
<span class="badge badge-sm text-secondary bg-white ms-1">110</span>
</a><a href=/tags/hardware/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Hardware>Hardware
<span class="badge badge-sm text-secondary bg-white ms-1">107</span>
</a><a href=/tags/web/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Web>Web
<span class="badge badge-sm text-secondary bg-white ms-1">107</span>
</a><a href=/tags/android/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Android>Android
<span class="badge badge-sm text-secondary bg-white ms-1">98</span>
</a><a href=/tags/hugo/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Hugo>Hugo
<span class="badge badge-sm text-secondary bg-white ms-1">89</span>
</a><a href=/tags/m%C3%BCll/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Müll>Müll
<span class="badge badge-sm text-secondary bg-white ms-1">89</span>
</a><a href=/tags/sicherheit/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Sicherheit>Sicherheit
<span class="badge badge-sm text-secondary bg-white ms-1">88</span>
</a><a href=/tags/blog/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Blog>Blog
<span class="badge badge-sm text-secondary bg-white ms-1">87</span>
</a><a href=/tags/m%C3%BCllsammeln/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Müllsammeln>Müllsammeln
<span class="badge badge-sm text-secondary bg-white ms-1">86</span>
</a><a href=/tags/politik/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Politik>Politik
<span class="badge badge-sm text-secondary bg-white ms-1">86</span>
</a><a href=/tags/polizei/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Polizei>Polizei
<span class="badge badge-sm text-secondary bg-white ms-1">76</span>
</a><a href=/tags/strecke/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Strecke>Strecke
<span class="badge badge-sm text-secondary bg-white ms-1">75</span>
</a><a href=/tags/abstand/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Abstand>Abstand
<span class="badge badge-sm text-secondary bg-white ms-1">74</span>
</a><a href=/tags/landschaften/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Landschaften>Landschaften
<span class="badge badge-sm text-secondary bg-white ms-1">74</span>
</a><a href=/tags/w%C3%A4lder/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Wälder>Wälder
<span class="badge badge-sm text-secondary bg-white ms-1">68</span>
</a><a href=/tags/wordpress/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=WordPress>WordPress
<span class="badge badge-sm text-secondary bg-white ms-1">64</span>
</a><a href=/tags/neuhausen/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Neuhausen>Neuhausen
<span class="badge badge-sm text-secondary bg-white ms-1">60</span>
</a><a href=/tags/apps/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Apps>Apps
<span class="badge badge-sm text-secondary bg-white ms-1">59</span>
</a><a href=/tags/videos/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Videos>Videos
<span class="badge badge-sm text-secondary bg-white ms-1">59</span>
</a><a href=/tags/landstra%C3%9Fen/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Landstraßen>Landstraßen
<span class="badge badge-sm text-secondary bg-white ms-1">54</span>
</a><a href=/tags/makrofotos/ class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=Makrofotos>Makrofotos
<span class="badge badge-sm text-secondary bg-white ms-1">54</span>
</a><a href=https://natenom.de/tags class="btn btn-sm btn-secondary post-taxonomy ps-3 post-tag me-2 mb-2" title=ALLE>ALLE
<span class="badge badge-sm text-secondary bg-white ms-1">816</span></a></div></div></section></div><div class="accordion archives"><section class="row card component"><div class=card-header><h2 class="card-title my-2 fs-4 text-surface d-none d-lg-block"><a href=/archiv/>Archiv</a></h2><a class="accordion-button d-lg-none mb-1 shadow-none p-0 bg-transparent collapsed" role=button data-bs-toggle=collapse href=#archives aria-expanded=false aria-controls=archives>Archiv</a></div><div class="card-body collapse accordion-collapse accordion-body d-lg-block" id=archives><a href=/archiv/2024/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2024>2024 <span class="badge badge-sm text-secondary bg-white ms-1">23</span>
</a><a href=/archiv/2023/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2023>2023 <span class="badge badge-sm text-secondary bg-white ms-1">147</span>
</a><a href=/archiv/2022/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2022>2022 <span class="badge badge-sm text-secondary bg-white ms-1">188</span>
</a><a href=/archiv/2021/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2021>2021 <span class="badge badge-sm text-secondary bg-white ms-1">111</span>
</a><a href=/archiv/2020/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2020>2020 <span class="badge badge-sm text-secondary bg-white ms-1">193</span>
</a><a href=/archiv/2019/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2019>2019 <span class="badge badge-sm text-secondary bg-white ms-1">118</span>
</a><a href=/archiv/2018/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2018>2018 <span class="badge badge-sm text-secondary bg-white ms-1">143</span>
</a><a href=/archiv/2017/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2017>2017 <span class="badge badge-sm text-secondary bg-white ms-1">163</span>
</a><a href=/archiv/2016/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2016>2016 <span class="badge badge-sm text-secondary bg-white ms-1">108</span>
</a><a href=/archiv/2015/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2015>2015 <span class="badge badge-sm text-secondary bg-white ms-1">85</span>
</a><a href=/archiv/2014/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2014>2014 <span class="badge badge-sm text-secondary bg-white ms-1">85</span>
</a><a href=/archiv/2013/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2013>2013 <span class="badge badge-sm text-secondary bg-white ms-1">56</span>
</a><a href=/archiv/2012/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2012>2012 <span class="badge badge-sm text-secondary bg-white ms-1">43</span>
</a><a href=/archiv/2011/ class="btn btn-sm btn-secondary post-taxonomy ps-3 me-2 mb-2" title=2011>2011 <span class="badge badge-sm text-secondary bg-white ms-1">36</span></a></div></section></div></div></aside></div></main><footer class="footer mt-auto py-3 text-center container"><div class="row text-center"><div class="col-12 mt-2"><p class=mb-2>Natenoms Blog</p><p class="text-secondary mb-2"><small>Mein Blog über verschiedene Themen, die mich über die Zeit beschäftigen. Derzeit sind dies: Verkehrswende, Mobilität, Fahrrad, Minimalismus, Fotografie, Malen, Zeichnen …</small></p><div class="copyright mb-2 text-secondary"><small></small></div><div class="powered-by mb-2 text-secondary"><small>Build with ❤️ from the <a class=text-primary href=https://gohugo.io target=_blank rel="noopener noreferrer">Hugo</a> and the <a class=text-primary href=https://github.com/razonyang/hugo-theme-bootstrap target=_blank rel="noopener noreferrer">HBS</a> theme.</small></div><nav class="social-links nav justify-content-center mb-2 mt-3"><a class="nav-link social-link p-0 me-1 mb-2" target=_blank href=/index.xml title=RSS rel=me><i class="fas fa-fw fa-2x fa-rss" style=color:#ea6221></i></a></nav></div><div class="col-12 col-lg-8 offset-0 offset-lg-1"></div></div><div class=natenom-footer><a href=/ueber/impressum/>Impressum</a> <a href=/ueber/datenschutz/>Datenschutz</a></div></footer><script data-precache src=/assets/main/bundle.min.b0a436c85b86c431bb1c0fdb2ade0445de95435dc453dc7f4f30acad2153b535.js integrity="sha256-sKQ2yFuGxDG7HA/bKt4ERd6VQ13EU9x/TzCsrSFTtTU=" crossorigin=anonymous async></script><script data-precache src=/assets/icons/bundle.min.691458a56c2eef480bec8d31c967801a416b6445459ae901fe213e7870a0dd83.js integrity="sha256-aRRYpWwu70gL7I0xyWeAGkFrZEVFmukB/iE+eHCg3YM=" crossorigin=anonymous defer></script></body></html>