1taskrc(5)                        User Manuals                        taskrc(5)
2
3
4

NAME

6       taskrc - Configuration details for the task(1) command
7
8

SYNOPSIS

10       $HOME/.taskrc
11       task rc:<directory-path>/.taskrc ...
12       TASKRC=<directory-path>/.taskrc task ...
13
14

DESCRIPTION

16       Taskwarrior obtains its configuration data from a file called .taskrc .
17       This file is normally located in the user's home directory:
18
19              $HOME/.taskrc
20
21       The default location can be overridden using  the  rc:  attribute  when
22       running task:
23
24              $ task rc:<directory-path>/.taskrc ...
25
26       or using the TASKRC environment variable:
27
28              $ TASKRC=/tmp/.taskrc task ...
29
30       Individual  options can be overridden by using the rc.<name>: attribute
31       when running task:
32
33              $ task rc.<name>:<value> ...
34
35       or
36
37              $ task rc.<name>=<value> ...
38
39       If Taskwarrior is run without an existing configuration  file  it  will
40       ask  if  it  should create a default, sample .taskrc file in the user's
41       home directory.
42
43       The .taskrc file follows  a  very  simply  syntax  defining  name/value
44       pairs:
45
46              <name> = <value>
47
48       There  may  be  whitespace  around  <name>,  '=' and <value>, and it is
49       ignored.  Whitespace within the <value> is left intact.  Whitespace  is
50       not  permitted in comma-separated lists.  The entry must be on a single
51       line, no continuations.  Values support UTF8 as well as JSON  encoding,
52       such as \uNNNN.
53
54       Note  that  Taskwarrior  is flexible about the values used to represent
55       Boolean items. You can use "on", "yes", "y", "1" and "true".   Anything
56       else means "off".
57
58              include <file>
59
60       There may be whitespace around 'include' and <file>. The file may be an
61       absolute or relative path, and the special character '~' is expanded to
62       mean $HOME.  The entry must be on a single line, no continuations.
63
64              # <comment>
65
66       A  comment  consists  of the character '#', and extends from the '#' to
67       the end of the line. There is no way to  comment  a  multi-line  block.
68       There may be blank lines.
69
70       Almost  every value has a default setting, and an empty .taskrc file is
71       one that makes use of every default. The contents of the  .taskrc  file
72       therefore  represent  overrides  of  the  default  values.  To remove a
73       default value completely there must be an entry like this:
74
75              <name> =
76
77       This entry overrides the default value with a blank value.
78
79

EDITING

81       You can edit your .taskrc file by hand if you wish, or you can use  the
82       'config'  command. To permanently set a value in your .taskrc file, use
83       this command:
84
85              $ task config nag "You have more urgent tasks."
86
87       To delete an entry, use this command:
88
89              $ task config nag
90
91       Taskwarrior will then use the default value. To explicitly set a  value
92       to  blank,  and  therefore avoid using the default value, use this com‐
93       mand:
94
95              $ task config nag ""
96
97       Taskwarrior will also display all your settings with this command:
98
99              $ task show
100
101       and in addition, will also perform a check of all  the  values  in  the
102       file, warning you of anything it finds amiss.
103
104

NESTING CONFIGURATION FILES

106       The  .taskrc  can include other files containing configuration settings
107       by using the include statement:
108
109              include <path/to/the/configuration/file/to/be/included>
110
111       By using include files you can divide your main configuration file into
112       several  ones containing just the relevant configuration data like col‐
113       ors, etc.
114
115       There are two excellent uses of includes in your .taskrc, shown here:
116
117              include /usr/share/task/holidays.en-US.rc
118              include /usr/share/task/dark-16.theme
119
120       This includes two standard files that are distributed with Taskwarrior,
121       which  define a set of US holidays, and set up a 16-color theme to use,
122       to color the reports and calendar.
123
124

ENVIRONMENT VARIABLES

126       These environment variables override defaults and  command  line  argu‐
127       ments.
128
129
130       TASKDATA=~/.task
131              This overrides the default path for the Taskwarrior data files.
132
133
134       TASKRC=~/.taskrc
135              This overrides the default RC file.
136
137

CONFIGURATION VARIABLES

139       Valid variable names and their default values are:
140
141
142   FILES
143       data.location=$HOME/.task
144              This  is  a path to the directory containing all the Taskwarrior
145              files. By default, it is set up  to  be  ~/.task,  for  example:
146              /home/paul/.task
147
148              Note  that you can use the ~ shell meta character, which will be
149              properly expanded.
150
151              Note that the TASKDATA environment variable overrides this  set‐
152              ting.
153
154
155       locking=on
156              Determines  whether to use file locking when accessing the pend‐
157              ing.data and completed.data files.  Defaults  to  "on".  Solaris
158              users  who  store the data files on an NFS mount may need to set
159              locking to "off". Note that there  is  danger  in  setting  this
160              value  to  "off" - another program (or another instance of task)
161              may write to the task.pending file at the same time.
162
163
164       gc=on  Can be used to temporarily suspend garbage collection  (gc),  so
165              that task IDs don't change. Note that this should be used in the
166              form of a command line override (task rc.gc=off  ...),  and  not
167              permanently  used  in  the  .taskrc  file, as this significantly
168              affects performance in the long term.
169
170
171       hooks=on
172              This master control switch enables hook script  processing.  The
173              default  value  is 'on', but certain extensions and environments
174              may need to disable hooks.
175
176
177       exit.on.missing.db=no
178              When set to 'yes' causes the program to  exit  if  the  database
179              (~/.task  or  rc.data.location or TASKDATA override) is missing.
180              Default value is 'no'.
181
182
183   TERMINAL
184       detection=on
185              Determines whether to use ioctl to establish  the  size  of  the
186              window you are using, for text wrapping.
187
188
189       defaultwidth=80
190              The  width  of  output  used  when auto-detection support is not
191              available. Defaults to 80. If set to 0,  it  is  interpreted  as
192              infinite  width, therefore with no word-wrapping; this is useful
193              when redirecting report output to a  file  for  subsequent  han‐
194              dling.
195
196
197       defaultheight=24
198              The  height  of  output  used when auto-detection support is not
199              available. Defaults to 24. If set to 0,  it  is  interpreted  as
200              infinite  height.  This  is  useful when redirecting charts to a
201              file for subsequent handling.
202
203
204       avoidlastcolumn=no
205              Causes the width of the terminal minus one to  be  used  as  the
206              full  width.  This avoids placing color codes in the last column
207              which can cause problems for  Cygwin  users.  Default  value  is
208              'no'.
209
210
211       hyphenate=on
212              Hyphenates  lines  when  wrapping breaks occur mid-word. Default
213              value is 'on'.
214
215
216       editor=vi
217              Specifies which text editor you wish to use for  when  the  task
218              edit  <ID> command is used. Taskwarrior will first look for this
219              configuration variable. If found, it is used. Otherwise it  will
220              look for the $VISUAL or $EDITOR environment variables, before it
221              defaults to using "vi".
222
223
224       reserved.lines=1
225              This is the number of lines reserved at the bottom of the screen
226              for  the shell prompt. This is only referenced when 'limit:page'
227              is used.
228
229
230   MISCELLANEOUS
231       verbose=on|off|nothing|list...
232              When set to "on" (the default), helpful explanatory comments are
233              added  to  all  output  from  Taskwarrior. Setting this to "off"
234              means that you would see regular output.
235
236              The special  value  "nothing"  can  be  used  to  eliminate  all
237              optional  output, which results in only the formatted data being
238              shown, with nothing else. This output is most readily parsed and
239              used by shell scripts.
240
241              Alternatively,  you  can  specify a comma-separated list of ver‐
242              bosity tokens that control specific  occasions  when  output  is
243              generated. This list may contain:
244
245                  blank      Inserts extra blank lines in output, for clarity
246                  header     Messages that appear before report output
247                  footnote   Messages that appear after report output
248                  label      Column labels on tabular reports
249                  new-id     Provides feedback of any new task IDs
250                  new-uuid    Provides  feedback of any new task UUIDs. Depre‐
251              cated, to be
252                             merged with new-id.
253                  affected   Reports 'N tasks affected' and similar
254                  edit       Used the verbose template for the 'edit' command
255                  special    Feedback when applying special tags
256                  project    Feedback about project status changes
257                  sync       Feedback about sync
258                  filter     Shows the filter used in the command
259                  unwait     Notification when a  task  leaves  the  'waiting'
260              state
261                  recur       Notification  when a new recurring task instance
262              is created
263
264              "affected", "new-id", "new-uuid" "project"  and  "unwait"  imply
265              "footnote".
266
267              Note that the "on" setting is equivalent to all the tokens being
268              specified, and the "nothing" setting is equivalent  to  none  of
269              the tokens being specified.
270
271              Here are the shortcut equivalents:
272
273                  verbose=on
274                  verbose=blank,header,footnote,label,new-
275              id,affected,edit,special,project,sync,filter,unwait
276
277                  verbose=off
278                  verbose=blank,label,new-id,edit
279
280                  verbose=nothing
281                  verbose=
282
283              Those additional comments are sent to  the  standard  error  for
284              header,  footnote  and  project. The others are sent to standard
285              output.
286
287
288       confirmation=yes
289              May be "yes" or "no", and determines  whether  Taskwarrior  will
290              ask  for  confirmation  before deleting a task or performing the
291              undo command. The default value is "yes". Consider leaving  this
292              setting as "yes", for safety.
293
294
295       allow.empty.filter=yes
296              An  empty  filter combined with a write command is potentially a
297              way to modify all tasks by mistake, and when this  is  detected,
298              confirmation is required.  Setting this to 'no' means that it is
299              an error to use a write command with no filter.
300
301
302       indent.annotation=2
303              Controls the number of spaces to indent annotations  when  shown
304              beneath the description field. The default value is "2".
305
306
307       indent.report=0
308              Controls the indentation of the entire report output. Default is
309              "0".
310
311
312       row.padding=0
313              Controls left and right padding around each row  of  the  report
314              output. Default is "0".
315
316
317       column.padding=0
318              Controls  padding  between columns of the report output. Default
319              is "1".
320
321
322       bulk=3 Is a number, defaulting to 3. When this  number  or  greater  of
323              tasks  are  modified  in  a single command, confirmation will be
324              required, regardless of the value of confirmation variable.  The
325              special value bulk=0 is treated as an infinity.
326
327              This is useful for preventing large-scale unintended changes.
328
329
330       nag=You have more urgent tasks.
331              This  may be a string of text, or blank.  It is used as a prompt
332              when a task is started of completed, when there are other  tasks
333              with  a higher urgency.  Default value is: 'You have more urgent
334              tasks'.  It is a gentle reminder that you are contradicting your
335              own urgency settings.
336
337
338       list.all.projects=no
339              May  be yes or no, and determines whether the 'projects' command
340              lists all the project names you have used, or just the ones used
341              in active tasks. The default value is "no".
342
343
344       summary.all.projects=no
345              If set to yes, shows all projects in the summary report, even if
346              there are no pending tasks.  The default value is "no".
347
348
349       complete.all.tags=yes
350              May be yes or no, and  determines  whether  the  tab  completion
351              scripts  consider  all  the tag names you have used, or just the
352              ones used in active tasks. The default value is "no".
353
354
355       list.all.tags=yes
356              May be yes or no, and  determines  whether  the  'tags'  command
357              lists  all the tag names you have used, or just the ones used in
358              active tasks. The default value is "no".
359
360
361       print.empty.columns=no
362              May be yes or no, and determines whether columns  with  no  data
363              for any task are printed. Defaults to no.
364
365
366       search.case.sensitive=yes
367              May be yes or no, and determines whether keyword lookup and sub‐
368              stitutions on the description and annotations are done in a case
369              sensitive way. Defaults to yes on most platforms. Defaults to no
370              on Cygwin due to older regex library problems with case-insensi‐
371              tivity.
372
373
374       regex=on
375              Controls  whether  regular  expression  support  is enabled. The
376              default value is on.
377
378
379       xterm.title=no
380              Sets the xterm window title when reports are  run.  Defaults  to
381              off.
382
383
384       expressions=infix|postfix
385              Sets  a  preference  for  infix  expressions  (1 + 2) or postfix
386              expressions (1 2 +).  Defaults to infix.
387
388
389       json.array=on
390              Determines whether the export command encloses the  JSON  output
391              in  '[...]' and adds ',' after each exported task object to cre‐
392              ate a properly-formed JSON array.  With  json.array=off,  export
393              writes  raw  JSON  objects to STDOUT, one per line.  Defaults to
394              on.
395
396
397       json.depends.array=on
398              Determines whether the export command encodes dependencies as an
399              array  of string UUIDs, or one comma-separated string.  Defaults
400              to on.
401
402
403       _forcecolor=no
404              Taskwarrior shuts off color automatically when the output is not
405              sent directly to a TTY. For example, this command:
406
407                     $ task list > file
408
409              will not use any color. To override this, use:
410
411                     $ task rc._forcecolor=yes list > file
412
413
414       active.indicator=*
415              The  character  or  string  to  show in the start.active column.
416              Defaults to *.
417
418
419       tag.indicator=+
420              The character or string to show  in  the  tag.indicator  column.
421              Defaults to +.
422
423
424       dependency.indicator=D
425              The character or string to show in the depends.indicator column.
426              Defaults to +.
427
428
429       uda.<name>.indicator=U
430              The character or string to show in the  <uda>.indicator  column.
431              Defaults to U.
432
433
434       recurrence=yes
435              Controls  whether  recurrence  is enabled, and whether recurring
436              tasks continue to  generate  new  task  instances.  Defaults  to
437              'yes'.
438
439
440       recurrence.confirmation=prompt
441              Controls  whether changes to recurring tasks propagates to other
442              child tasks with or without confirmation. A value of 'yes' means
443              propagate changes without confirmation. A value of 'no' means do
444              not propagate changes and don't ask for confirmation. A value of
445              'prompt' prompts you every time. Defaults to 'prompt'.
446
447
448       recurrence.indicator=R
449              The character or string to show in the recurrence_indicator col‐
450              umn. Defaults to R.
451
452
453       recurrence.limit=1
454              The number of future recurring tasks to show. Defaults to 1. For
455              example,  if a weekly recurring task is added with a due date of
456              tomorrow, and recurrence.limit is set to 2, then a  report  will
457              list  2 pending recurring tasks, one for tomorrow, and one for a
458              week from tomorrow.
459
460
461       undo.style=side
462              When the 'undo' command is run, Taskwarrior  presents  a  before
463              and  after  comparison  of  the  data. This can be in either the
464              'side' style, which compares values side-by-side in a table,  or
465              'diff' style, which uses a format similar to the 'diff' command.
466
467
468       abbreviation.minimum=2
469              Minimum length of any abbreviated command/value. This means that
470              "ve", "ver", "vers", "versi", "versio" will all equate to  "ver‐
471              sion", but "v" will not.  Default is 2.
472
473
474       debug=off
475              Taskwarrior has a debug mode that causes diagnostic output to be
476              displayed.  Typically this is not something anyone  would  want,
477              but  when  reporting  a  bug, debug output can be useful. It can
478              also help explain how the command line is being parsed, but  the
479              information  is  displayed  in a developer-friendly, not a user-
480              friendly way.
481
482              Turning   debug    on    automatically    sets    debug.hooks=1,
483              debug.parser=1  and  debug.tls=2  if  they  do  not already have
484              assigned values.
485
486
487       debug.hooks=0
488              Controls the hook system diagnostic  level.  Level  0  means  no
489              diagnostics.   Level 1 shows hook calls. Level 2 also shows exit
490              status and I/O.
491
492
493       debug.parser=0
494              Controls the parser diagnostic level. Level 0 shows no  diagnos‐
495              tics.   Level  1  shows the final parse tree.  Level 2 shows the
496              parse tree from all phases of the parse.  Level 3 shows  expres‐
497              sion evaluation details.
498
499
500       debug.tls=0
501              Controls  the  GnuTLS  diagnostic  level.  For 'sync' debugging.
502              Level 0 means no diagnostics. Level 9 is the highest. Level 2 is
503              a good setting for debugging.
504
505
506       obfuscate=1
507              When  set to '1', will replace all report text with 'xxx'.  This
508              is useful for sharing report output  in  bug  reports.   Default
509              value is '0'.
510
511
512       alias.rm=delete
513              Taskwarrior  supports  command  aliases.  This alias provides an
514              alternate name (rm) for the delete command. You can use  aliases
515              to provide alternate names for any of the commands. Several com‐
516              mands you may use are actually aliases - the  'history'  report,
517              for example, or 'export'.
518
519
520   DATES
521       dateformat=Y-M-D
522
523       dateformat.report=
524
525       dateformat.holiday=YMD
526
527       dateformat.edit=Y-M-D H:N:S
528
529       dateformat.info=Y-M-D H:N:S
530
531       dateformat.annotation=
532
533       report.X.dateformat=Y-M-D
534              This is a string of characters that defines how Taskwarrior for‐
535              mats date values.  The precedence order  for  the  configuration
536              variable  is  report.X.dateformat  then  dateformat.report  then
537              dateformat for formatting the due dates  in  reports.   If  both
538              report.X.dateformat and dateformat.report are not set then date‐
539              format will be applied to the date. Entered dates as well as all
540              other  displayed  dates  in  reports  are formatted according to
541              dateformat.
542
543              The default value is the ISO-8601 standard:  Y-M-D.  The  string
544              can contain the characters:
545
546                     m  minimal-digit month,    for example 1 or 12
547                     d  minimal-digit day,      for example 1 or 30
548                     y  two-digit year,         for example 09 or 12
549                     D  two-digit day,          for example 01 or 30
550                     M  two-digit month,        for example 01 or 12
551                     Y  four-digit year,        for example 2009 or 2015
552                     a  short name of weekday,  for example Mon or Wed
553                     A   long name of weekday,   for example Monday or Wednes‐
554                     day
555                     b  short name of month,    for example Jan or Aug
556                     B  long name of month,     for example January or August
557                     v  minimal-digit week,     for example 3 or 37
558                     V  two-digit week,         for example 03 or 37
559                     h  minimal-digit hour,     for example 3 or 21
560                     n  minimal-digit minutes,  for example 5 or 42
561                     s  minimal-digit seconds,  for example 7 or 47
562                     H  two-digit hour,         for example 03 or 21
563                     N  two-digit minutes,      for example 05 or 42
564                     S  two-digit seconds,      for example 07 or 47
565                     J  three-digit Julian day, for example 023 or 365
566                     j  Julian day,             for example 23 or 365
567
568              The characters 'v', 'V', 'a' and 'A' can only be used  for  for‐
569              matting printed dates (not to parse them).
570
571              The  string may also contain other characters to act as spacers,
572              or formatting.  Examples for other values of dateformat:
573
574                     d/m/Y  would use for input and output 24/7/2009
575                     yMD    would use for input and output 090724
576                     M-D-Y  would use for input and output 07-24-2009
577
578              Examples for other values of dateformat.report:
579
580                     a D b Y (V)   would emit "Fri 24 Jul 2009 (30)"
581                     A, B D, Y     would emit "Friday, July 24, 2009"
582                     wV a Y-M-D    would emit "w30 Fri 2009-07-24"
583                     yMD.HN        would emit "110124.2342"
584                     m/d/Y H:N     would emit "1/24/2011 10:42"
585                     a D b Y H:N:S would emit "Mon 24 Jan 2011 11:19:42"
586
587              Undefined fields are put to their minimal valid  values  (1  for
588              month and day and 0 for hour, minutes and seconds) when there is
589              at least one more global date field that is set. Otherwise, they
590              are set to the corresponding values of "now". For example:
591
592                     8/1/2013  with m/d/Y   implies August 1, 2013 at midnight
593                     (inferred)
594                     8/1 20:40 with m/d H:N implies August 1, 2013  (inferred)
595                     at 20:40
596
597
598       date.iso=yes
599              Enables ISO-8601 date support.  The default value is "yes".
600
601
602       weekstart=Sunday
603              Determines  the  day  a  week starts. Valid values are Sunday or
604              Monday only. The default value is "Sunday".
605
606
607       displayweeknumber=yes
608              Determines if week numbers are displayed when  using  the  "task
609              calendar"  command.   The  week number is dependent on the day a
610              week starts. The default value is "yes".
611
612
613       due=7  This is the number of days into the future that  define  when  a
614              task  is considered due, and is colored accordingly. The default
615              value is 7.
616
617
618       calendar.details=sparse
619              If set to full running "task calendar" will display the  details
620              of  tasks with due dates that fall into the calendar period. The
621              corresponding days will be color-coded in the calendar.  If  set
622              to sparse only the corresponding days will be color coded and no
623              details will be displayed. The  displaying  of  due  dates  with
624              details  is  turned  off  by  setting  the variable to none. The
625              default value is "sparse".
626
627
628       calendar.details.report=list
629              The report to run when displaying the details of tasks with  due
630              dates  when  running  the  "task  calendar" command. The default
631              value is "list".
632
633
634       calendar.offset=off
635              If "on" the first month in the calendar  report  is  effectively
636              changed  by the offset value specified in calendar.offset.value.
637              It defaults to "off".
638
639
640       calendar.offset.value=-1
641              The offset value to apply to the first  month  in  the  calendar
642              report. The default value is "-1".
643
644
645       calendar.holidays=full
646              If  set to full running "task calendar" will display holidays in
647              the calendar by color-coding the corresponding days. A  detailed
648              list  with the dates and names of the holidays is also shown. If
649              set to sparse only the days are color-coded and  no  details  on
650              the  holidays  will  be displayed. The displaying of holidays is
651              turned off by setting the variable to none. The default value is
652              "none".
653
654
655       calendar.legend=yes
656              Determines whether the calendar legend is displayed. The default
657              value is "yes".
658
659
660   JOURNAL ENTRIES
661       journal.time=no
662              May be yes or no, and determines whether the 'start' and  'stop'
663              commands  should  record  an annotation when being executed. The
664              default value is "no". The text of the corresponding annotations
665              is controlled by:
666
667
668       journal.time.start.annotation=Started task
669              The  text  of the annotation that is recorded when executing the
670              start command and having set journal.time.
671
672
673       journal.time.stop.annotation=Stopped task
674              The text of the annotation that is recorded when  executing  the
675              stop command and having set journal.time.
676
677
678       journal.info=on
679              When  enabled,  this setting causes a change log of each task to
680              be displayed by the 'info' command. Default value is "on".
681
682
683   HOLIDAYS
684       Holidays are entered either directly in the  .taskrc  file  or  via  an
685       include  file  that  is specified in .taskrc. For each holiday the name
686       and the date is required to be given:
687
688                     holiday.towel.name=Day of the towel
689                     holiday.towel.date=20100525
690                     holiday.sysadmin.name=System  Administrator  Appreciation
691                     Day
692                     holiday.sysadmin.date=20100730
693
694              Dates are to be entered according to the setting in the datefor‐
695              mat.holiday variable.
696
697              The following holidays are computed automatically:  Good  Friday
698              (goodfriday),  Easter  (easter),  Easter  Monday (eastermonday),
699              Ascension (ascension), Pentecost (pentecost). The date for these
700              holidays is the given keyword:
701
702                     holiday.eastersunday.name=Easter
703                     holiday.eastersunday.date=easter
704
705       Note  that  the Taskwarrior distribution contains example holiday files
706       that can be included like this:
707
708                     include /usr/share/task/holidays.en-US.rc
709
710
711       monthsperline=3
712              Determines how many months the "task calendar"  command  renders
713              across  the  screen.  Defaults to however many will fit. If more
714              months than will fit are specified, Taskwarrior will  only  show
715              as many that will fit.
716
717
718   DEPENDENCIES
719       dependency.reminder=on
720              Determines   whether   dependency   chain   violations  generate
721              reminders.
722
723
724       dependency.confirmation=yes
725              Determines whether dependency chain  repair  requires  confirma‐
726              tion.
727
728
729   COLOR CONTROLS
730       color=on
731              May be "on" or "off". Determines whether Taskwarrior uses color.
732              When "off", will use dashes (-----) to  underline  column  head‐
733              ings.
734
735
736       fontunderline=on
737              Determines  if font underlines or ASCII dashes should be used to
738              underline headers, even when color is enabled.
739
740       Taskwarrior has a number of coloration rules. They correspond to a par‐
741       ticular attribute of a task, such as it being due, or being active, and
742       specifies the automatic coloring of that task. A list of valid  colors,
743       depending on your terminal, can be obtained by running the command:
744
745              task color
746
747              Note  that  no default values are listed here - the defaults now
748              correspond  to  the  dark-256.theme  (Linux)  and  dark-16.theme
749              (other) theme values.  The coloration rules are as follows:
750
751              color.due.today Task is due today
752              color.active Task is started, therefore active.
753              color.scheduled Task is scheduled, therefore ready for work.
754              color.until Task has an expiration date.
755              color.blocking Task is blocking another in a dependency.
756              color.blocked Task is blocked by a dependency.
757              color.overdue Task is overdue (due some time prior to now).
758              color.due Task is coming due.
759              color.project.none Task does not have an assigned project.
760              color.tag.none Task has no tags.
761              color.tagged Task has at least one tag.
762              color.recurring Task is recurring.
763              color.completed Task is completed.
764              color.deleted Task is deleted.
765
766              To  disable  a coloration rule for which there is a default, set
767              the value to nothing, for example:
768                     color.tagged=
769
770              By default, colors produced by rules blend. This has the  advan‐
771              tage  of conveying additional information, by producing combina‐
772              tions that are not used by any particular rule directly.
773
774              However, color blending can  produce  highlighting  combinations
775              which  are  not desired. In such cases, use the following option
776              to disable this behaviour:
777
778
779       rule.color.merge=yes
780              Can be "yes" or "no". When "no", disables merging of colors pro‐
781              duced  by  different  color rules. Use if your color scheme pro‐
782              duces unpleasing foreground and background combinations.
783
784
785              See the task-color(5) man pages for color details.
786
787       Certain attributes like tags, projects and keywords can have their  own
788       coloration rules.
789
790
791       color.tag.X=yellow
792              Colors any task that has the tag X.
793
794
795       color.project.X=on green
796              Colors any task assigned to project X.
797
798
799       color.keyword.X=on blue
800              Colors any task where the description or any annotation contains
801              X.
802
803
804       color.uda.X=on green
805              Colors any task that has the user defined attribute X.
806
807
808       color.uda.X.VALUE=on green
809              Colors any task that has the user defined  attribute  X  set  to
810              VALUE.
811
812
813       color.uda.X.none=on green
814              Colors any task that does not have the user defined attribute X.
815
816
817       color.error=white on red
818              Colors any of the error messages.
819
820
821       color.warning=bold red
822              Colors any of the warning messages.
823
824
825       color.header=green
826              Colors any of the messages printed prior to the report output.
827
828
829       color.footnote=green
830              Colors any of the messages printed last.
831
832
833       color.summary.bar=on green
834              Colors  the summary progress bar. Should consist of a background
835              color.
836
837
838       color.summary.background=on black
839              Colors the summary progress bar. Should consist of a  background
840              color.
841
842
843       color.calendar.today=black on cyan
844              Color of today in calendar.
845
846
847       color.calendar.due=black on green
848              Color of days with due tasks in calendar.
849
850
851       color.calendar.due.today=black on magenta
852              Color of today with due tasks in calendar.
853
854
855       color.calendar.overdue=black on red
856              Color of days with overdue tasks in calendar.
857
858
859       color.calendar.weekend=bright white on black
860              Color of weekend days in calendar.
861
862
863       color.calendar.holiday=black on bright yellow
864              Color of holidays in calendar.
865
866
867       color.calendar.weeknumber=black on white
868              Color of weeknumbers in calendar.
869
870
871       color.label=
872              Colors the report labels. Defaults to not use color.
873
874
875       color.label.sort=
876              Colors   the   report  labels  for  sort  columns.  Defaults  to
877              color.label.
878
879
880       color.alternate=on rgb253
881              Color of alternate tasks.  This is to apply a specific color  to
882              every  other  task in a report, which can make it easier to vis‐
883              ually separate tasks. This is especially useful when  tasks  are
884              displayed  over multiple lines due to long descriptions or anno‐
885              tations.
886
887
888       color.history.add=on red
889       color.history.done=on green
890       color.history.delete=on yellow
891              Colors the bars on the ghistory report graphs. Defaults to  red,
892              green and yellow bars.
893
894
895       color.burndown.pending=on red
896       color.burndown.started=on yellow
897       color.burndown.done=on green
898              Colors the bars on the burndown reports graphs. Defaults to red,
899              green and yellow bars.
900
901
902       color.undo.before=red
903       color.undo.after=green
904              Colors used by the undo command, to  indicate  the  values  both
905              before and after a change that is to be reverted.
906
907
908       color.sync.added=green
909       color.sync.changed=yellow
910       color.sync.rejected=red
911              Colors the output of the sync command.
912
913
914       rule.precedence.color=due.today,active,blocking,blocked,overdue,due,
915              scheduled,keyword.,project.,tag.,uda.,recurring,
916              pri.,tagged,completed,deleted
917              This setting specifies the precedence of the color  rules,  from
918              highest to lowest. Note that the prefix 'color.' is omitted (for
919              brevity), and that any wildcard value (color.tag.XXX) is  short‐
920              ened  to 'tag.', which places all specific tag rules at the same
921              precedence, again for brevity.
922
923
924       color.debug=green
925              Colors all debug output, if enabled.
926
927
928   URGENCY
929       The urgency calculation uses a polynomial with several terms,  each  of
930       which has a configurable coefficient. Those coefficients are:
931
932
933       urgency.blocking.coefficient=8.0
934              Urgency coefficient for blocking tasks
935       urgency.blocked.coefficient=-5.0
936              Urgency coefficient for blocked tasks
937       urgency.due.coefficient=12.0
938              Urgency coefficient for due dates
939       urgency.waiting.coefficient=-3.0
940              Urgency coefficient for waiting status
941       urgency.active.coefficient=4.0
942              Urgency coefficient for active tasks
943       urgency.scheduled.coefficient=5.0
944              Urgency coefficient for scheduled tasks
945       urgency.project.coefficient=1.0
946              Urgency coefficient for projects
947       urgency.tags.coefficient=1.0
948              Urgency coefficient for tags
949       urgency.annotations.coefficient=1.0
950              Urgency coefficient for annotations
951       urgency.age.coefficient=2.0
952              Urgency coefficient for the age of tasks
953       urgency.age.max=365
954              Maximum  age in days. After this number of days has elapsed, the
955              urgency of a task won't increase any more because of aging.
956       urgency.user.tag.<tag>.coefficient=...
957              Specific tag coefficient.
958       urgency.user.tag.next.coefficient=15.0
959              Urgency coefficient for tag 'next'.
960       urgency.user.project.<project>.coefficient=...
961              Specific project coefficient.
962       urgency.user.keyword.<keyword>.coefficient=...
963              Specific description keyword coefficient.
964       urgency.uda.<name>.coefficient=...
965              Presence/absence of UDA data.
966       urgency.uda.<name>.<value>.coefficient=...
967              Specific value of UDA data.
968
969       The coefficients reflect the relative importance of the  various  terms
970       in  the urgency calculation. These are default values, and may be modi‐
971       fied to suit your preferences, but it is important that  you  carefully
972       consider any modifications.
973
974       urgency.inherit=off
975              Not actually a coefficient. When enabled, blocking tasks inherit
976              the highest urgency value found in the tasks they block. This is
977              done  recursively.   It  is  recommended  to  set urgency.block‐
978              ing.coefficient and urgency.blocked.coefficient to 0.0 in  order
979              for this setting to be the most useful.
980
981
982   DEFAULTS
983       default.project=foo
984              Provides a default project name for the task add command, if you
985              don't specify one. The default is blank.
986
987
988       default.due=...
989              Provides a default due date for the task  add  command,  if  you
990              don't specify one. You can use a date, or a duration value which
991              is assumed to be relative to 'now'. The default is blank.
992
993
994       uda.<name>.default=...
995              Provides default values for UDA fields when using the  task  add
996              command, if you don't specify values. The default is blank.
997
998
999       default.command=next
1000              Provides a default command that is run every time Taskwarrior is
1001              invoked with no arguments. For example, if set to:
1002
1003                     default.command=project:foo list
1004
1005              then Taskwarrior will run the "project:foo list" command  if  no
1006              command is specified. This means that by merely typing
1007
1008                     $ task
1009                     [task project:foo list]
1010
1011                     ID Project Pri Description
1012                      1 foo     H   Design foo
1013                      2 foo         Build foo
1014
1015
1016   REPORTS
1017       The  reports  can  be  customized  by using the following configuration
1018       variables.  The output columns, their labels and the sort order can  be
1019       set using the corresponding variables for each report. Each report name
1020       is used as a "command" name. For example
1021
1022
1023       task overdue
1024
1025
1026       report.X.description
1027              The description for report X when running the "task  help"  com‐
1028              mand.
1029
1030
1031       report.X.columns
1032              This  is a comma-separated list of columns and formatting speci‐
1033              fiers. See the command 'task columns' for a full list of options
1034              and examples.
1035
1036
1037       report.X.labels
1038              The  labels  for  each  column that will be used when generating
1039              report X. The labels are a comma separated list.
1040
1041
1042       report.X.sort
1043              The sort order of the tasks in the generated report X. The  sort
1044              order  is  specified by using the column ids post-fixed by a "+"
1045              for ascending sort order or a "-" for descending sort order. The
1046              sort IDs are separated by commas.  For example:
1047
1048                  report.list.sort=due+,priority-,start.active-,project+
1049
1050              Additionally,  after  the "+" or "-", there can be a solidus "/"
1051              which indicates that there are breaks after  the  column  values
1052              change. For example:
1053
1054                  report.minimal.sort=project+/,description+
1055
1056              This  sort  order  now  specifies  that there is a listing break
1057              between each project. A listing break is simply  a  blank  line,
1058              which provides a visual grouping.
1059
1060              A  special  sort  value  of  "none" indicates that no sorting is
1061              required, and tasks will be presented in the order (if  any)  in
1062              which they are selected.
1063
1064
1065       report.X.filter
1066              This  adds  a filter to the report X so that only tasks matching
1067              the filter criteria are displayed in the generated report.
1068
1069
1070       report.X.dateformat
1071              This adds a dateformat to the report X that will be used by  the
1072              "due  date"  column. If it is not set then dateformat.report and
1073              dateformat will be used in this order. See the DATES section for
1074              details on the sequence placeholders.
1075
1076
1077       report.X.annotations
1078              This  adds  the possibility to control the output of annotations
1079              for a task in a report. Deprecated. Use the  description  column
1080              with a format (e.g., description.count) instead.
1081
1082
1083       Taskwarrior comes with a number of predefined reports, which are:
1084
1085
1086       next   Lists the most important tasks.
1087
1088
1089       long   Lists  all  pending  tasks  and all data, matching the specified
1090              criteria.
1091
1092
1093       list   Lists all tasks matching the specified criteria.
1094
1095
1096       ls     Short listing of all tasks matching the specified criteria.
1097
1098
1099       minimal
1100              Minimal listing of all tasks matching the specified criteria.
1101
1102
1103       newest Shows the newest tasks.
1104
1105
1106       oldest Shows the oldest tasks.
1107
1108
1109       overdue
1110              Lists overdue tasks matching the specified criteria.
1111
1112
1113       active Lists active tasks matching the specified criteria.
1114
1115
1116       completed
1117              Lists completed tasks matching the specified criteria.
1118
1119
1120       recurring
1121              Lists recurring tasks matching the specified criteria.
1122
1123
1124       waiting
1125              Lists all waiting tasks matching the specified criteria.
1126
1127
1128       all    Lists all tasks matching the specified criteria.
1129
1130
1131       blocked
1132              Lists all tasks that have dependencies.
1133
1134
1135   USER DEFINED ATTRIBUTES
1136       User defined attributes (UDAs) are an extension mechanism  that  allows
1137       you  to define new attributes for Taskwarrior to store and display. One
1138       such example is an 'estimate' attribute that could  be  used  to  store
1139       time estimates associated with a task. This 'estimate' attribute is not
1140       built in to Taskwarrior, but with a few simple  configuration  settings
1141       you  can instruct Taskwarrior to store this item, and provide access to
1142       it for custom reports and filters.
1143
1144       This allows you to augment Taskwarrior to accommodate your workflow, or
1145       bend  the rules and use Taskwarrior to store and synch data that is not
1146       necessarily task-related.
1147
1148       One important restriction is that because this is an open  system  that
1149       allows  the  definition of any new attribute, Taskwarrior cannot under‐
1150       stand the meaning of that attribute. So while Taskwarrior  will  faith‐
1151       fully  store,  modify,  report,  sort  and filter your UDA, it does not
1152       understand anything about it. For example if you  define  a  UDA  named
1153       'estimate',  Taskwarrior will not know that this value is weeks, hours,
1154       minutes, money, or some other resource count.
1155
1156
1157       uda.<name>.type=string|numeric|date|duration
1158              Defines a UDA called '<name>', of the specified type.
1159
1160
1161       uda.<name>.label=<column heading>
1162              Provides a default report label for the UDA called '<name>'.
1163
1164
1165       uda.<name>.values=A,B,C
1166              For type 'string' UDAs only,  this  provides  a  comma-separated
1167              list of acceptable values. In this example, the '<name>' UDA may
1168              only contain values 'A', 'B', or 'C', but may  also  contain  no
1169              value.
1170
1171              Note  that  the order of the value is important, and denotes the
1172              sort order from highest ('A') to lowest ('C').
1173
1174              Note that a blank value is permitted.
1175
1176
1177       uda.<name>.default=...
1178              Provides a default value for the UDA called '<name>'.
1179
1180
1181       Example 'estimate' UDA
1182              This example shows an 'estimate' UDA that stores specific values
1183              for the size of a task.  Note the blank value after 'trivial'.
1184
1185              uda.estimate.type=string
1186              uda.estimate.label=Size Estimate
1187              uda.estimate.values=huge,large,medium,small,trivial,
1188
1189              Note that the value are sorted
1190
1191                  huge > large > medium > small > trivial > ''
1192
1193
1194   CONTEXT
1195       Context setting is a mechanism which allows the user to set a permanent
1196       filter, thus avoiding the need to specify one filter  repeatedly.  More
1197       details on usage can be found in the task(1) man page.
1198
1199       The  current  context is stored in the .taskrc file, along with defini‐
1200       tions for all user provided contexts.
1201
1202
1203       context=<name>
1204              Stores the value of the currently active context.
1205
1206
1207       context.<name>=<filter>
1208              Stores the definition of the context with the name <name>.
1209
1210
1211   SYNC
1212       These configuration settings are used to connect and  sync  tasks  with
1213       the task server.
1214
1215
1216       taskd.server=<host>:<port>
1217              Specifies  the hostname and port of the Taskserver. Hostname may
1218              be an IPv4 or IPv6 address, or domain. Port is an integer.
1219
1220
1221       taskd.credentials=<organization>/<user>/<key>
1222              User identification for the Taskserver, which includes a private
1223              key.
1224
1225
1226       taskd.certificate=<path>
1227              Specifies  the path to the client certificate used for identifi‐
1228              cation with the Taskserver.
1229
1230
1231       taskd.key=<path>
1232              Specifies the path to the client key used for encrypted communi‐
1233              cation with the Taskserver.
1234
1235
1236       taskd.ca=<path>
1237              Specifies  the path to the CA certificate in the event that your
1238              Taskserver is using a self-signed certificate. Optional.
1239
1240
1241       taskd.trust=strict|ignore hostname|allow all
1242              This settings allows you to override the trust level when server
1243              certificates  are  validated.  With "allow all", the server cer‐
1244              tificate is trusted automatically. With "ignore  hostname",  the
1245              server certificate is verified but the hostname is ignored. With
1246              "strict",  the  server  certificate  is  verified.   Default  is
1247              "strict", which requires full validation.
1248
1249
1250       taskd.ciphers=NORMAL
1251              Override of the cipher selection. The set of ciphers used by TLS
1252              may be controlled by both server and client. There must be  some
1253              overlap between client and server supported ciphers, or communi‐
1254              cation cannot occur.  Default is "NORMAL". See GnuTLS documenta‐
1255              tion for full details.
1256
1257

CREDITS & COPYRIGHTS

1259       Copyright (C) 2006 - 2016 P. Beckingham, F. Hernandez.
1260
1261       This man page was originally written by Federico Hernandez.
1262
1263       Taskwarrior  is distributed under the MIT license. See http://www.open
1264       source.org/licenses/mit-license.php for more information.
1265
1266

SEE ALSO

1268       task(1), task-color(5), task-sync(5)
1269
1270       For more information regarding Taskwarrior, see the following:
1271
1272
1273       The official site at
1274              <http://taskwarrior.org>
1275
1276
1277       The official code repository at
1278              <https://git.tasktools.org/scm/tm/task.git>
1279
1280
1281       You can contact the project by emailing
1282              <support@taskwarrior.org>
1283
1284

REPORTING BUGS

1286       Bugs in Taskwarrior may be reported to the issue-tracker at
1287              <https://bug.tasktools.org/>
1288
1289
1290
1291
1292task 2.5.1                        2016-02-24                         taskrc(5)
Impressum