NAME¶
task-faq - A FAQ for the
task(1) command line todo manager.
WELCOME¶
Welcome to the taskwarrior FAQ. If you would like to see a question answered
here, please send us a note to <support@taskwarrior.org>.
- Q: When I redirect the output to a file, I lose all the colors. How do
I fix this?
- Taskwarrior knows when the output is not going directly to a terminal, and
strips out all the color control characters. This is based on the
assumption that the color control codes are not wanted in the file.
Prevent this with the following entry in your .taskrc file:
_forcecolor=on
or by temporarily overriding the value on the command line:
task ... rc._forcecolor=on
There is an additional problem when using pagers such as 'less' and 'more',
because color control codes are stripped. When using less, these options
will preserve the color codes:
task ... | less -FrX
There have been problems reported with the Linux 'more' pager, which inserts
newline characters.
- Q: How do I backup my taskwarrior data files? Where are they?
- Taskwarrior writes all data to files in this location:
~/.task/
You may have overridden this location with the 'data.location' configuration
setting, in which case backup that instead. All files in this location
should be backed up. Making sure all the files in this location are backed
up, and not just a named subset will ensure that you properly backup
future versions of taskwarrior, which will likely introduce more files in
this location.
Don't forget there is also the ~/.taskrc file that contains your taskwarrior
configuration data.
- Q: How can I separate my work tasks from my home tasks? Specifically,
can I keep them completely separate?
- You can do this by creating an alternate .taskrc file, then using shell
aliases. Here are example Bash commands to achieve this:
% cp ~/.taskrc ~/.taskrc_home
% (now edit .taskrc_home to change the value of data.location)
% alias wtask="task"
% alias htask="task rc:~/.taskrc_home"
This gives you two commands, 'wtask' and 'htask' that operate using two
different sets of task data files. Bash shell functions are a good
alternative.
- Q: Can I revert to a previous version of taskwarrior? How?
- Yes, you can revert to a previous version of task, simply by downloading
an older version and installing it. If you find a bug in task, then this
may be the only way to work around the bug, until a patch release is made.
Note that it is possible that the taskwarrior file format will change. For
example, the format changed between versions 1.5.0 and 1.6.0. Taskwarrior
will automatically upgrade the file but if you need to revert to a
previous version of taskwarrior, there is the file format to consider.
This is yet another good reason to back up your task data files!
- Q: Can I have two separate versions of taskwarrior installed?
How?
- Yes, and here is one simple way to do that. Install the older version of
taskwarrior, and then rename the 'task' binary to something like 't230' to
reflect the version number. Then install the newer version, which will be
named 'task'. Now you have 't230' and 'task' both installed, both using
the same configuration and data.
Note that the older version will not be aware of any new configuration
settings and so will complain about them in the 'show' command. This can
be ignored. Likewise the newer version may complain about obsolete entries
in the configuration.
Note also that the man pages will overwrite, which is why it is suggested
that the older version be installed first, so that you benefit from
improved documentation.
Is this a good idea? Not really. You should be using the latest software
whenever possible, enjoying the benefits of enhancements and bug fixes.
- Q: How do I build a Darwin 32bit version of task
- The taskwarrior packages will not work on a 32-bit OSX installation on
Core Duo hardware. You will need to build Taskwarrior from source, and use
this configure command:
./configure "CFLAGS=-m32" "CXXFLAGS=-m32"
"LDFLAGS=-m32"
See: http://taskwarrior.org/issues/817
http://stackoverflow.com/questions/3261909/build-32bit-on-64-bit-linux-using-a-configure-script
- Q: How do I build taskwarrior under Cygwin?
- Take a look at the README.build file, where the latest information on
build issues is kept. Taskwarrior is built the same way everywhere. But
under Cygwin, you'll need to make sure you have the following packages
available first:
gcc
make
The gcc and make packages allow you to compile the code, and are therefore
required.
- Q: Do colors work under Cygwin?
- They do, but only in a limited way. You can use regular foreground colors
(black, red, green ...) and regular background colors (on_black, on_red,
on_green ...), but underline and bold are not supported.
If you run the command:
% task colors
Taskwarrior will display all the colors it can use, and you will see which
ones you can use.
Note that if you install the 'mintty' shell in Cygwin, then you can use 256
colors.
See the 'man task-color' page for more details on which colors can be used.
- Q: Where does taskwarrior store the data?
- By default, taskwarrior creates a .taskrc file in your home directory and
populates it with defaults. Taskwarrior also creates a .task directory in
your home directory and puts data files there.
- Q: Can I edit that data?
- Of course you can. It is a simple text file, and looks somewhat like the
JSON format, and if you are careful not to break the format, there is no
reason not to edit it. But taskwarrior provides a rich command set to do
that manipulation for you, so it is probably best to leave those files
alone.
- Q: How do I restore my .taskrc file to defaults?
- If you delete (or rename) your .taskrc file, taskwarrior will offer to
create a default one for you. Another way to do this is with the command:
task rc:new-file version
Taskwarrior will create 'new-file' if it doesn't already exist. There will
not be much in it though - taskwarrior relies heavily on default values,
which can be seen with this command:
task show
This lists all the currently known settings. If you have just created a new
file, then this command lists only the defaults.
Note that this is a good way to learn about new configuration settings,
particularly if your .taskrc file was created by an older version.
- Q: Can I share my tasks between different machines?
- Yes, you can. Most people have success with a DropBox - a free and secure
file synching tool. Simply configure taskwarrior to store it's data in a
dropbox folder, by modifying the:
data.location=...
configuration variable. Check out DropBox at http://www.dropbox.com.
You might also want to share the same .taskrc file. You can do this by
putting an alias in the .bashrc file along the lines of
alias task="task rc:/home/username/Dropbox/mysharedtaskrc"
- Q: I don't want to use dropbox. Is there another way to synchronize my
tasks?
- Yes. Get a Taskserver account, and sync tasks between all your machines
and devices. See task-sync(5).
- Q: The undo.data file gets very large - do I need it?
- You need it if you want the undo capability. But if it gets large, you can
certainly truncate it to save space, just be careful to delete lines from
the top of the file, up to and including a separator '---'. The simplest
way is to simply delete the undo.data file. Note that it does not slow
down taskwarrior in performance-sensitive areas, because it is typically
not read until you want to undo, or report total active time in the 'info'
command. Taskwarrior generally only appends to the file.
It is not recommended that you delete the undo.data file, as it limits
functionality.
- Q: How do I know whether my terminal supports 256 colors?
- You will need to make sure your TERM environment variable is set to
xterm-color, otherwise the easiest way is to just try it! With version 1.9
or later, you simply run
task color
and a full color palette is displayed. If you see only 8 or 16 colors,
perhaps with those colors repeated, then your terminal does not support
256 colors.
See the task-color(5) man page for more details.
- Q: How do I make use of all these colors?
- Use one of our provided color themes, or create your own - after all, they
are just collections of color settings.
See the task-color(5) man page for an in-depth explanation of the color
rules.
- Q: How can I make taskwarrior put the command in the terminal window
title?
- Just set the following value in your .taskrc file:
xterm.title=on
- Q: Taskwarrior searches in a case-sensitive fashion - can I change
that?
- You can. Just set the following value in your .taskrc file:
search.case.sensitive=no
This will affect searching for keywords:
task Document list
taskwarrior will perform a caseless search in the description and any
annotations for the keyword 'Document'. It also affects description and
annotation substitutions:
task 1 modify /teh/the/
The pattern on the left will now be a caseless search term.
- Q: Why do the ID numbers change?
- Taskwarrior does this to always show you the smallest numbers it can. The
idea is that if your tasks are numbered 1 - 33, for example, those are
easy to type in. If instead task kept a rolling sequence number, after a
while your tasks might be numbered 481 - 513, which makes it more likely
to enter one incorrectly, because there are more digits, and humans have
difficulty with longer numbers.
When you run a report (such as "list"), the numbers are assigned
before display. For example, you can do this:
task list
task 12 done
task add Pay the rent
task 31 delete
Those id numbers are then good until the next report is run. This is because
taskwarrior performs a garbage-collect operation on the pending tasks file
when a report is run, which moves the deleted and completed tasks from the
pending.data file to the completed.data file. This keeps the pending tasks
file small, and therefore keeps taskwarrior fast. The completed data file
is the one that grows unbounded with use, but that one isn't accessed as
much, so it doesn't matter as much. So in all, the ID number resequencing
is about efficiency.
- Q: How do I list tasks that are either priority 'H' or 'M', but not
'L'?
- Taskwarrior's filters are all by default combined with an implicit logical
AND operator, so if you were to try this:
task priority:H priority:M list
There would be no results, because the priority could not simultaneously be
'H' AND 'M'. Instead, you have a choice. You can do this:
task '(priority:H or priority:M)' list
Note that the quotes are one way of escaping the ( ) characters that are
otherwise interpreted by the shell before taskwarrior sees them. You can
also do this:
task priority.not:L priority.any: list
This filter states that the priority must not be 'L', AND there must be a
priority assigned. This filter then properly lists tasks that are 'H' or
'M', because the two logical restrictions are not mutually exclusive as in
the original filter.
Some of you may be familiar with DeMorgan's laws of formal logic that relate
the AND and OR operators in terms of each other via negation, which can be
used to construct task filters.
- Q: How do I delete an annotation?
- Taskwarrior now has a 'denotate' command to remove annotations. Here is an
example:
task add Original task
task 1 annotate foo
task 1 annotate bar
task 1 annotate foo bar
Now to delete the first annotation, use:
task 1 denotate foo
This takes the fragment 'foo' and compares it to each of the annotations. In
this example, it will remove the first annotation, not the third, because
it is an exact match. If there are no exact matches, it will remove the
first non-exact match:
task 1 denotate ar
This will remove the second annotation - the first non-exact match.
- Q: How do I show tasks completed on a certain day?
- The day in question has to be boxed by a range, like this:
task end.after:3/29/2013 end.before:3/30/2013 completed
Note that a single date, such as 3/29/2012 does not refer to a whole day,
but to a single point in time, 3/20/2012 0:00:00.
- Q: How can I help?
- There are lots of ways. Here are some:
- Provide feedback on what works, what does not
- Tell us how task does or does not fit your workflow
- Tell people about task
- Report bugs when you see them
- Contribute to our Wiki
- Suggest features
- Write unit tests
- Write add-on scripts, and share them
- Fix bugs
CREDITS & COPYRIGHTS¶
Copyright (C) 2006 - 2014 P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
SEE ALSO¶
task(1), tasksh(1), taskrc(5), task-tutorial(5),
task-color(5), task-sync(5)
For more information regarding task, the following may be referenced:
- The official site at
- <http://taskwarrior.org>
- The official code repository at
- <git://tasktools.org/task.git/>
- You can contact the project by writing an email to
- <support@taskwarrior.org>
REPORTING BUGS¶
- Bugs in taskwarrior may be reported to the issue-tracker at
- <http://taskwarrior.org>