Skip to main content

An Ubuntu app indicator for todo.txt-style todo lists

Project description

todo-indicator

An Ubuntu app indicator for todo.txt-style todo lists.

todo-indicator indicating

Installation

Install todo-indicator with pip:

pip install todo-indicator

However, todo-indicator has some system dependencies which pip can't satisfy. The following should ensure you have everything you need:

sudo apt install python3-pyinotify python3-gi gir1.2-appindicator3-0.1

(The above is verified working on Ubuntu 20.04 and 22.04. I can't speak for other versions or distros, but it will likely be something similar.)

You can also simply clone the repo and run the provided todo-indicator binary directly, without installing it. You'll still need to install the required dependencies as described above, however.

Requirements

  • Python 3
  • The above-mentioned system dependencies
  • An app-indicator-aware system tray of some kind (you might need a plugin if you're running a non-Ubuntu distro)

Usage

Just run todo-indicator, passing the name of your todo.txt file as an argument, e.g.:

todo-indicator ~/todo.txt

Click the indicator icon to see your list. If you finish one of your tasks, give yourself a pat on the back and click it! It'll be marked "done."

Editing your list

todo-indicator's goal is to show you your list and let you check items off. Anything more complex than that, you'll want to use your trusty text editor.

Click "Edit todo.txt" and your todo list will open in your text editor of choice. (Or your OS's text editor of choice, at least -- it uses xdg-open.) Once you've made your changes and saved the file, you should see your updates automatically reflected in the todo-indicator UI. (Thanks, inotify!)

If for some reason the indicator doesn't update, click "Refresh".

Command-line options

Use -e/--editor to specify a text editor other than your default:

todo-indicator -e gvim ~/todo.txt

todo-indicator assumes a dark-colored panel by default. If you use a light-colored panel, you can pass the -i/--invert option to invert the icon color:

todo-indicator -i ~/todo.txt

Contributing

Check the Makefile for some common operations like code formatting, linting, and running unit tests.

If you install/run todo-indicator inside a virtual env (usually recommended for development), you'll need to install the dependencies from the requirements.txt file:

pip install -r requirements.txt

This includes PyGObject, which itself needs some extra development dependencies to be installed on your system. See the PyGObject docs for more info.

Alternatively, you can skip this step, install the "normal" system-level dependencies from the Installation section, and create your virtual env with the --system-site-packages option:

python -m venv --system-site-packages .venv

This will allow your local, virtual env version of todo-indicator to import your system-level python libraries (in particular the gi package).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

todo_indicator-0.7.0.tar.gz (176.4 kB view details)

Uploaded Source

Built Distribution

todo_indicator-0.7.0-py3-none-any.whl (28.6 kB view details)

Uploaded Python 3

File details

Details for the file todo_indicator-0.7.0.tar.gz.

File metadata

  • Download URL: todo_indicator-0.7.0.tar.gz
  • Upload date:
  • Size: 176.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for todo_indicator-0.7.0.tar.gz
Algorithm Hash digest
SHA256 b1cf1381ded55734cdbc4d82c8c376429e9be6092c5e2ccda192006c07bbfcbc
MD5 692c9d2eed7ba5b40ace5cc76bbdbcd2
BLAKE2b-256 c5330c48bcc33d9249eb68c50c8505eb9255d44192a3e5122b136b13f7928848

See more details on using hashes here.

File details

Details for the file todo_indicator-0.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for todo_indicator-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0704efaff1e994ff3723aa5b380515b7429316fc12ab28cbaf5a36fc134e4ab
MD5 8294a4e46fd4787403d8ee3ed05e4cdb
BLAKE2b-256 bb706121532f365703b02b2c9e4814176ce823225264d7c5663db6fef6fb59a6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page