Todo.txt for Android—Recurring tasks

Task recurrence is available as an experimental feature in Todo.txt for Android. I will also add this to the Todo.txt for Chrome at some point.

Todo.txt for Android implements recurrence based on normal recurrence mode in the topydo app.

Tag used for recurrence is ‘rec:‘. It accepts values as numbers suffixed with a period indicator, e.g. ‘rec:1w‘ to repeat after a week. Accepted period indicators are:

  • d‘ for days
  • w‘ for weeks
  • m‘ for months
  • y‘ for years

Recurrence is applied when a task is completed.

When a task is marked completed in the Todo.txt for Android app, the app creates a new task with dates delayed by the recurrence period.

You may also add or change recurrence for a task using the recurrence button on the edit task screen.

Example

Say, we have a monthly task in the app:

(B) 2020-01-01 Update user numbers in spreadsheets +apps due:2020-01-05 t:2020-01-03 rec:+1m

Upon completion, this task is replaced by two tasks:

(B) 2020-02-01 Update user numbers in spreadsheets +apps due:2020-02-05 t:2020-02-03 rec:+1m
x 2020-02-03 2020-01-01 Update user numbers in spreadsheets +apps due:2020-01-05 rec:+1m pri:B

The original task, with creation date on Jan 1st is marked as completed. A new task is created with both creation and due dates delayed to February.

Searching

Search for recurring tasks using tag: ‘is:rec‘. The tag can also be negated to list non-repeating tasks: ‘-is:rec‘.

Known issues

  1. There is no support for strict recurrence as defined in the topydo documentation.
  2. If a recurring task is changed back to pending after marking complete, the next recurring copy stays in the task list.
  3. Using ‘undo‘ after marking a recurring task complete also leaves the recurring copy of the task in the list.
  4. Recurring tasks marked complete in another app will not have a recurring copy created. Unless the other app, e.g. topydo, has also implemented recurrence and creates a copy.

 


Implementation of recurrence is still in early stages. Please use the in-app feedback form to share feedback about this feature.