toddi

Crates.iotoddi
lib.rstoddi
version
sourcesrc
created_at2024-12-02 12:51:39.580243
updated_at2024-12-19 19:23:53.679248
descriptionA TODO focuser built on top of todo.txt
homepagehttps://sr.ht/~ume_tantan/toddi/
repositoryhttps://git.sr.ht/~ume_tantan/toddi
max_upload_size
id1468610
Cargo.toml error:TOML parse error at line 19, column 1 | 19 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Nathan Lövsund (tanael)

documentation

README

toddi

Want to get things done? Pick a task, do it, and move on to the next one.

toddi will tell you exactly what to focus on, per project, based on your todo.txt tasks.

Why?

Why not?

I've been using todo.txt regularly for a few months, and I noticed that:

  1. I get distracted by the list of tasks.
  2. I can't be bothered to learn the various command line arguments to filter out the output
  3. I needed a way to focus on one task (the most important)

Hence, toddi. I'm building it to fit my purpose.

Which also turned out to be a good excuse to practice some Rust.

Requirements

At this stage, toddi is meant to be used with todo.txt, unless you are willing to spend time manually moving TODOs to done.txt with the correct formatting.

By default, the program assumes the default todo.txt paths in the absence of the relevant optional input:

  • ~/.todo-txt/todo.txt
  • ~/.todo-txt/done.txt

Task line format specification

The format for a task line should conform to todo.txt documentation.

E.g.:

(PRIO) Task's short description +project @context

The priority (PRIO) field is a single capital letter enclosed within parenthesis. Only one is allowed.

The task description field is a contiguous alphanumerical space-separated multiple-word sentence. It tolerates the following special non-alphanumerical characters: . _ - ' (i.e. dot, underscore, dash and apostrophe). Any other will invalidate the line.

The project field is an alphanumerical single word preceded by a + (plus) sign. Only one is allowed.

The context field is an alphanumerical single word preceded by a @ (at) sign. Only one is allowed.

The context and project fields can switch place between each other.

The format for a done line looks like this:

Done line format specification

x YYYY-MM-DD Task's short description +project @context

Note the x on the left.

Usage

If you trust your planning and just need a way to focus on the next task, use:

$ toddi

Display next todo.txt task for project myproject (i.e. +myproject on the task line) and a progress bar indicating the project's level of completion.

$ toddi focus myproject

Use --help for more information:

$ toddi --help

Configuration

A TOML configuration file is expected at the standard XDG_CONFIG_HOME location: $HOME/.config/toddi/config.toml

If not present, it will be automatically created and populated with mandatory default values on first use.

todo_file = "/home/user/.todo-txt/todo.txt"
done_file = "/home/user/.todo-txt/done.txt"

License

source : GPL-3.0-or-later

Commit count: 0

cargo fmt