
Taskwarrior – TODO List from Your Command Line - enesunal
https://taskwarrior.org/?rand=12084
======
brudgers
A cooler tool than a list of releases might suggest. Clicking on "Let's Get
Started" gets me:
[https://taskwarrior.org/docs/start.html](https://taskwarrior.org/docs/start.html)

It's too bad that it isn't the landing page.

~~~
pbeckingham
I've heard that before. It's a good suggestion, thank you for reminding me.
I'll roll that out soon.

------
lucb1e
Used this for a few months and I can highly recommend it for anyone who likes
the command line workflow (as I do). No mousing around, just typing. I still
occasionally use it for tracking how much time I spend on a task:

    
    
        $ task add some project
        Created task 1
        $ task 1 start
        ... do some work ...
        $ task 1 stop
        $ task 1
    

This will show you how long you just worked on it. You can start/stop a task
multiple times and it'll show you when and how long you worked on it each
time.

The reason I don't really use Taskwarrior on a daily basis anymore is because
I don't use any todo list anymore at all. Currently there are things with a
deadline, which are either in my head or in my calendar, and there are things
that happen at a certain time (e.g. meeting). A todo list doesn't fit in how I
currently work.

------
nextos
I like this, and have used it in the past. I love having all my software (data
& configuration) in plain text.

That said, I have found Emacs' org-mode better to suit my rather simple needs
---structuring my tasks in a kanban-like format. There's even a Trello to org-
mode sync system, just in case you collaborate with people.

In general, I find kanban a very good way to structure work because it defines
the next task very clearly and _limits work in progress_.

------
tjl
Why use this over Todo.txt? That has iOS, Android, and desktop clients.

[http://todotxt.com](http://todotxt.com)

~~~
gh02t
That seems more similar to org-mode than TW. TW's features are more along the
lines of time-tracking, grouping tasks, managing dependencies and
automatically managing tasks on top of the basic management. TW also has
Android/iOS and desktop clients (including a GUI), though I haven't really
used them as I find the default CLI to be extremely slick and intuitive.

You can do pretty much everything you can in TW with a variety of other tools,
it just has its own spin on things and also a _ton_ of features. I've tried
other task organizers (especially org-mode), but I ended up sticking with TW
because it worked best for me.

~~~
tjl
I'll take a look. I've used todo.txt for a while off and on.

------
vessenes
Oh wow, "task help" shows an incredible list of thoughtful options. That
should be part of the Getting started documentation. I had no idea. You can do

    
    
        task +weekend +garden due:tomorrow
    

That's super cool. I keep a to-do list in a text file, but It would be nice to
have the metadata task keeps around for things.

------
lisivka
Just use plain directories and files. One task per file (or directory, if task
has attachments).

~~~
bachmeier
That's the direction I've been moving. Amazingly simple to write scripts to,
for example, turn the data into an html file. And using directories lets you
add comments to tasks.

~~~
gh02t
For reference, you can add comments (aka annotations) to tasks in Taskwarrior
as well as dump to JSON (so halfway to HTML). TW also ultimately uses text
files for your tasks.

The major advantage of TW over flat files is you can do stuff like
dependencies, urgency, meta-groupings like projects and so on. Features that
could probably be implemented with scripts on top of the FS, but by then
you're basically cloning TW or org-mode. OTOH, if you don't care about stuff
like that then flat files can work really well.

~~~
bachmeier
Is there a way to get TW to serve as a calendar? For instance, can I list
everything that has to be done today, in order, with times of meetings listed
and everything with a deadline listed separately? I couldn't find that use
case in the docs.

org-mode has served me well, but I want something that's usable from a phone.
If I put everything on a web server, I have it whenever I need it.

~~~
gh02t
Kinda. You can do `task due:today +calendar` to get a printout of stuff that's
due today and tagged as "calendar" and you can tweak the columns it shows and
ordering to show it exactly the way you want. I say "kinda" though because
it's not exactly the same as a calendar in the sense you can't schedule a
duration for a task because there is only an idea of "due time". In my mind, a
calendar tracks when an event begins _and_ when it ends. You can create an
appointment task that has the due time being the start of the appointment, but
I don't think you can say "and it lasts until 3PM".

You can in general pre-define custom views with filters that show e.g. only
high priority tasks due on the second Thursday of February that are
dependencies of other tasks and then define exactly what you want it to show
in its printout. It's also extensible and scriptable, so you can probably add
custom hooks and such to do whatever you like. It also supports arbitrary
user-defined attributes for a task, so if you really want to make it into a
complete calendar you can add a user attribute to track the end time and then
have it in a column of a custom calendar printout and maybe add hooks to
prevent overlap or check that times are valid etc.

That said, I don't use it this way as it's just not what I want it for. But it
can definitely do it; it's ridiculously flexible. Exactly how much calendar-
like functionality you want determines how much work it'd take... ranging from
none if you just want to track appointment start times for the day to a chunk
of scripting if you really want a full-blown calendar.

------
tunesmith
You can actually model diamond or x dependencies with task - I'm not aware of
any other todo software that can do this, short of a pert chart or gantt
chart.

(I mean where A and B both block C, while C blocks both D and E, which both
block F, etc)

------
njt
Also check out Vit:
[http://tasktools.org/projects/vit.html](http://tasktools.org/projects/vit.html)

It's a curses based console interface for taskwarrior.

------
MrZongle2
_" It uses human-readable text files for storage. It imports and exports JSON,
so your data is never held captive"_

I'm a really, really big fan of this.

~~~
pbeckingham
"Not using a database" is possibly our best feature. :)

------
wbsch
You can try Taskwarrior in your browser:
[http://wbsch.de/jswarrior/](http://wbsch.de/jswarrior/)

It's an older version (2.4.3) with a lot of recent improvements missing, but
you can get a basic feel for what it is like to use it. I really should get
around to updating this to the latest release sometime.

------
cpro
I've tried Taskwarrior in the past. The main issue I had is the complexity.
It's not simple enough, there's a whole lot of options and things it can do
which send me down a path of messing with tasks and organizing them when all I
should be doing is completing them.

All I ever need is a simple text file with a list of things to do. I've ended
up building a simple version that does what I need on a per-project basis and
I check the file into version control sometimes (depending on the project).
Sometimes I have git ignore the tasks file and it's more of a personal todo
list for the project.

[https://github.com/prophittcorey/t.rb](https://github.com/prophittcorey/t.rb)

I've also integrated it within Vim so I don't even need to touch the
commandline:

[https://github.com/prophittcorey/vim-t](https://github.com/prophittcorey/vim-t)

------
CrimsnBlade
I love the simplicity of this.

If there were a way to add alerts when things are coming up that would be a
good option. I know there have been times I've made a TODO list thinking I was
getting organized, forgot about it, and never got my task done.

~~~
lucb1e
I put `task` in my .bashrc so it would run every time I open a terminal (which
is a lot for me). Since TW sorts by urgency (which it determines on some
values, and you can override it if you wish), that is as good as a reminder.

~~~
techdragon
I use this too. I open and close terminals a lot so I created a special tag
for tasks that I want to "prompt myself about" and these are printed concisely
at the top of every new interactive shell.

I need to take the time to try the newest web interface tools and check out
the json output. My major issues with taskwarrior have been with having native
clients on other platforms. Taskwarrior is lightning fast on my desktop and
laptop... It's speed and ease of use are why I love using it. But the quality
of the various third party sync, web UI, and native app integration
opportunities has left me let down.

Unfortunately all of this stems from a lack of a definition of what a task
actually is. At some level we could have a standard like CalDAV. But CalDAV
embeds the tasks in other junk, and a separate TaskDAV is not likely as long
as the tasks as calendar item paradigm solves 80% of people's task related
needs.

------
deadprogram
This looks very interesting. Definitely going to give it a try.

