todoman
Manage to-do lists from the command line
TLDR
View documentation for the original command
SYNOPSIS
todoman [OPTIONS] COMMAND [ARGS]
PARAMETERS
help
Show program's help message and exit.
version
Show program's version number and exit.
due [DATE]
Show todos due on given date (defaults to today).
list [LIST]
List todos in the specified list (default: all lists).
new [LIST] TEXT
Create a new todo in the specified list with the given text.
done ID
Mark the todo with the given ID as done.
undone ID
Mark the todo with the given ID as not done.
edit ID
Edit the todo with the given ID.
delete ID
Delete the todo with the given ID.
priority ID [PRIORITY]
Set/show the priority of the todo with the given ID.
organize
Organize all todo files to their proper location.
DESCRIPTION
Todoman is a command-line tool for managing TODO lists. It's designed to be simple, fast, and calendar-agnostic, storing tasks as iCalendar files. This allows you to synchronize your tasks across multiple devices using standard calendar synchronization tools like caldav, avoiding vendor lock-in and enabling maximum control over your data. Todoman focuses on core functionality: adding, listing, completing, and editing tasks. It avoids complex features and emphasizes a streamlined workflow suitable for command-line enthusiasts. It reads the iCalendar files that you define and gives you the ability to manage them. Todoman can be easily integrated with text-based workflows using editors like Vim or Emacs. Configuration is done through a simple configuration file, making it easy to adapt to different needs.
CAVEATS
Todoman relies on proper configuration to function correctly. Ensure that your configuration file points to valid iCalendar directories and is correctly formatted. It uses plain text iCalendar files, so any formatting limitations of those files will apply. The command does not provide advanced features such as recurring tasks natively, which may require external tools or clever usage of iCalendar features.
CONFIGURATION
Todoman requires a configuration file, typically located at ~/.config/todoman/config.py
. This file specifies the location of your todo lists (iCalendar directories), default list, and other settings. Refer to the official Todoman documentation for a detailed explanation of configuration options.
Example: lists = [{'name': 'Work', 'path': '~/.calendars/work', 'readonly': False}, {'name': 'Home', 'path': '~/.calendars/home', 'readonly': False}]
SYNCHRONIZATION
Todoman by itself, doesn't synchronize to-do lists. This is done with external synchronization tools which supports the caldav protocol.
One of the tools which fits this purpose is vdirsyncer which needs to be installed seperatly.
HISTORY
Todoman was developed to provide a simple, text-based alternative to graphical todo management applications. Its development focuses on ease of use, minimal dependencies, and integration with standard calendar formats. The initial versions were focused on core functionality, with later releases adding features such as priority management and improved listing options. The design philosophy emphasizes stability and avoiding feature bloat.
SEE ALSO
caldav(1), vdirsyncer(1)