taskwarrior/doc/man/taskrc.5
Paul Beckingham 44fe227595 Product Name Change
- Converted all (appropriate) uses of 'task' to 'taskwarrior'.
2010-08-21 12:31:00 -04:00

917 lines
23 KiB
Groff

.TH taskrc 5 2010-05-22 "task 1.9.2" "User Manuals"
.SH NAME
taskrc \- Configuration file for the task(1) command
.SH SYNOPSIS
.B $HOME/.taskrc
.br
.B task rc:<directory-path>/.taskrc
.SH DESCRIPTION
.B taskwarrior
obtains its configuration data from a file called
.I .taskrc
\&. This file is normally located in the user's home directory:
.RS
$HOME/.taskrc
.RE
The default location can be overridden using the
.I rc:
attribute when running task:
.RS
$ task rc:<directory-path>/.taskrc
.RE
Individual option can be overridden by using the
.I rc.<name>:
attribute when running task:
.RS
$ task rc.<name>:<value> ...
.RE
If
.B taskwarrior
is run without an existing configuration file it will ask if it should create a
default, sample
.I .taskrc
file in the user's home directory.
The taskwarrior configuration file consists of a series of "assignments" in each
line. The "assignments" have the syntax:
.RS
<name-of-configuration-variable>=<value-to-be-set>
.RE
where:
.RS
.TP
<name-of-configuration-variable>
is one of the variables described below
.TP
<value-to-be-set>
is the value the variable is to be set to.
.RE
and set a configuration variable to a certain value. The equal sign ("=") is
used to separate the variable name from the value to be set.
The hash mark, or pound sign ("#") is used as a "comment" character. It can be
used to annotate the configuration file. All text after the character to the end
of the line is ignored.
Note that taskwarrior is flexible about the values used to represent Boolean
items. You can use "on", "yes", "y", "1", "true", "t", "+", "enabled".
Anything else means "off".
.SH EDITING
You can edit your .taskrc file by hand if you wish, or you can use the 'config'
command. To permanently set a value in your .taskrc file, use this command:
.RS
$ task config nag "You have higher priority tasks!"
.RE
To delete an entry, use this command:
.RS
$ task config nag
.RE
Taskwarrior will then use the default value. To explicitly set a value to
blank, and therefore avoid using the default value, use this command:
.RS
$ task config nag ""
.RE
Taskwarrior will also display all your settings with this command:
.RS
$ task config
.RE
and in addition, will also perform a check of all the values in the file,
warning you of anything it finds amiss.
.SH NESTING CONFIGURATION FILES
The .taskrc can include other files containing configuration settings by using the
.B include
statement:
.RS
include <path/to/the/configuration/file/to/be/included>
.RE
By using include files you can divide your main configuration file into several
ones containing just the relevant configuration data like colors, etc.
There are two excellent uses of includes in your .taskrc, shown here:
.RS
include /usr/local/share/doc/task/rc/holidays-US.rc
.br
include /usr/local/share/doc/task/rc/dark-16.theme
.RE
This includes two standard files that are distributed with taskwarrior, which
define a set of US holidays, and set up a 16-color theme to use, to color the
reports and calendar.
.SH CONFIGURATION VARIABLES
Valid variable names and their default values are:
.SS FILES
.TP
.B data.location=$HOME/.task
This is a path to the directory containing all the taskwarrior files. By
default, it is set up to be ~/.task, for example: /home/paul/.task
Note that you can use the
.B ~
shell meta character, which will be properly expanded.
.TP
.B locking=on
Determines whether to use file locking when accessing the pending.data and
completed.data files. Defaults to "on". Solaris users who store the data
files on an NFS mount may need to set locking to "off". Note that there is
danger in setting this value to "off" - another program (or another instance of
task) may write to the task.pending file at the same time.
.SS TERMINAL
.TP
.B curses=on
Determines whether to use ncurses to establish the size of the window you are
using, for text wrapping.
.TP
.B defaultwidth=80
The width of tables used when ncurses support is not available. Defaults to 80.
.TP
.B editor=vi
Specifies which text editor you wish to use for when the
.B task edit <ID>
command is used. Taskwarrior will first look for this configuration variable. If
found, it is used. Otherwise it will look for the $VISUAL or $EDITOR
environment variables, before it defaults to using "vi".
.SS MISCELLANEOUS
.TP
.B locale=en-US
The locale is a combination of ISO 639-1 language code and ISO 3166 country
code. If not specified, will assume en-US. If specified, taskwarrior will
locate the correct file of localized strings and proceed. It is an error to
specify a locale for which there is no strings file.
.TP
.B verbose=yes
Controls some of the verbosity of taskwarrior.
.TP
.B confirmation=yes
May be "yes" or "no", and determines whether taskwarrior will ask for
confirmation before deleting a task or doing bulk changes. The default value
is "yes".
.TP
.B echo.command=yes
May be "yes" or "no", and causes the display of the ID and description of any
task when you run the start, stop, do, undo or delete commands. The default
value is "yes".
.TP
.B annotations=full
.TP
.B report.X.annotations=full
Controls the display of annotations in reports. Defaults to full - all
annotations are displayed. Set to "sparse" only the last (newest) annotation
is displayed and if there are more than one present for a task a "+" sign is
added to the description. Set to "none" the output of annotations is disabled
and a "+" sign will be added if there are any annotations present. The default
value is "full".
.TP
.B next=2
Is a number, defaulting to 2, which is the number of tasks for each project that
are shown in the
.B task next
command.
.TP
.B bulk=2
Is a number, defaulting to 2. When more than this number of tasks are modified
in a single command, confirmation will be required, unless the
.B confirmation
variable is "no".
This is useful for preventing large-scale unintended changes.
.TP
.B nag=You have higher priority tasks.
This may be a string of text, or blank. It is used as a prompt when a task is
started or 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: You have higher priority tasks. It is a gentle
reminder that you are contradicting your own priority settings.
.TP
.B complete.all.projects=yes
May be yes or no, and determines whether the tab completion scripts consider all
the project names you have used, or just the ones used in active tasks. The
default value is "no".
.TP
.B list.all.projects=yes
May be yes or no, and determines whether 'projects' command lists all the project
names you have used, or just the ones used in active tasks. The default value is
"no".
.TP
.B complete.all.tags=yes
May be yes or no, and determines whether the tab completion scripts consider all
the tag names you have used, or just the ones used in active tasks. The default
value is "no".
.TP
.B list.all.tags=yes
May be yes or no, and determines whether the 'tags' command lists all the tag
names you have used, or just the ones used in active tasks. The default value is
"no".
.TP
.B search.case.sensitive=yes
May be yes or no, and determines whether keyword lookup and substitutions on the
description and annotations are done in a case sensitive way. Defaults to yes.
.TP
.B _forcecolor=no
Taskwarrior shuts off color automatically when the output is not sent directly
to a TTY. For example, this command:
.RS
.RS
$ task list > file
.RE
will not use any color. To override this, use:
.RS
$ task rc._forcecolor=yes list > file
.RE
.RE
.TP
.B blanklines=yes
Turning this value off causes taskwarrior to generate a more vertically compact
output.
.TP
.B shell.prompt=task>
The task shell command uses this value as a prompt. You can change it to any
string you like.
.TP
.B active.indicator=*
The character or string to show in the active column. Defaults to *.
.TP
.B tag.indicator=+
The character or string to show in the tag_indicator column. Defaults to +.
.TP
.B recurrence.indicator=R
The character or string to show in the recurrence_indicator column. Defaults to R.
.TP
.B recurrence.limit=1
The number of future recurring tasks to show. Defaults to 1. For example, if a
weekly recurring task is added with a due date of tomorrow, and recurrence.limit
is set to 2, then a report will list 2 pending recurring tasks, one for tomorrow,
and one for a week from tomorrow.
.TP
.B undo.style=side
When the 'undo' command is run, taskwarrior presents a before and after
comparison of the data. This can be in either the 'side' style, which compares
values side-by-side in a table, or 'diff' style, which uses a format similar to
the 'diff' command.
.TP
.B debug=off
Taskwarrior has a debug mode that causes diagnostic output to be displayed.
Typically this is not something anyone would want, but when reporting a bug,
debug output can be useful. It can also help explain how the command line is
being parsed, but the information is displayed in a developer-friendly, not a
user-friendly way.
.TP
.B alias.rm=delete
Taskwarrior supports command aliases. This alias provides an alternate name
(rm) for the delete command. You can use aliases to provide alternate names for
any of the commands. Several commands you may use are actually aliases -
the 'history' report, for example, or 'export'.
.SS DATES
.TP
.B dateformat=m/d/Y
.TP
.B dateformat.report=m/d/Y
.TP
.B dateformat.holiday=YMD
.TP
.B dateformat.annotation=m/d/Y
.TP
.B report.X.dateformat=m/d/Y
This is a string of characters that define how taskwarrior formats date values.
The precedence order for the configuration variable is report.X.dateformat then
reportdateformat then dateformat. While report.X.dateformat only formats the
due date in reports, reportdateformat formats the due date both in reports
and "task info". If both of these are not set then dateformat will be applied
to the due date. Entered dates as well as all other displayed dates in reports
are formatted according to dateformat.
The default value is: m/d/Y. The string should contain the characters:
.RS
.RS
m minimal-digit month, for example 1 or 12
.br
d minimal-digit day, for example 1 or 30
.br
y two-digit year, for example 09
.br
D two-digit day, for example 01 or 30
.br
M two-digit month, for example 01 or 12
.br
Y four-digit year, for example 2009
.br
a short name of weekday, for example Mon or Wed
.br
A long name of weekday, for example Monday or Wednesday
.br
b short name of month, for example Jan or Aug
.br
B long name of month, for example January or August
.br
V weeknumber, for example 03 or 37
.br
H two-digit hour, for example 03 or 11
.br
N two-digit minutes, for example 05 or 42
.br
S two-digit seconds, for example 07 or 47
.RE
.RE
.RS
The string may also contain other characters to act as spacers, or formatting.
Examples for other values of dateformat:
.RE
.RS
.RS
.br
d/m/Y would use for input and output 24/7/2009
.br
yMD would use for input and output 090724
.br
M-D-Y would use for input and output 07-24-2009
.RE
.RE
.RS
Examples for other values of reportdateformat:
.RE
.RS
.RS
.br
a D b Y (V) would do an output as "Fri 24 Jul 2009 (30)"
.br
A, B D, Y would do an output as "Friday, July 24, 2009"
.br
vV a Y-M-D would do an output as "v30 Fri 2009-07.24"
.RE
.RE
.TP
.B weekstart=Sunday
Determines the day a week starts. Valid values are Sunday or Monday only. The
default value is "Sunday".
.TP
.B displayweeknumber=yes
Determines if week numbers are displayed when using the "task calendar" command.
The week number is dependent on the day a week starts. The default value is
"yes".
.TP
.B due=7
This is the number of days into the future that define when a task is
considered due, and is colored accordingly. The default value is 7.
.TP
.B calendar.details=sparse
If set to full running "task calendar" will display the details of tasks with
due dates that fall into the calendar period. The corresponding days will be
color-coded in the calendar. If set to sparse only the corresponding days will
be color coded and no details will be displayed. The displaying of due dates
with details is turned off by setting the variable to none. The default value
is "sparse".
.TP
.B calendar.details.report=list
The report to run when displaying the details of tasks with due date when
running the "task calendar" command. The default value is "list".
.TP
.B calendar.holidays=full
If set to full running "task calendar" will display holidays in the calendar by
color-coding the corresponding days. A detailed list with the dates and names
of the holidays is also shown. If set to sparse only the days are color-coded
and no details on the holidays will be displayed. The displaying of holidays is
turned off by setting the variable to none. The default value is "none".
.SS Journal entries
.TP
.B journal.time=no
May be yes or no, and determines whether the 'start' and 'stop' commands should
record an annotation when being executed. The default value is "no". The text of
the corresponding annotations is controlled by
.TP journal.time.start.annotation=Started task
The text of the annotation that is recorded when executing the start command and
having set journal.time.
.TP journal.time.stop.annotation=Stopped task
The text of the annotation that is recorded when executing the stop command and
having set journal.time.
.SS Holidays
Holidays are entered either directly in the .taskrc file or via an include file
that is specified in .taskrc. For each holiday the name and the date is
required to be given:
.RS
.RS
.br
holiday.towel.name=Day of the towel
.br
holiday.towel.date=20100525
.br
holiday.sysadmin.name=System Administrator Appreciation Day
.br
holiday.sysadmin.date=20100730
.RE
.RE
.RS
Dates are to be entered according to the setting in the dateformat.holiday
variable.
.RE
.RS
The following holidays are computed automatically: Good Friday (goodfriday),
Easter (easter), Easter monday (eastermonday), Ascension (ascension), Pentecost
(pentecost). The date for these holidays is the given keyword:
.RE
.RS
.RS
.br
holiday.eastersunday.name=Easter
.br
holiday.eastersunday.date=easter
.RE
.RE
Note that the taskwarrior distribution contains example holiday files that can
be included like this:
.RS
.RS
.br
include /usr/local/share/doc/task/rc/holidays-US.rc
.RE
.RE
.TP
.B monthsperline=3
Determines how many months the "task calendar" command renders across the
screen. Defaults to however many will fit. If more months than will fit are
specified, taskwarrior will only show as many that will fit.
.SS COLOR CONTROLS
.TP
.B color=on
May be "on" or "off". Determines whether taskwarrior uses color. When "off",
will use dashes (-----) to underline column headings.
.TP
.B fontunderline=on
Determines if font underlines or ASCII dashes should be used to underline
headers, even when color is enabled.
.RE
Taskwarrior has a number of 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. A list of valid colors, depending on your
terminal, can be obtained by running the command:
.RS
.B task color
.RE
.RS
The coloration rules and their defaults are:
.RE
.RS
.B color.overdue=bold red
The color for overdue tasks.
.br
.B color.due.today=bold magenta
The color of tasks due today.
.br
.B color.due=bold yellow
The color of due tasks.
.br
.B color.pri.H=bold
The color of priority:H tasks.
.br
.B color.pri.M=on yellow
The color of priority:M tasks. No default value.
.br
.B color.pri.L=on green
The color of priority:L tasks. No default value.
.br
.B color.pri.none=white on blue
The color of priority: tasks. No default value.
.br
.B color.active=bold cyan
The color of active tasks.
.br
.B color.tagged=yellow
The color of tagged tasks.
.br
.B color.recurring=on red
The color for recurring tasks.
.RE
.RE
.RS
To disable a coloration rule for which there is a default, set the value to
nothing, for example:
.RS
.B color.tagged=
.RE
.RE
See the task-color(5) man pages for color details.
.RE
Certain attributes like tags, projects and keywords can have their own
coloration rules.
.RE
.TP
.B color.tag.X=yellow
Colors any task that has the tag X.
.RE
.TP
.B color.project.X=on green
Colors any task assigned to project X.
.RE
.TP
.B color.keyword.X=on blue
Colors any task where the description or any annotation contains X.
.RE
.TP
.B color.header=green
Colors any of the messages printed prior to the report output.
.RE
.TP
.B color.footnote=green
Colors any of the messages printed last.
.RE
.TP
.B color.summary.bar=on green
Colors the summary progress bar. Should consist of a background color.
.RE
.TP
.B color.summary.background=on black
Colors the summary progress bar. Should consist of a background color.
.RE
.TP
.B color.calendar.today=black on cyan
Color of today in calendar.
.RE
.TP
.B color.calendar.due=black on green
Color of days with due tasks in calendar.
.RE
.TP
.B color.calendar.due.today=black on magenta
Color of today with due tasks in calendar.
.RE
.TP
.B color.calendar.overdue=black on red
Color of days with overdue tasks in calendar.
.RE
.TP
.B color.calendar.weekend=bright white on black
Color of weekend days in calendar.
.RE
.TP
.B color.calendar.holiday=black on bright yellow
Color of holidays in calendar.
.RE
.TP
.B color.calendar.weeknumber=black on white
Color of weeknumbers in calendar.
.RE
.TP
.B color.alternate=on rgb253
Color of alternate tasks.
This is to apply a specific color to every other task in a report,
which can make it easier to visually separate tasks. This is especially
useful when tasks are displayed over multiple lines due to long descriptions
or annotations.
.RE
.TP
.B color.history.add=on red
.RE
.br
.B color.history.done=on green
.RE
.br
.B color.history.delete=on yellow
.RS
Colors the bars on the ghistory report graphs. Defaults to red, green and
yellow bars.
.RE
.TP
.B color.undo.before=red
.RE
.br
.B color.undo.after=green
.RS
Colors used by the undo command, to indicate the values both before and after
a change that is to be reverted.
.RE
.SS SHADOW FILE
.TP
.B
shadow.file=$HOME/.task/shadow.txt
If specified, designates a file path that will be automatically written to by
taskwarrior, whenever the task database changes. In other words, it is
automatically kept up to date. The shadow.command configuration variable is
used to determine which report is written to the shadow file. There is no color
used in the shadow file. This feature can be useful in maintaining a current
file for use by programs like GeekTool, Conky or Samurize.
.TP
.B
shadow.command=list
This is the command that is run to maintain the shadow file, determined by the
.I shadow.file
configuration variable. The format is identical to that of
.I default.command
\&. Please see the corresponding documentation for that command.
.TP
.B
shadow.notify=on
When this value is set to "on", taskwarrior will display a message whenever the
shadow file is updated by some task command.
.SS DEFAULTS
.TP
.B
default.project=foo
Provides a default project name for the
.I task add
command, if you don't specify one. The default is blank.
.TP
.B
default.priority=M
Provides a default priority for the
.I task add
command, if you don't specify one. The default is blank.
.TP
.B
default.command=list
Provides a default command that is run every time taskwarrior is invoked with no
arguments. For example, if set to:
.RS
.RS
default.command=list project:foo
.RE
.RE
.RS
then taskwarrior will run the "list project:foo" command if no command is
specified. This means that by merely typing
.RE
.RS
.RS
$ task
.br
[task list project:foo]
.br
\&
.br
ID Project Pri Description
1 foo H Design foo
2 foo Build foo
.RE
.RE
.SS REPORTS
The reports can be customized by using the following configuration variables.
The output columns, their labels and the sort order can be set using the
corresponding variables for each report. Each report name is used as a
"command" name. For example
.TP
.B task overdue
.TP
.B report.X.description
The description for report X when running the "task help" command.
.TP
.B report.X.columns
The columns that will be used when generating the report X. Valid columns are:
id, uuid, project, priority, priority_long, entry, start, end, due, countdown,
countdown_compact, age, age_compact, active, tags, depends, description_only,
description, recur, recurrence_indicator, tag_indicator and wait.
The IDs are separated by commas.
.TP
.B report.X.labels
The labels for each column that will be used when generating report X. The
labels are a comma separated list.
.TP
.B report.X.sort
The sort order of the tasks in the generated report X. The sort order is
specified by using the column ids post-fixed by a "+" for ascending sort order
or a "-" for descending sort order. The sort IDs are separated by commas.
For example:
report.list.sort=due+,priority-,active-,project+
.TP
.B report.X.filter
This adds a filter to the report X so that only tasks matching the filter
criteria are displayed in the generated report.
.TP
.B report.X.dateformat
This adds a dateformat to the report X that will be used by the "due date"
column. If it is not set then reportdateformat and dateformat will be used in
this order. See the
.B DATES
section for details on the sequence placeholders.
.TP
.B report.X.annotations
This adds the possibility to control the output of annotations for a task in a
report. See the
.B annotations
variable for details on the possible values.
.TP
.B report.X.limit
An optional value to a report limiting the number of displayed tasks in the
generated report.
.TP
Taskwarrior comes with a number of predefined reports in its default
configuration file. These reports are:
.TP
.B long
Lists all task, all data, matching the specified criteria.
.TP
.B list
Lists all tasks matching the specified criteria.
.TP
.B ls
Short listing of all tasks matching the specified criteria.
.TP
.B minimal
Minimal listing of all tasks matching the specified criteria.
.TP
.B newest
Shows the newest tasks.
.TP
.B oldest
Shows the oldest tasks.
.TP
.B overdue
Lists overdue tasks matching the specified criteria.
.TP
.B active
Lists active tasks matching the specified criteria.
.TP
.B completed
Lists completed tasks matching the specified criteria.
.TP
.B recurring
Lists recurring tasks matching the specified criteria.
.TP
.B waiting
Lists all waiting tasks matching the specified criteria.
.TP
.B all
Lists all tasks matching the specified criteria.
.TP
.B next
Lists all tasks with upcoming due dates matching the specified criteria.
.SH "CREDITS & COPYRIGHTS"
Taskwarrior was written by P. Beckingham <paul@beckingham.net>.
.br
Copyright (C) 2006 \- 2010 P. Beckingham
This man page was originally written by Federico Hernandez.
Taskwarrior is distributed under the GNU General Public License. See
http://www.gnu.org/licenses/gpl-2.0.txt for more information.
.SH SEE ALSO
.BR task(1),
.BR task-tutorial(5),
.BR task-faq(5)
.BR task-color(5)
For more information regarding taskwarrior, the following may be referenced:
.TP
The official site at
<http://taskwarrior.org>
.TP
The official code repository at
<git://tasktools.org/task.git/>
.TP
You can contact the project by writing an email to
<support@taskwarrior.org>
.SH REPORTING BUGS
.TP
Bugs in taskwarrior may be reported to the issue-tracker at
<http://taskwarrior.org>