tudu man page

TuDu — A command-line tool to manage TODO lists hierarchically.

Synopsis

tudu [-f tudu_file] [-c config_file] [-v[v]] [-h]

Description

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:

StatusCurrently only two options: Pending and Done.
TitleA short sentence summarizing the task.
Description textA longer text providing more details. (Optional)
PriorityThe urgency of the task. (Optional)
CategoryA short tag such as @home, @work, @inet. (Optional)
DeadlineThe latest date the task should be done. (Optional)
Scheduled dateThe planned date to do the task. (Optional)
SubtasksEvery 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.

Options

-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.

Interface

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.

Commands

hide category1 category2 ... categoryN
Hide one or more categories.
show category1 category2 ... categoryN
Display one or more categories.
showall
Display all the categories.
showonly category1 category2 ... categoryN
Hide all the categories except the ones given.
help
Display the man page.

Config

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:

general

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'

keys

This section defines any key binding on the program. See the example in the default config file.

theme

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.

Files

~/.tudurc
User configuration file.
/etc/tudurc
Global configuration file.
~/.tudu.xml
User default tudu.

No Warranties

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.

See Also

TuDu Home Page: http://www.cauterized.net/~meskio/tudu/

Author

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.

Info

January 09, 2010 Unix User Manuals