Forums » user support »
Future tasks? (wait: )
Added by Timothy Bourke 241 days ago
Is there a way of adding tasks that don't become active until a future date?
For instance, if my passport needs to be renewed on June 1, 2015, can I add a task that appears on May 1, 2015?
Can this be done with the recur feature?
Tim.
Replies
RE: Future tasks? - Added by Paul Beckingham 241 days ago
Hi Tim, welcome!
There is a way to do what you are looking for. A task can exist in several states, (pending, done, deleted ...) including "waiting". Here is how it works:
$ task list No matches. $ task add Renew passport wait:5/1/2015 Created task 1 $ task list No matches. $ task waiting ID Project Pri Wait Age Description 1 5/1/2015 9 secs Renew passport 1 task
The task was added with the additional "wait:..." attribute. This makes the task not visible until May 1st 2015. The task is still there, and when May 1st 2015 comes around, the task will flip back to the pending state and become more visible.
While the task is waiting, it can still be listed with the "waiting" command, and can still be modified and otherwise manipulated - it just doesn't show up on regular "list" type reports.
This wait feature is intended to be used to hide tasks that will not be due for some time, and therefore not clutter up the more immediate "what's next" lists - which is I think exactly what you wanted.
Paul
RE: Future tasks? - Added by Federico Hernandez 241 days ago
Timothy,
that could be done with the wait attribute.
$ task add wait:5/1/2015 due:6/1/2015 Renew passport
It will then disappear from the normal reports until May 1. To be able to list tasks with a set wait attribute you use the waiting command:
$ task waiting
/Fredde
RE: Future tasks? - Added by Timothy Bourke 241 days ago
Great, that's exactly what I was after.
Thank you Paul and Fredde!
RE: Future tasks? - Added by David Patrick 241 days ago
When date-references get a bit more sophisticated, you will also be able to go
$ task add Renew passport due:6/1/2015 wait:-2m
to have this task appear on April Fools Day 2015, giving you two months warning.
You should still find this task listed in any query that includes it explicitly, as in
$ task ls passport
and maybe even
$ task long due.after:2012
To include waiting tasks in the interactive ui reports, visibility of waiting tasks will be toggled with the (z) key.
At the cli, include waiting tasks using the "-z" flag, like
$ task -z list
To see the Waiting tasks report in (upcoming) interactive mode, hit the (W)aiting key,
At the cli, the report can simply be invoked with
$ task waiting
To mark a task as waiting interactively, select the task(s), hit (w) and a prompt will ask
mark (4) selected tasks as wait:-default- >
a default wait-value (eg "later" or "+1w", as set in .rc) will be chosen by hitting just <enter>, otherwise
enter the date, date-reference or a quoted text string
and hit <enter>
If selected tasks already have a wait-value, hitting (w) and then <enter> will clear it.
Command-line like most other attributes, but allowing more than one data type.
$ task ID(s) wait:< date | dateref | string >
and is cleared with
$ task ID(s) wait:< enter >
The -w flag will be used to assign the default wait-value to a task, or clear it, if there already is one
$ task -w add foo # creates ID foo wait:later
and
$ task -w ID pri:l # would clear "wait:+1w",
if it existed, assign it if it didn't, change the priority
and explain what's happening in a nice clear dialog.
Planned enhancements to the command structure will enable a set of records to be chosen and then actions performed against that set,
so that a project or tasks tagged with something specific, can be delayed or ignored using a command like
$ task proj:fubar +Baz update wait:+2w ann:"brainstorm and regroup"
to have everything tagged with +Baz and assigned to project:fubar disappear for two weeks, with an annotation explaining why
RE: Future tasks? - Added by David Patrick 241 days ago
Paul Beckingham wrote:
A task can exist in several states, (pending, done, deleted ...) including "waiting".
.. although recent revelations suggest that the state status:waiting may be unnecessary, and therefor dropped,
all of the examples listed on this page should still behave as indicated.. eventually.
The actions currently triggered by status:waiting will use instead wait:<not-nul>
This is only a clarification of the underlying mechanics, nothing to worry about, read, on.
RE: Future tasks? (wait: ) - Added by Gleb Javorsky 211 days ago
Hello,
I have as tasks "watch film Surrogates", "watch house.m.d season 6" etc. I'd like to hide those tasks and see them only when I, for example, do "task waiting +video".
Please advice, what should I use as argument for wait: ? I don't want to provide here a definite date. Is there already wait:later implemented?
also, maybe that will be interesting for you:
>task 8 info
Name Value
ID 8
Status Pending
...
>task 8 status:wait
Modified 1 task
>task 8 info
Name Value
ID 8
Status Waiting
...
>task waiting
No matches.
>task 8 info
Name Value
ID 8
Status Pending
...
RE: Future tasks? (wait: ) - Added by David Patrick 211 days ago
Gleb Javorsky wrote:
I have as tasks "watch film Surrogates", "watch house.m.d season 6" etc. I'd like to hide those tasks and see them only when I, for example, do "task waiting +video". Please advice, what should I use as argument for wait: ? I don't want to provide here a definite date. Is there already wait:later implemented?
"task wait:something" functionality may be experiencing some growing pains, and I'm not sure how much has been implemented and how much cruft from the older way remains,
Here's how it should work;
$ task 55 wait:2010-02-21
should cause that task to be hidden until the date
$ task 55 wait:later
should cause that task to be hidden indefinitely, unless found by an explicit query
(any not-nul value should hide it from view, so "task 55 wait:aliens-landing" would work as well)
$ task 55 status:wait
should no longer work (use of status for wait = deprecated)
The "wait:non-date" feature should work for you, for now, but a planned feature (user-defined-exclusions) is actually closer to what you need here.
With user-defined exclusions in place, you'll be able to identify any attribute that will hide the task under most circumstances.
(in .taskrc)
exclude=tag:video
should be all you will need to keep your whole TV viewing schedule from cluttering up your actual tasks, eventually.
Till then, using "wait:something", you should be able to see your shows with something like
$ task long +video
or
$task list wait:later
or
$task ls house.m.dRE: Future tasks? (wait: ) - Added by Gleb Javorsky 210 days ago
Thank you for reply, David.
For me works:$ task 55 wait:2010-02-21 $ task 55 wait:tomorrow
But I get:
$ task 55 wait:later "later" is not a valid date.
My version of TW is 1.8.5. Maybe this is the reason.
Anyways I'll be waiting for User-defined Exclusions in 2.1.x - Wakizashi.
RE: Future tasks? (wait: ) - Added by Paul Beckingham 210 days ago
Hi Gleb,
Task 1.8.5 is the latest release, so this works:
task 123 wait:YYYY-MM-DD task 123 wait:tomorrow task 123 wait:friday task 123 wait:31st
But the following:
task 123 wait:later
is not yet implemented. Don't forget that your setting of the config variable "dateformat" determines how that very first example is parsed.