TuDu - A command-line tool to manage TODO lists
hierarchically.
tudu [-f tudu_file] [-c
config_file] [-v[v]] [-h]
TuDu is a commandline tool to manage hierarchical TODO
lists, so that you can organize everything you have to do in a simple and
efficient way. It does not use any database backend, but plain XML
files.
Every TODO is composed by:
Status |
Currently only two options: Pending and Done. |
Title |
A short sentence summarizing the task. |
Description text |
A longer text providing more details. (Optional) |
Priority |
The urgency of the task. (Optional) |
Category |
A short tag such as @home, @work, @inet. (Optional) |
Deadline |
The latest date the task should be done. (Optional) |
Scheduled date |
The planned date to do the task. (Optional) |
Subtasks |
Every task can have any number of subtasks. (Optional) |
Tasks can be ordered by any of those fields, and categories can be
used to show only some certain kinds of tasks. Tudu also warns when a
deadline is approaching, and shows the percentage of the task done so
far.
- -f tudu_file
- Load the given tudu file
- -c config-file
- Load specific config file
- -v
- Display the TuDu version number.
- -vv
- Display license and copyright information.
- -h
- Display help.
All the key bindings described here are the defaults in tudu. They
can be changed in the config file.
- h
- Move the cursor one level out in the tree depth.
- l
- Move the cursor one level in in the tree depth.
- j
- Move the cursor to the next task.
- k
- Move the cursor to the previous task.
- J
- Move a task one position down.
- K
- Move a task one position up.
- m
- Mark a task as done.
- dd
- Delete a task.
- dt
- Remove the deadline of the task.
- df
- Remove the priority of the task.
- dS
- Remove the scheduled date of the task.
- p
- Paste the last deleted task under the current cursor line.
- P
- Paste the last deleted task over the current cursor line.
- V
- Paste the last deleted task as a subtask of the currently selected
task.
- o
- Add new task.
- O
- Add a new task over the current cursor line.
- a
- Edit the title of the task.
- t
- Edit the deadline.
- f
- Set the priority of the task.
- C
- Add or modify the category of the task.
- e
- Edit the description text of the task.
- x
- Scroll the text window upwards.
- z
- Scroll the text window downwards.
- S
- Edit the scheduled date of the task.
- X
- Scroll the schedule window upwards.
- Z
- Scroll the schedule window downwards.
- c
- Collapse or expand the children of the current task.
- M
- Hide or show tasks marked as done.
- /
- Search for a pattern in tasks titles.
- n
- Search the next occurrence of last search.
- N
- Search the previous occurrence of the last searched tasks.
- /
- Search for a pattern in tasks titles.
- n
- Search the next occurrence of last search.
- N
- Search the previous occurrence of the last search.
- :
- Open the command input. See the COMMANDS section.
- bt
- Sort by title.
- bT
- Sort by title in reverse order.
- bd
- Sort by done.
- bD
- Sort by done in reverse order.
- bl
- Sort by deadline.
- bL
- Sort by deadline in reverse order.
- bp
- Sort by priority.
- bP
- Sort by priority in reverse order.
- bc
- Sort by category.
- bC
- Sort by category in reverse order.
- bu
- Sort by user-defined order.
- bU
- Sort by reversed user-defined order.
- bd
- Sort by done.
- bD
- Sort by done in reverse order.
- bl
- Sort by deadline.
- bL
- Sort by deadline in reverse order.
- bp
- Sort by priority.
- bP
- Sort by priority in reverse order.
- bc
- Sort by category.
- bC
- Sort by category in reverse order.
- bu
- Sort by user.
- bU
- Sort by user in reverse order.
- s
- Save all the changes.
- ?
- Display the help.
- q
- Quit tudu saving the last changes.
- Q
- Quit tudu without saving anything.
The config file have several sections which start by a name
between brackets, like [ general ]. Other config files can be
included with the option:
- @include = 'path'
-
The options of each section are:
- collapse =
yes|no
- Collapse the tasks by default.
- hide_done =
yes|no
- Whether to hide tasks marked as done.
- hide_percent =
yes|no
- Whether to hide the percentage display on each task.
- visual_tree =
yes|no
- Toggle graphical tree. It shows marks, like (+) at the left of the
tasks. It is necessary in some shells that can not display bold
characters.
- bold_parent =
yes|no
- Hilight the parents with children with bold letters.
- loop_move =
yes|no
- Whether to jump to the beginning (or end) when the end (or beginning) is
reached.
- days_warn =
number
- How many days before the task is due will the deadline sport a warning
remark. By default is 7.
- us_dates =
yes|no
- Use US date format (mm/dd/yyyy), by default it uses dd/mm/yyyy.
- old_sched =
yes|no
- Whether display or not past scheduled tasks on the scheduler. In case of
yes the scheduled tasks for days already past will be displayed on warn
color.
- tudu_file =
full-path
- Location of the tudu xml to be load if no '-f' parameter is given. The
path have to be a full path. If is not set ~/.tudu.xml will be use.
- sort_order =
string
- Default order in which tasks will be shown. Tasks are ordered by the 1st
letter in the string, then by the 2nd, and so on.
The letters mean:
- t
- title
- T
- reverse title
- d
- done
- D
- reverse done
- l
- deadline
- L
- reverse deadline
- c
- category
- C
- reverse category
- e
- percentage done
- E
- reverse percentage done
- u
- user-defined order
- U
- reverse user-defined order
- editor = 'path_bin
%s'
This section defines any key binding on the program. See the
example in the default config file.
Window positions are described by rows; each row with the
syntax:
row = [height]([width|]window[, [width|]window,
...])
The height and width can be the number of characters or a percentage followed by
%. The possible windows are: help, tree, info, blank, vpipe, hpipe
text, and schedule. The windows help, vpipe and info don't need to have
height, neither hpipe needs to have width, because is predefined as 1. TuDu
will try to guess the non given information.
Other options for the theme are:
- columns =
colm1,...,colmN
- Columns in tree window. The possible columns are: title, priority,
category and deadline.
- category_length
= numChar
- Number of characters to be displayed of the category.
- color = color_text,
color_background
- The default colors for the text and background. If your terminal has
support to change colora the colors can be defined as (r, g, b),
where r, g and b are numbers from 0 to 1000, or with the words: black,
red, green, yellow, blue, magenta, cyan, white, transparent.
- window = color_text,
color_background
- For each window can be defined it's own colors. The colors of vpipe and
hpipe are the same, and defined with the window name pipe.
- selected = color_text,
color_background
- Color for the items under the cursor.
- warn = color_text,
color_background
- Color for the warnings, like the mark of deadline soon or the color of the
task scheduled on the past.
- ~/.tudurc
- User configuration file.
- /etc/tudurc
- Global configuration file.
- ~/.tudu.xml
- User default tudu.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.
TuDu Home Page: https://code.meskio.net/tudu/
TuDu was written by Rubén Pollán Bella
<meskio@sindominio.net>.
This manual page was written by Rubén Pollán Bella
and further improved by Enrique Matías Sánchez.