[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
howtos:general_admin:taskwarrior [2012/09/26 00:49 (UTC)] – moved page from the general howtos namespace mfillpothowtos:general_admin:taskwarrior [2019/12/26 02:41 (UTC)] (current) – [Todo Lists in TaskWarrior] ricardson
Line 1: Line 1:
 +<!-- Reviewed 2013-01-06 mfillpot -->
 <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). -->
 ====== Todo Lists in TaskWarrior ====== ====== Todo Lists in TaskWarrior ======
- +[[http://taskwarrior.org|Taskwarrior]] is a 
-[[http://taskwarrior.org/projects/show/taskwarrior|Taskwarrior]] is a powerful command-line todo list manager which can be installed from [[http://slackbuilds.org/office/task/|SlackBuilds.org]]. Please note that it depends on [[http://slackbuilds.org/development/lua/|Lua]].+powerful command-line todo list manager which can be installed from 
 +[[http://slackbuilds.org/office/task/|SlackBuilds.org]]. Please note 
 +that it depends on [[http://slackbuilds.org/development/lua/|Lua]].
  
 ===== Managing Your Todo List ===== ===== Managing Your Todo List =====
Line 9: Line 12:
  
 1. By invoking the ''Task Shell'' and issuing ''TW'' commands: 1. By invoking the ''Task Shell'' and issuing ''TW'' commands:
- +<code> 
-<code>% task shell+% task shell
 task 2.1.1 shell task 2.1.1 shell
  
Line 17: Line 20:
 Enter 'quit' (or 'bye', 'exit') to end the session. Enter 'quit' (or 'bye', 'exit') to end the session.
  
-task></code>+task> 
 +</code>
  
-2. By typing ''TW'' commands directly from a system shell (eg. Bash) preceded with the ''task'' command. This is the approach we are going to take in this tutorial. In order to limit the amount of typing we could create a shell alias. If you use Bash, please edit (or create) the following file ''~/.bashrc'': +2. By typing ''TW'' commands directly from a system shell (eg. Bash) 
- +preceded with the ''task'' command. This is the approach we are going 
-<code>alias t=task</code>+to take in this tutorial. In order to limit the amount of typing we could 
 +create a shell alias. If you use Bash, please edit (or create) the 
 +following file ''${HOME}/.bashrc'': 
 +<file sh /${HOME}/.bashrc> 
 +alias t=task 
 +</file>
  
 In this HOWTO we are going to use the full ''task'' command. In this HOWTO we are going to use the full ''task'' command.
  
 === Adding Tasks === === Adding Tasks ===
- +<code> 
-<code>% task add Email Bob    +% task add Email Bob    
 Created task 1. Created task 1.
 % task add priority:H Book a ticket % task add priority:H Book a ticket
-Created task 2.</code>+Created task 2. 
 +</code>
  
 We have just created 2 tasks with the second one being of high priority. We have just created 2 tasks with the second one being of high priority.
  
 === Adding Due Dates === === Adding Due Dates ===
- +<code> 
-<code>% task 1 modify due:09/09/2012+% task 1 modify due:09/09/2012
 % task 4 modify due:today % task 4 modify due:today
-% task 5 modify due:3days</code>+% task 5 modify due:3days 
 +</code>
  
 === Displaying Tasks === === Displaying Tasks ===
- +<code> 
-<code>% task+% task
  
 ID Project Pri Due        A Age Urgency Description   ID Project Pri Due        A Age Urgency Description  
Line 48: Line 59:
              09/09/2012               Email Bob                  09/09/2012               Email Bob    
  
-2 tasks</code> +2 tasks 
- +</code>
-Please note that because of high priority, task 2 is at the top of the list. There are a few ways you can list your tasks:+
  
 +Please note that because of high priority, task 2 is at the top of the
 +list. There are a few ways you can list your tasks:
  * task  * task
  * task minimal  * task minimal
Line 61: Line 73:
  
 === Starting a Task === === Starting a Task ===
- +<code> 
-<code>% task 1 start</code>+% task 1 start 
 +</code>
  
 === Marking Tasks as Done === === Marking Tasks as Done ===
- +<code> 
-<code>% task 2 done+% task 2 done
 Completed task 2 'Book a ticket'. Completed task 2 'Book a ticket'.
 Completed 1 task. Completed 1 task.
Line 74: Line 87:
              Email Bob              Email Bob
  
-1 task</code>+1 task 
 +</code>
  
 === Deleting Tasks === === Deleting Tasks ===
- +<code> 
-<code>% task 1 delete</code>+% task 1 delete 
 +</code>
  
 Alternatively, you can ''undo'' the task you've just created: Alternatively, you can ''undo'' the task you've just created:
  
-<code>% task undo</code>+<code> 
 +% task undo 
 +</code>
  
 === Duplicating Tasks === === Duplicating Tasks ===
- 
 We have got the following task: We have got the following task:
  
-<code>ID Project Pri Due A Age Urgency Description      +<code> 
-                  3s       6 Phone Lennart about the code</code>+ID Project Pri Due A Age Urgency Description      
 +                  3s       6 Phone Lennart about the code 
 +</code>
  
 You can duplicate the task with some modifications You can duplicate the task with some modifications
  
-<code>% task 4 duplicate /Lennart/Linus/</code>+<code> 
 +% task 4 duplicate /Lennart/Linus/ 
 +</code>
  
-<code>ID Project Pri Due A Age Urgency Description     +<code> 
 +ID Project Pri Due A Age Urgency Description     
                   1m       6 Phone Lennart about the code                   1m       6 Phone Lennart about the code
-                  7s       6 Phone Linus about the code</code>+                  7s       6 Phone Linus about the code 
 +</code>
  
 === Modifying Tasks === === Modifying Tasks ===
- 
 You have just realised that one of your tasks contains a spelling mistake: You have just realised that one of your tasks contains a spelling mistake:
-<code>ID Project Pri Due A Age Urgency Description                  +<code> 
 +ID Project Pri Due A Age Urgency Description                  
 ... ...
-                   16s       0 Install Slakware on the lappy</code>+                   16s       0 Install Slakware on the lappy 
 +</code>
  
 We can modify an existing task: We can modify an existing task:
 +<code>
 +% task 6 modify /Slakware/Slackware/g
 +</code>
  
-<code>% task 6 modify /Slakware/Slackware/g</code> +<code> 
- +ID Project Pri Due A Age Urgency Description                               
-<code>ID Project Pri Due A Age Urgency Description                               +
                  14m       6 Phone Lennart about the code                                14m       6 Phone Lennart about the code              
                  14m       6 Phone Linus about the code                                  14m       6 Phone Linus about the code                
Line 123: Line 148:
 11                    2m       0 Change my email address on SlackBuilds.org 11                    2m       0 Change my email address on SlackBuilds.org
 12                   28s       0 Tax Return                                 12                   28s       0 Tax Return                                
-13                    1s       0 Upgrade SlackBuilds</code>+13                    1s       0 Upgrade SlackBuilds 
 +</code>
  
- +<code> 
-<code>% task 1-6 modify project:misc   +% task 1-6 modify project:misc   
 % task 7,9,11,13 modify project:SB % task 7,9,11,13 modify project:SB
-% task 8,10 modify project:home</code>+% task 8,10 modify project:home 
 +</code>
  
-<code>ID Project Pri Due A Age Urgency Description                               +<code> 
 +ID Project Pri Due A Age Urgency Description                               
 13 SB      H         13m       7 Upgrade SlackBuilds                        13 SB      H         13m       7 Upgrade SlackBuilds                       
 10 home    H         16m       7 Feed the dog                               10 home    H         16m       7 Feed the dog                              
Line 145: Line 173:
  3 misc    L         44m     2.8 Upgrade Angband                             3 misc    L         44m     2.8 Upgrade Angband                           
  
-13 tasks</code>+13 tasks 
 +</code>
  
 You can display a breakdown of your projects: You can display a breakdown of your projects:
- +<code> 
-<code>% task projects+% task projects
  
 Project Tasks Pri:None Pri:L Pri:M Pri:H Project Tasks Pri:None Pri:L Pri:M Pri:H
Line 157: Line 186:
 misc        6        0             2 misc        6        0             2
  
-3 projects (13 tasks)</code>+3 projects (13 tasks) 
 +</code>
  
 === Adding / Removing Tags === === Adding / Removing Tags ===
- 
 You can add tags by: You can add tags by:
- +<code> 
-<code>% task 3,5,7-10 modify +work</code>+% task 3,5,7-10 modify +work 
 +</code>
  
 You can remove tags by: You can remove tags by:
 +<code>
 +% task 7 modify -work
 +</code>
  
-<code>% task 7 modify -work</code+<note
- +Please note that tags are only displayed when you list your tasks with the 
-<note>Please note that tags are only displayed when you list your tasks with the ''long'' option.</note>+''long'' option. 
 +</note>
  
 === Selective Display of Tasks === === Selective Display of Tasks ===
- 
 Display your tasks by priority: Display your tasks by priority:
- +<code> 
-<code>% task priority:H+% task priority:H
 [task next priority:H] [task next priority:H]
  
Line 185: Line 218:
 12                 16m       6 Tax Return                   12                 16m       6 Tax Return                  
  
-5 tasks</code>+5 tasks 
 +</code>
  
 Display your tasks by project: Display your tasks by project:
- +<code> 
-<code>% task project:SB+% task project:SB
 [task next project:SB] [task next project:SB]
  
Line 198: Line 232:
  7 SB      L         22m     2.8 Create a SlackBuild for my new program      7 SB      L         22m     2.8 Create a SlackBuild for my new program    
  
-4 tasks</code>+4 tasks 
 +</code>
  
 Display your tasks by tag: Display your tasks by tag:
- +<code> 
-<code>% task +work</code>+% task +work 
 +</code>
  
 === Adding annotations === === Adding annotations ===
- 
 You can annotate a task: You can annotate a task:
 +<code>
 +% task 9 annotate i3 builds fine
 +</code>
  
-<code>% task 9 annotate i3 builds fine</code> +<code> 
- +ID Project Pri Due A Age Urgency Description                               
-<code>ID Project Pri Due A Age Urgency Description                               +
 ... ...
  9 SB      M          1h     5.8 Test my SlackBuilds on Slackware 14         9 SB      M          1h     5.8 Test my SlackBuilds on Slackware 14       
                                    9/1/2012 yajl works fine                                                    9/1/2012 yajl works fine                
                                    9/3/2012 i3 builds fine                                                     9/3/2012 i3 builds fine                 
-...</code>+... 
 +</code>
  
 === Displaying Statistics === === Displaying Statistics ===
- +<code> 
-<code>% task stats</code>+% task stats 
 +</code>
  
 ===== Colours in TaskWarrior ===== ===== Colours in TaskWarrior =====
- +You can enable one of the colour themes in ''~/.taskrc'' by uncommenting 
-You can enable one of the colour themes in ~/.taskrc by uncommenting one of the lines: +one of the lines: 
- +<file - /${HOME}/.taskrc> 
-<code># Color theme (uncomment one to use)+# Color theme (uncomment one to use)
 #include /usr/share/doc/task/rc/light-16.theme #include /usr/share/doc/task/rc/light-16.theme
 #include /usr/share/doc/task/rc/light-256.theme #include /usr/share/doc/task/rc/light-256.theme
Line 235: Line 274:
 #include /usr/share/doc/task/rc/dark-violets-256.theme #include /usr/share/doc/task/rc/dark-violets-256.theme
 #include /usr/share/doc/task/rc/dark-yellow-green.theme #include /usr/share/doc/task/rc/dark-yellow-green.theme
-#include /usr/share/doc/task/rc/dark-gray-256.theme</code>+#include /usr/share/doc/task/rc/dark-gray-256.theme 
 +</file>
  
 The ''dark-green-256'' theme looks as follows: The ''dark-green-256'' theme looks as follows:
- +{{ :howtos:task.png?nolink&500 | TaskWarrior}}
-{{ :howtos:task.png?nolink | TaskWarrior}}+
  
 You can display current colours (variables + colour values) with: You can display current colours (variables + colour values) with:
 +<code>
 +% task color legend
 +</code>
  
-<code>% task color legend</code> +Colour themes can be easily customised by editing theme files. All 
- +the theme files are located in ''/usr/share/doc/task/rc/''.
-Colour themes can be easily customised by editing theme files. All the theme files are located in ''/usr/share/doc/task/rc/''.+
  
 ===== Displaying a Calendar ===== ===== Displaying a Calendar =====
 +All the tasks that have a due date assigned will be marked on the
 +calendar. Additionally you can enable the display of holidays by
 +specifying a country in ''~/.taskrc'':
 +<file - /${HOME}/.taskrc>
 +include /usr/local/share/doc/task/rc/holidays-GB.rc
 +</file>
  
-All the tasks that have a due date assigned will be marked on the calendar. Additionally you can enable the display of holidays by specifying a country in ''~/.taskrc'': +The ''/usr/share/doc/task/rc/'' directory contains holidays for other 
- +countries as well.
-<code>include /usr/local/share/doc/task/rc/holidays-GB.rc</code> +
- +
-The ''/usr/share/doc/task/rc/'' directory contains holidays for other countries as well.+
  
 ===== TaskWarrior Integration ===== ===== TaskWarrior Integration =====
- +TaskWarrior is a very flexible and powerful tool. What makes it even 
-TaskWarrior is a very flexible and powerful tool. What makes it even more useful is the possibility of integrating it into your working environment. +more useful is the possibility of integrating it into your working 
 +environment.
  
 ==== TaskWarrior and i3 ==== ==== TaskWarrior and i3 ====
- +1. You issue TaskWarrior commands from ''dmenu''. Simply press 
-1. You issue TaskWarrior commands from ''dmenu''. Simply press <key>Alt+D</key> and start typing a ''TW'' command, eg: +<key>A-d</key> and start typing a ''TW'' command, eg: 
- +<code> 
-<code>task add priority:H due:2days Mom's birthday</code>+task add priority:H due:2days Mom's birthday 
 +</code>
  
 2. Assign basic keybindings. 2. Assign basic keybindings.
- +<file bash display_tasks.sh> 
-<file sh display_tasks.sh>#!/bin/sh+#!/bin/sh
 task ls task ls
 read -p "Press Enter to close the window."</file> read -p "Press Enter to close the window."</file>
  
 ''~/.i3/config'': ''~/.i3/config'':
-<code>+<code - ${HOME}/.i3/config>
 ... ...
 for_window [title="taskwin"] floating enable for_window [title="taskwin"] floating enable
Line 280: Line 326:
 </code> </code>
  
-This will enable the floating mode for any window entitled ''taskwin''. The <key>Win+T</key> combination will display the list of your tasks in a floating mode in the middle of the screen. The <key>Win+Shift+D</key> keybinding will mark your top task as completed (Please see [[howtos:window_managers:i3wm?&#i3_configuration|configuring i3 modifier keys]]). +This will enable the floating mode for any window entitled ''taskwin''. 
- +The <key>Win-t</key> combination will display the list of 
-3. [[howtos:window_managers:i3wm?&#custom_i3status_display|Displaying the top task]] in ''i3status''+your tasks in a floating mode in the middle of the screen. The 
 +<key>Win-S-d</key> 
 +keybinding will mark your top task as completed (Please see 
 +[[howtos:window_managers:i3wm?&#i3_configuration|configuring i3 modifier 
 +keys]]).
  
 +3. [[howtos:window_managers:i3wm?&#custom_i3status_display|Displaying
 +the top task]] in ''i3status''.
  
 ====== Sources ====== ====== Sources ======
- 
   * Originally written by [[wiki:user:sycamorex |Marcin Herda]]   * Originally written by [[wiki:user:sycamorex |Marcin Herda]]
 <!-- * Contrbutions by [[wiki:user:yyy | User Y]] --> <!-- * Contrbutions by [[wiki:user:yyy | User Y]] -->
Line 294: Line 344:
 <!-- You must also remove the tag-word "template" below. Otherwise your page will not show up in the Table of Contents --> <!-- You must also remove the tag-word "template" below. Otherwise your page will not show up in the Table of Contents -->
 {{tag>howtos software taskwarrior todo gtd author_sycamorex}} {{tag>howtos software taskwarrior todo gtd author_sycamorex}}
 +
 howtos:general_admin:taskwarrior ()