mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-06-26 10:54:26 +02:00
1227 lines
40 KiB
HTML
1227 lines
40 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<title>Task 1.2.0</title>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
<style type="text/css">
|
|
body {
|
|
text-align: center;
|
|
margin: 0; padding: 1em;
|
|
}
|
|
|
|
#container {
|
|
width: 740px;
|
|
text-align: left;
|
|
margin: 0 auto; padding: 0;
|
|
}
|
|
|
|
#header {
|
|
height: 60px;
|
|
margin: 0 0 15px; padding: 0;
|
|
}
|
|
|
|
#page {}
|
|
|
|
#content {
|
|
width: 500px;
|
|
}
|
|
|
|
#header a:link,
|
|
#header a:visited {
|
|
color:#000;
|
|
text-decoration: none;
|
|
}
|
|
|
|
#header h1 {
|
|
font: bold 400% georgia, serif;
|
|
letter-spacing: -1px;
|
|
margin: 0;
|
|
float: left;
|
|
}
|
|
|
|
#header h2 {
|
|
font: normal 12px verdana, arial, sans-serif;
|
|
margin: 2.5em 0 0 0.8em;
|
|
float: left;
|
|
}
|
|
|
|
#content {}
|
|
|
|
#content h1,
|
|
#content h2,
|
|
#content h3,
|
|
#content h4,
|
|
#content h5 {
|
|
font-family: "lucidamac bold", "lucida grande", arial, sans-serif;
|
|
letter-spacing: -1px;
|
|
}
|
|
|
|
#content h1 {
|
|
font-size: 24px;
|
|
margin: 0 0 0.3em;
|
|
}
|
|
|
|
#content h2 {
|
|
font-size: 22px;
|
|
margin: 0 0 0.3em;
|
|
}
|
|
|
|
#content h3 {
|
|
font-size: 20px;
|
|
margin: 1.2em 0 0.3em;
|
|
}
|
|
|
|
#content h4 {
|
|
font-size: 18px;
|
|
margin: 1.2em 0 0.3em;
|
|
border-bottom: 1px dotted #bbb;
|
|
}
|
|
|
|
#content h5 {
|
|
font-size: 18px;
|
|
background: #ffd;
|
|
margin: 1.2em 0 0.3em;
|
|
border-bottom: 1px dotted #aaa;
|
|
}
|
|
|
|
#content p {
|
|
line-height: 15px;
|
|
margin: 0 0 1.2em;
|
|
}
|
|
|
|
#content ul,
|
|
#content ol {
|
|
margin: 1em;
|
|
padding:0;
|
|
}
|
|
|
|
#content code {
|
|
font: normal 12px "bitstream vera sans mono", monaco "lucida console", "courier new", courier, serif;
|
|
}
|
|
|
|
#content pre {
|
|
color: #63FF00;
|
|
background: #000;
|
|
overflow: auto;
|
|
font: normal 12px "bitstream vera sans mono", monaco "lucida console", "courier new", courier, serif;
|
|
margin: 0.9em 0; padding: 8px;
|
|
}
|
|
|
|
dt {
|
|
font: bold 14px "lucida grande", verdana, arial, helvetica, sans-serif;
|
|
}
|
|
|
|
dd {
|
|
}
|
|
|
|
body {
|
|
font: normal 12px "lucida grande", verdana, arial, helvetica, sans-serif;
|
|
}
|
|
|
|
.table_h {
|
|
background-color: #e0e0e0;
|
|
}
|
|
|
|
.table_d {
|
|
background-color: #f7f7f7;
|
|
}
|
|
input,
|
|
textarea { font: normal 12px "bitstream vera sans", verdana, sans-serif; }
|
|
|
|
abbr { border: none; }
|
|
cite { font-style: normal; }
|
|
a img { border: none; padding: 0; margin: 0; }
|
|
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div id="toolbar">
|
|
<a href="#setup">Setup</a>
|
|
<a href="#simple">Simple</a>
|
|
<a href="#advanced">Advanced</a>
|
|
<a href="#shell">Shell</a>
|
|
<a href="#config">Configuration</a>
|
|
<a href="#color">Colors</a>
|
|
<a href="#usage">Usage</a>
|
|
</div>
|
|
|
|
<div id="container">
|
|
|
|
<table>
|
|
<tr>
|
|
<td>
|
|
|
|
<div id="content">
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<h1 class="title">Task Home Page</h1>
|
|
<p>
|
|
Here you will find information on how to acquire, build, configure
|
|
and use the task program.
|
|
</p>
|
|
|
|
<br />
|
|
<h2 class="title">Get the Source Code</h2>
|
|
<div class="content">
|
|
<p>
|
|
Download the latest task source code
|
|
<a href="http://www.beckingham.net/task-1.2.0.tar.gz">task-1.2.0.tar.gz</a>
|
|
(6/13/2008).
|
|
</p>
|
|
|
|
<p>
|
|
<h4>New in version 1.2.0</h4>
|
|
source: <a href="http://www.beckingham.net/task-1.2.0.tar.gz">task-1.2.0.tar.gz</a>
|
|
</p>
|
|
|
|
<ul>
|
|
<li>Subprojects supported - please see documentation below, or TUTORIAL
|
|
file
|
|
<li>"dateformat" configuration variable now properly used to parse as
|
|
well as render dates
|
|
<li>"task list x" now performs a caseless comparison between "x" and
|
|
the task description
|
|
<li>"showage" configuration variable determines whether the "Age" column
|
|
should appear on the "task list" and "task next" reports
|
|
<li>Improvements to the TUTORIAL file and this page
|
|
</ul>
|
|
|
|
<p>
|
|
<h4>New in version 1.1.0</h4>
|
|
source: <a href="http://www.beckingham.net/task-1.1.0.tar.gz">task-1.1.0.tar.gz</a>
|
|
<br />
|
|
Debian package: <a href="http://www.beckingham.net/task_1.1.0-1_i386.deb">task_1.1.0-1_i386.deb</a>
|
|
(Thanks to Richard Querin)
|
|
</p>
|
|
|
|
<ul>
|
|
<li>"blanklines" configuration variable to stop displaying unnecessary
|
|
white space and thus work better on small-screen devices
|
|
<li>"dateformat" configuration now determines how dates are formatted
|
|
<li>Better formatting of "task tags" output
|
|
<li>This home page set up, with TUTORIAL
|
|
<li>Added tags to the "task long" report
|
|
</ul>
|
|
|
|
</p>
|
|
|
|
<p>
|
|
Task has been built and tested in the following environments:
|
|
</p>
|
|
|
|
<ul>
|
|
<li>OS X 10.4 Tiger
|
|
<li>OS X 10.5 Leopard
|
|
<li>Fedora Core 8
|
|
<li>Fedora Core 9
|
|
<li>Ubuntu 8 Hardy Heron
|
|
<li>Solaris 10
|
|
<li>Cygwin 1.5.25-14
|
|
</ul>
|
|
|
|
<p>
|
|
If you have difficulties building task, have found a bug, have a
|
|
suggestion for improvement, or a feature request, please send mail to
|
|
<a href="mailto:task@beckingham.net">task@beckingham.net</a>.
|
|
</p>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title">Task Program Tutorial</h2>
|
|
<div class="content">
|
|
<p>
|
|
This guide shows how to quickly set up the task program, and become
|
|
proficient with it.
|
|
</p>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="setup">Quick Setup</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Build the task program according to the directions in the INSTALL
|
|
file. This transcript illustrates a typical installation:
|
|
</p>
|
|
|
|
<pre><code>% ls
|
|
task-1.2.0.tar.gz
|
|
% gunzip task-1.2.0.tar.gz
|
|
% tar xf task-1.2.0.tar
|
|
% cd task-1.2.0
|
|
% ./configure
|
|
...
|
|
% make
|
|
...
|
|
% make install # (may require sudo, depending on --prefix)</code></pre>
|
|
|
|
<p>
|
|
(For those of you using <a href="http://www.cygwin.com">Cygwin</a>,
|
|
you need to make sure you have the "g++" and "make" packages
|
|
available, which are found in the "devel" category.)
|
|
</p>
|
|
|
|
<p>
|
|
You need to make sure that the installed task program is in your
|
|
PATH environment variable.
|
|
</p>
|
|
|
|
<p>
|
|
Task reads a configuration file - called .taskrc in your home
|
|
directory - and stores pending and completed tasks in in a directory
|
|
specified in the configuration file.
|
|
</p>
|
|
|
|
<p>
|
|
The simplest way to get a configuration file and task directory is
|
|
to run task. On startup, task will check to see if it can find the
|
|
configuration file and task directory, and if not found, will ask
|
|
you whether it may create both.
|
|
</p>
|
|
|
|
<pre><code>% task version
|
|
|
|
A configuration file could not be found in /Users/paul/.taskrc
|
|
|
|
Would you like a sample .taskrc created, so task can proceed? (y/n) y
|
|
Done.
|
|
|
|
[then task will show version information]</code></pre>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="simple">Simple Usage</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Let us begin by adding some tasks:
|
|
</p>
|
|
|
|
<pre><code>% task add Book plane ticket
|
|
% task add Rent a tux
|
|
% task add Reserve a rental car
|
|
% task add Reserve a hotel room</code></pre>
|
|
|
|
<p>
|
|
That's it. You'll notice immediately that task has a very
|
|
minimalist interface. Let us take a look at those tasks:
|
|
</p>
|
|
|
|
<pre><code>% task ls
|
|
|
|
ID Project Pri Description
|
|
1 Book plane ticket
|
|
2 Rent a tux
|
|
3 Reserve a rental car
|
|
4 Send John a birthday card</code></pre>
|
|
|
|
<p>
|
|
The 'ls' command provides the most minimal list of tasks. Each
|
|
task has been given an id number, and you can see that there are no
|
|
projects or priorities assigned. Wait a minute - I own a tux, I
|
|
don't need to rent one. Let us delete task 2:
|
|
</p>
|
|
|
|
<pre><code>% task 2 delete
|
|
Permanently delete task? (y/n) y</code></pre>
|
|
|
|
<p>
|
|
Task wants you to confirm deletions. To remove the confirmation,
|
|
edit your .taskrc file and change the line:
|
|
</p>
|
|
|
|
<pre><code>confirmation=yes</code></pre>
|
|
|
|
<p>
|
|
to have a value of "no".
|
|
</p>
|
|
|
|
<p>
|
|
While the use of projects and priorities are not essential to
|
|
benefitting from task, they can be very useful when the list of
|
|
tasks grows large. Let's assign a project to these tasks:
|
|
</p>
|
|
|
|
<pre><code>% task 1 project:Wedding
|
|
% task 3 project:Wedding
|
|
% task 4 project:Family
|
|
% task ls
|
|
|
|
ID Project Pri Description
|
|
3 Family Send John a birthday card
|
|
2 Wedding Reserve a rental car
|
|
1 Wedding Book plane ticket</code></pre>
|
|
|
|
<p>
|
|
Notice that the id numbers have changed. When tasks get deleted,
|
|
or have their attributes changed (project, for example), the ids are
|
|
prone to change. But the id numbers will remain valid until the
|
|
next 'ls' command is run. You should only use the ids from the most
|
|
recent 'ls' command. The ids change, because task is always trying
|
|
to use small numbers so that it is easy for you to enter them
|
|
correctly. Now that projects are assigned, we can look at just the
|
|
Wedding project tasks:
|
|
</p>
|
|
|
|
<p>
|
|
Subprojects are supported. If you have a project "Wedding", you can
|
|
specify that a task is a subproject "Transport" of "Wedding" by
|
|
assigning the project "Wedding.Transport". Let's do this:
|
|
</p>
|
|
|
|
<pre><code>% task 2 project:Wedding.Transport
|
|
% task ls
|
|
|
|
ID Project Pri Description
|
|
3 Family Send John a birthday card
|
|
2 Wedding.Transport Reserve a rental car
|
|
1 Wedding Book plane ticket</code></pre>
|
|
|
|
<p>
|
|
Task matches the leftmost part of the project when searching, so
|
|
projects may be abbreviated:
|
|
</p>
|
|
|
|
<pre><code>% task ls project:Wedding.Tra
|
|
|
|
ID Project Pri Description
|
|
2 Wedding.Transport Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
This way of matching projects can be used to see all tasks under
|
|
the "Wedding" project and all subprojects:
|
|
</p>
|
|
|
|
<pre><code>% task ls project:Wedding
|
|
|
|
ID Project Pri Description
|
|
2 Wedding.Transport Reserve a rental car
|
|
1 Wedding Book plane ticket</code></pre>
|
|
|
|
<p>
|
|
Let's reassign 2 back to the "Wedding" project:
|
|
</p>
|
|
|
|
<pre><code>% task 2 project:Wedding</code></pre>
|
|
|
|
<p>
|
|
Now that projects are assigned, we can look at just the
|
|
Wedding project tasks:
|
|
</p>
|
|
|
|
<pre><code>% task ls project:Wedding
|
|
|
|
ID Project Pri Description
|
|
1 Wedding Book plane ticket
|
|
2 Wedding Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
Any command arguments after the 'ls' are used for filtering the
|
|
output. We could also have requested:
|
|
</p>
|
|
|
|
<pre><code>% task ls ticket plane
|
|
|
|
ID Project Pri Description
|
|
1 Wedding Book plane ticket</code></pre>
|
|
|
|
<p>
|
|
Now let's prioritize. Priorities can be H, M or L (High, Medium,
|
|
Low).
|
|
</p>
|
|
|
|
<pre><code>% task ls
|
|
|
|
ID Project Pri Description
|
|
3 Family Send John a birthday card
|
|
2 Wedding Reserve a rental car
|
|
1 Wedding Book plane ticket
|
|
|
|
% task 1 priority:H
|
|
% task 2 prior:M
|
|
% task 3 pr:H
|
|
Ambiguous attribute 'pr' - could be either of project, priority
|
|
% task 3 pri:H
|
|
% task ls
|
|
|
|
ID Project Pri Description
|
|
3 Family H Send John a birthday card
|
|
1 Wedding H Book plane ticket
|
|
2 Wedding M Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
Notice that task supports the abbreviation of words such as
|
|
priority, project. Priority can be abbreviated to pri, but not pr,
|
|
because it is ambiguous. Now that tasks have been prioritized, you
|
|
can see that the tasks are being sorted by priority, with the
|
|
highest priority tasks at the top.
|
|
</p>
|
|
|
|
<p>
|
|
These attributes can all be provided when the task is added, instead
|
|
of applying them afterwards, as shown. The following command shows
|
|
how to set all the attributes at once:
|
|
</p>
|
|
|
|
<pre><code>% task add project:Wedding priority:H Book plane ticket<code></pre>
|
|
|
|
<p>
|
|
The 'ls' command provides the least information for each task. The
|
|
'list' command provides more:
|
|
</p>
|
|
|
|
<pre><code>% task list
|
|
|
|
ID Project Pri Due Active Age Description
|
|
3 Family H 4 mins Send John a birthday card
|
|
1 Wedding H 5 mins Book plane ticket
|
|
2 Wedding M 5 mins Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
Notice that a task can have a due date, and can be active. The
|
|
task lists are sorted by due date, then priority. Let's add due
|
|
dates:
|
|
</p>
|
|
|
|
<pre><code>% task 3 due:6/25/2008
|
|
% task 1 due:7/31/2008
|
|
% task list
|
|
|
|
ID Project Pri Due Active Age Description
|
|
3 Family H 6/25/2008 6 mins Send John a birthday card
|
|
1 Wedding H 7/31/2008 7 mins Book plane ticket
|
|
2 Wedding M 7 mins Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
If today's date is 6/23/2008, then task 3 is due in 2 days. It will
|
|
be colored yellow if your terminal supports color. To change this
|
|
color, edit your .taskrc file, and change the line to one of these
|
|
alternatives:
|
|
</p>
|
|
|
|
<pre><code>color.due=red
|
|
color.due=on_blue
|
|
color.due=red on_blue
|
|
color.due=bold_red on_blue</code></pre>
|
|
|
|
<p>
|
|
Where color is one of the following:
|
|
</p>
|
|
|
|
<pre><code>black
|
|
blue
|
|
red
|
|
green
|
|
cyan
|
|
magenta
|
|
yellow
|
|
white</code></pre>
|
|
|
|
<p>
|
|
All colors are specified in this way. Take a look in .taskrc for
|
|
all the other color rules that you control.
|
|
</p>
|
|
|
|
<p>
|
|
Tagging tasks is a good way to group them, aside from specifying a
|
|
project. To add a tag to a task:
|
|
</p>
|
|
|
|
<pre><code>% task <id> +tag<code></pre>
|
|
|
|
<p>
|
|
The plus sign indicates that this is a tag. Any number of tags may
|
|
be applied to a task, and then used for searching. Tags are just
|
|
single words that are labels.
|
|
</p>
|
|
|
|
<pre><code>% task list
|
|
|
|
ID Project Pri Due Active Age Description
|
|
3 Family H 6/25/2008 8 mins Send John a birthday card
|
|
1 Wedding H 7/31/2008 9 mins Book plane ticket
|
|
2 Wedding M 9 mins Reserve a rental car
|
|
|
|
% task 1 +phone
|
|
% task 2 +phone
|
|
% task 3 +shopping
|
|
% task 3 +john
|
|
|
|
% task list +phone
|
|
|
|
ID Project Pri Due Active Age Description
|
|
1 Wedding H 7/31/2008 9 mins Book plane ticket
|
|
2 Wedding M 9 mins Reserve a rental car</code></pre>
|
|
|
|
<p>
|
|
To remove a tag from a task, use the minus sign:
|
|
</p>
|
|
|
|
<pre><code>% task 3 -john</code></pre>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="advanced">Advanced Usage</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Here are the other commands, in some detail.
|
|
</p>
|
|
|
|
<strong>% task</strong>
|
|
<p>
|
|
With no arguments, this command will generate a help message that
|
|
lists all these commands.
|
|
</p>
|
|
|
|
<strong>% task projects</strong>
|
|
<p>
|
|
This report generates a list of all the different projects that you
|
|
are using along with a count of the pending tasks for each project.
|
|
For example:
|
|
</p>
|
|
|
|
<pre><code>% task projects
|
|
|
|
Project Tasks
|
|
Errands 1
|
|
Birthdays 3
|
|
Car 2</code></pre>
|
|
|
|
|
|
<strong>% task summary</strong>
|
|
<p>
|
|
This report lists all the projects and a summary of their task
|
|
status.
|
|
</p>
|
|
|
|
<pre><code>% task summary
|
|
|
|
Project Remaining Avg age Complete 0% 100%
|
|
Errands 1 3 days 50% XXXXXXXXXXXXXXXX
|
|
Birthdays 3 7 mths 0%
|
|
Car 2 2 wks 25% XXXXXXXXX</code></pre>
|
|
|
|
<p>
|
|
This shows the project, the remaining tasks, the average age of each
|
|
task, the percentage completed (remaining vs total) and a bar
|
|
indicating that percentage.
|
|
</p>
|
|
|
|
<strong>% task delete <id></strong>
|
|
<p>
|
|
There are two ways of getting rid of tasks - mark them as done, or
|
|
delete them.
|
|
</p>
|
|
|
|
<strong>% task done <id></strong>
|
|
<p>
|
|
This is how a task is marked as done.
|
|
</p>
|
|
|
|
<strong>% task list ...</strong>
|
|
<p>
|
|
The list report will show the active status, and age of the task in
|
|
addition to the columns that "task ls" shows. It is just a more
|
|
detailed list.
|
|
</p>
|
|
|
|
<strong>% task long ...</strong>
|
|
<p>
|
|
The long report will show the entry date and start date of a task,
|
|
in addition to the columns that the "task list" shows.
|
|
</p>
|
|
|
|
<strong>% task start <id></strong>
|
|
<p>
|
|
This marks a task as started (and therefore active), which is shown
|
|
in the "list" report:
|
|
</p>
|
|
|
|
<pre><code>% task list
|
|
|
|
ID Project Pri Due Active Age Description
|
|
12 Errand L Remember to deposit check
|
|
...
|
|
|
|
% task start 12
|
|
% task list
|
|
|
|
ID Project Pri Due Active Age Description
|
|
12 Errand L * 3 days Remember to deposit check
|
|
...</code></pre>
|
|
|
|
<strong>% task active</strong>
|
|
<p>
|
|
Shows all active tasks, that is, the tasks for which the
|
|
"task start ..." command was run, as shown above.
|
|
</p>
|
|
|
|
<strong>% task overdue</strong>
|
|
<p>
|
|
Simply lists all the task that have a due date that is past, in
|
|
"list" format.
|
|
</p>
|
|
|
|
<strong>% task history</strong>
|
|
<p>
|
|
This report shows you an overview of how many tasks were added,
|
|
completed and deleted, by month. It looks like this:
|
|
</p>
|
|
|
|
<pre><code>% task history
|
|
|
|
Year Month Added Completed Deleted Net
|
|
2008 March 21 16 0 5
|
|
April 13 11 1 1
|
|
May 8 14 3 -9</code></pre>
|
|
|
|
<p>
|
|
This shows that for the three months that task has been used, March
|
|
and April saw the total number of tasks increase, but in May the
|
|
number decreased as more task were completed than added.
|
|
</p>
|
|
|
|
<strong>% task calendar</strong>
|
|
<p>
|
|
This report shows a calendar of the current month, with any task
|
|
due or overdue dates marked on it. Color is used to mark these
|
|
dates.
|
|
</p>
|
|
|
|
<pre><code>% task calendar
|
|
|
|
May 2008
|
|
|
|
Su Mo Tu We Th Fr Sa
|
|
1 2 3
|
|
4 5 6 7 8 9 10
|
|
11 12 13 14 15 16 17
|
|
18 19 20 21 22 23 24
|
|
25 26 27 28 29 30 31</code></pre>
|
|
|
|
<strong>% task next</strong>
|
|
<p>
|
|
This report shows you the tasks you should probable work on next.
|
|
Task will scan all the tasks and will pick two task from each
|
|
project to report. Those two tasks will be chosen in order of
|
|
overdue, due soon, High, Medium or Low priority. Essentially task
|
|
chooses the two most important task for each project and displays
|
|
them ordered in the usual way.
|
|
</p>
|
|
|
|
<p>
|
|
If you wish to show a different number of tasks per project, modify
|
|
the entry in .taskrc:
|
|
</p>
|
|
|
|
<pre><code>next=2</code></pre>
|
|
|
|
<p>
|
|
To be your preferred number.
|
|
</p>
|
|
|
|
<strong>% task <id> ...</strong>
|
|
<p>
|
|
When a task id is specified, everything applies to just that task.
|
|
Suppose we needed to correct a task:
|
|
</p>
|
|
|
|
<pre><code>% task ls
|
|
|
|
ID Project Pri Description
|
|
12 Errand L Remember to deposit chekc
|
|
...
|
|
|
|
% task 12 Remember to deposit bonus check
|
|
% task ls
|
|
|
|
ID Project Pri Description
|
|
12 Errand L Remember to deposit bonus check
|
|
...</code></pre>
|
|
|
|
<strong>% task /from/to/</strong>
|
|
<p>
|
|
If a task has been entered with a typo, it can be easily corrected
|
|
by this command. For example:
|
|
</p>
|
|
|
|
<pre><code>% task ls
|
|
|
|
ID Project Pri Description
|
|
12 Errand L Remember to deposit chekc
|
|
...
|
|
|
|
% task 12 /chekc/check/
|
|
% task ls
|
|
|
|
ID Project Pri Description
|
|
12 Errand L Remember to deposit check
|
|
...</code></pre>
|
|
|
|
<p>
|
|
This command makes single corrections to a task description.
|
|
</p>
|
|
|
|
<strong>% task tags</strong>
|
|
<p>
|
|
This command will generate a list of all the tags that are currently
|
|
in use by task.
|
|
</p>
|
|
|
|
<strong>% task info <id></strong>
|
|
<p>
|
|
This command gives detailed information about a single task. It
|
|
will tell you when the task was entered, when started, its status,
|
|
tags, and more.
|
|
</p>
|
|
|
|
<strong>% task stats</strong>
|
|
<p>
|
|
This command generates a list of statistics about your task usage,
|
|
such as the average time it takes to complete a task, how often new
|
|
tasks are added, and more.
|
|
</p>
|
|
|
|
<strong>% task completed</strong>
|
|
<p>
|
|
This generates a list of all tasks that have been completed, sorted
|
|
by their completion date.
|
|
</p>
|
|
|
|
<strong>% task export <file name></strong>
|
|
<p>
|
|
This instructs task to write out a CSV format dump of all tasks,
|
|
both pending and completed, to the file specified. This is how you
|
|
might view tasks in a spreadsheet.
|
|
</p>
|
|
|
|
<strong>% task colors</strong>
|
|
<p>
|
|
This command displays all the colors that task supports.
|
|
</p>
|
|
|
|
<strong>% task usage</strong>
|
|
<p>
|
|
If logging has been enabled by the "command.logging=on" directive
|
|
in the .taskrc file, then task will record every command that is
|
|
run. When this command is run, task will display a count of how
|
|
many times each command was used.
|
|
</p>
|
|
|
|
<p>
|
|
This command is for the purpose of seeing whether command are
|
|
actually used.
|
|
</p>
|
|
|
|
<strong>% task version</strong>
|
|
<p>
|
|
This can be used to show the version number of task, and to display
|
|
all the current configuration settings, as read from the .taskrc
|
|
file.
|
|
</p>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="shell">Interacting with the Shell</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Certain characters are interpreted by the shell. For example, the
|
|
"&". If you wish to include the & in a task description,
|
|
you need to escape it, so the shell doesn't interpret it. For
|
|
example:
|
|
</p>
|
|
|
|
<pre><code>% task add Buy bread & milk</code></pre>
|
|
|
|
<p>
|
|
This command is an error because of the &. The shell will
|
|
consider this to be two commands:
|
|
</p>
|
|
|
|
<pre><code>% task add Buy bread &
|
|
% milk</code></pre>
|
|
|
|
<p>
|
|
The shell treats the & character as an indicator that the
|
|
command is complete and should be run in the background. Then the
|
|
shell considers "milk" to be a command all by itself. Which it is
|
|
not. One way to get around this is to individually escape the &
|
|
character:
|
|
</p>
|
|
|
|
<pre><code>% task add Buy bread \& milk</code></pre>
|
|
|
|
<p>
|
|
Another is to quote the entire description, with either ' or "
|
|
characters:
|
|
</p>
|
|
|
|
<pre><code>% task add "Buy bread & milk"</code></pre>
|
|
|
|
<p>
|
|
Task itself interprets the commands, and it too can make mistakes.
|
|
For example, any colon : character will be interpreted by task as a
|
|
delimiter between an attribute name and its value. Currently there
|
|
is no workaround for this.
|
|
</p>
|
|
|
|
<strong>% task <id> fg:... bg:...</strong>
|
|
<p>
|
|
Not strictly a command, the setting of the fg and bg (foreground
|
|
and background) attributes determines the colors used to represent
|
|
the task. Valid foreground colors are:
|
|
</p>
|
|
|
|
<pre><code> bold underline bold_underline
|
|
black bold_black underline_black bold_underline_black
|
|
red bold_red underline_red bold_underline_red
|
|
green bold_green underline_green bold_underline_green
|
|
yellow bold_yellow underline_yellow bold_underline_yellow
|
|
blue bold_blue underline_blue bold_underline_blue
|
|
magenta bold_magenta underline_magenta bold_underline_magenta
|
|
cyan bold_cyan underline_cyan bold_underline_cyan
|
|
white bold_white underline_white bold_underline_white</code></pre>
|
|
|
|
<p>
|
|
Note that these are not just colors, but combinations of colors and
|
|
attributes. Valid background colors are:
|
|
</p>
|
|
|
|
<pre><code>on_black on_bright_black
|
|
on_red on_bright_red
|
|
on_green on_bright_green
|
|
on_yellow on_bright_yellow
|
|
on_blue on_bright_blue
|
|
on_magenta on_bright_magenta
|
|
on_cyan on_bright_cyan
|
|
on_white on_bright_white</code></pre>
|
|
|
|
<p>
|
|
Note also that this capability does depend on whether your terminal
|
|
program can display these colors.
|
|
</p>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="config">Configuring Task</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Task recognizes several entries in the .taskrc file for
|
|
configuration purposes. Valid entries are of the form:
|
|
</p>
|
|
|
|
<pre><code>name=value</code></pre>
|
|
|
|
<p>
|
|
Valid examples are:
|
|
</p>
|
|
|
|
<dt>data.location</dt>
|
|
<dd>
|
|
This is a path to the directory containing all the task files.
|
|
By default, it is set up to be ~/.task, for example:
|
|
/Users/paul/.task
|
|
</dd>
|
|
|
|
<dt>command.logging</dt>
|
|
<dd>
|
|
May be "on" or "off", defaulting to "off". This determines
|
|
whether task records commands. This is not generally useful,
|
|
except while developing task.
|
|
</dd>
|
|
|
|
<dt>confirmation</dt>
|
|
<dd>
|
|
May be "yes" or "no", and determines whether task will ask for
|
|
confirmation before deleting a task.
|
|
</dd>
|
|
|
|
<dt>nag</dt>
|
|
<dd>
|
|
This may be a string of text, or blank. It is used as a prompt
|
|
when a task is completed that is not considered high priority.
|
|
The "task next" command lists important tasks, and completing
|
|
one of those does not generate this nagging. Default value is:
|
|
|
|
<strong>Note: try to stick to high priority tasks. See "task next".</strong>
|
|
</dd>
|
|
|
|
<dt>next</dt>
|
|
<dd>
|
|
Is a number, defaulting to 2, which is the number of tasks for
|
|
each project that are shown in the "task next" command.
|
|
</dd>
|
|
|
|
<dt>curses</dt>
|
|
<dd>
|
|
Determines whether task uses ncurses to establish the size of
|
|
the window you are using, for text wrapping.
|
|
</dd>
|
|
|
|
<dt>blanklines</dt>
|
|
<dd>
|
|
May be "on" or "off". Prevents the display of unnecessary blank
|
|
lines so that task makes better use screen real estate on small-
|
|
screened devices.
|
|
</dd>
|
|
|
|
<dt>dateformat</dt>
|
|
<dd>
|
|
<p>
|
|
This is a string of characters that define how task formats dates.
|
|
The default value is:
|
|
</p>
|
|
|
|
<pre><code>m/d/Y</code></pre>
|
|
|
|
<p>
|
|
which means dates look like:
|
|
</p>
|
|
|
|
<pre><code>6/7/2008</code></pre>
|
|
|
|
<p>
|
|
The string should contain the characters:
|
|
|
|
<table>
|
|
<tr>
|
|
<th class="table_h">Character</th>
|
|
<th class="table_h">Meaning</th>
|
|
<th class="table_h">Example</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">m</td>
|
|
<td class="table_d">minimal-digit month</td>
|
|
<td class="table_d">1, 12</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">d</td>
|
|
<td class="table_d">minimal-digit day</td>
|
|
<td class="table_d">1, 30</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">y</td>
|
|
<td class="table_d">two-digit year</td>
|
|
<td class="table_d">08</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">M</td>
|
|
<td class="table_d">two-digit month</td>
|
|
<td class="table_d">01, 12</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">D</td>
|
|
<td class="table_d">two-digit day</td>
|
|
<td class="table_d">01, 30</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">Y</td>
|
|
<td class="table_d">four-digit year</td>
|
|
<td class="table_d">2008</td>
|
|
</tr>
|
|
</table>
|
|
</p>
|
|
|
|
<p>
|
|
The string may also contain other characters to act as spacers,
|
|
or formatting. Other values could include:
|
|
</p>
|
|
|
|
<p>
|
|
<table>
|
|
<tr>
|
|
<th class="table_h">dateformat</td>
|
|
<th class="table_h">How it looks</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">d/m/Y</td>
|
|
<td class="table_d">7/6/2008</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">YMD</td>
|
|
<td class="table_d">20080607</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="table_d">m-d-y</td>
|
|
<td class="table_d">6-7-08</td>
|
|
</tr>
|
|
</table>
|
|
</p>
|
|
</dd>
|
|
|
|
<dt>showage<dt>
|
|
<dd>
|
|
May be "yes" or "no". Determines whether the "Age"
|
|
column appears on the "list" and "next" reports.
|
|
<dd>
|
|
|
|
<dt>color</dt>
|
|
<dd>
|
|
May be "on" or "off". Determines whether task uses color.
|
|
</dd>
|
|
|
|
<dt>
|
|
color.overdue<br />
|
|
color.due<br />
|
|
color.pri.H<br />
|
|
color.pri.M<br />
|
|
color.pri.L<br />
|
|
color.pri.none<br />
|
|
color.active<br />
|
|
color.tagged
|
|
</dt>
|
|
<dd>
|
|
These are the coloration rules. They correspond to a particular
|
|
attribute of a task, such as it being due, or being active, and
|
|
specifies the automatic coloring of that task. The value may
|
|
be one optional foreground color (see below) and one optional
|
|
background color. For example, the value may be:
|
|
<br />
|
|
<strong>bold_red on_bright_yellow</strong>
|
|
</dd>
|
|
|
|
<dt>color.tag.X</dt>
|
|
<dd>
|
|
Colors any task that has the tag X.
|
|
</dd>
|
|
|
|
<dt>color.project.X</dt>
|
|
<dd>
|
|
Colors any task assigned to project X.
|
|
</dd>
|
|
|
|
<dt>color.keyword.X</dt>
|
|
<dd>
|
|
Colors any task where the description contains X.
|
|
</dd>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="color">Colors</a></h2>
|
|
<div class="content">
|
|
<p>
|
|
Task supports color in several places. In cases where you may
|
|
specify a color, a foreground, a background, or a combination
|
|
foreground and background color may be used. The following are
|
|
valid foreground colors:
|
|
</p>
|
|
|
|
<pre><code> bold underline bold_underline
|
|
black bold_black underline_black bold_underline_black
|
|
red bold_red underline_red bold_underline_red
|
|
green bold_green underline_green bold_underline_green
|
|
yellow bold_yellow underline_yellow bold_underline_yellow
|
|
blue bold_blue underline_blue bold_underline_blue
|
|
magenta bold_magenta underline_magenta bold_underline_magenta
|
|
cyan bold_cyan underline_cyan bold_underline_cyan
|
|
white bold_white underline_white bold_underline_white</code></pre>
|
|
|
|
<p>
|
|
and the following are valid background colors:
|
|
</p>
|
|
|
|
<pre><code>on_black on_bright_black
|
|
on_red on_bright_red
|
|
on_green on_bright_green
|
|
on_yellow on_bright_yellow
|
|
on_blue on_bright_blue
|
|
on_magenta on_bright_magenta
|
|
on_cyan on_bright_cyan
|
|
on_white on_bright_white</code></pre>
|
|
</div>
|
|
|
|
<br />
|
|
<h2 class="title"><a name="usage">Command Usage<a></h2>
|
|
<div class="content">
|
|
<pre><code>task add [tags] [attrs] desc...
|
|
task list [tags] [attrs] desc...
|
|
task long [tags] [attrs] desc...
|
|
task ls [tags] [attrs] desc...
|
|
task completed [tags] [attrs] desc...
|
|
task ID [tags] [attrs] [desc...]
|
|
task ID /from/to/
|
|
task delete ID
|
|
task info ID
|
|
task start ID
|
|
task done ID
|
|
task projects
|
|
task tags
|
|
task summary
|
|
task history
|
|
task next
|
|
task calendar
|
|
task active
|
|
task overdue
|
|
task stats
|
|
task usage
|
|
task export
|
|
task color
|
|
task version
|
|
|
|
ID is the numeric identifier displayed by the 'task list' command
|
|
|
|
Tags are arbitrary words, any quantity:
|
|
+tag The + means add the tag
|
|
-tag The - means remove the tag
|
|
|
|
Attributes are:
|
|
project: Project name
|
|
priority: Priority
|
|
due: Due date
|
|
fg: Foreground color
|
|
bg: Background color
|
|
|
|
Any command or attribute name may be abbreviated if still unique:
|
|
task list project:Home
|
|
task li pro:Home
|
|
|
|
Some task descriptions need to be escaped because of the shell:
|
|
task add "quoted ' quote"
|
|
task add escaped \' quote
|
|
|
|
Many characters have special meaning to the shell, including:
|
|
$ ! ' " ( ) ; \ ` * ? { } [ ] < > | & % # ~</code></pre>
|
|
<div>
|
|
|
|
<br />
|
|
<br />
|
|
<div class="content">
|
|
<p>
|
|
Copyright 2006-2008, P. Beckingham. All rights reserved.
|
|
</p>
|
|
</div>
|
|
|
|
</div>
|
|
</td>
|
|
|
|
<td align="right" valign="top" width="200px">
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
<br />
|
|
|
|
<script type="text/javascript"><!--
|
|
google_ad_client = "pub-9709799404235424";
|
|
/* Task Main */
|
|
google_ad_slot = "8660617875";
|
|
google_ad_width = 120;
|
|
google_ad_height = 600;
|
|
//-->
|
|
</script>
|
|
<script type="text/javascript"
|
|
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
|
</script>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
</div>
|
|
</body>
|
|
</html>
|
|
|