# todo-indicator
An Ubuntu app indicator for [todo.txt](http://todotxt.org/)-style todo lists.
![todo-indicator indicating](https://raw.github.com/keithfancher/todo-indicator/master/todo-indicator-shot.png)
## Installation
Install `todo-indicator` with `pip`:
```bash
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:
```bash
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.:
```bash
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:
```bash
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:
```bash
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:
```bash
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](https://gnome.pages.gitlab.gnome.org/pygobject/getting_started.html#ubuntu-logo-ubuntu-debian-logo-debian)
for more info.
Alternatively, you can skip this step, install the "normal" system-level
dependencies from the [Installation](#installation) section, and create your
virtual env with the `--system-site-packages` option:
```bash
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).
Raw data
{
"_id": null,
"home_page": null,
"name": "todo-indicator",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": null,
"keywords": "appindicator, indicator, todo, todo.txt",
"author": "Keith Fancher",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/c5/33/0c48bcc33d9249eb68c50c8505eb9255d44192a3e5122b136b13f7928848/todo_indicator-0.7.0.tar.gz",
"platform": null,
"description": "# todo-indicator\n\nAn Ubuntu app indicator for [todo.txt](http://todotxt.org/)-style todo lists.\n\n![todo-indicator indicating](https://raw.github.com/keithfancher/todo-indicator/master/todo-indicator-shot.png)\n\n\n## Installation\n\nInstall `todo-indicator` with `pip`:\n\n```bash\npip install todo-indicator\n```\n\nHowever, **todo-indicator has some system dependencies which `pip` can't\nsatisfy**. The following should ensure you have everything you need:\n\n```bash\nsudo apt install python3-pyinotify python3-gi gir1.2-appindicator3-0.1\n```\n\n(The above is verified working on Ubuntu 20.04 and 22.04. I can't speak for\nother versions or distros, but it will likely be something similar.)\n\nYou can also simply clone the repo and run the provided `todo-indicator`\nbinary directly, without installing it. You'll still need to install the\nrequired dependencies as described above, however.\n\n\n## Requirements\n\n* Python 3\n* The above-mentioned system dependencies\n* An app-indicator-aware system tray of some kind (you might need a plugin if\n you're running a non-Ubuntu distro)\n\n\n## Usage\n\nJust run `todo-indicator`, passing the name of your `todo.txt` file as an\nargument, e.g.:\n\n```bash\ntodo-indicator ~/todo.txt\n```\n\nClick the indicator icon to see your list. If you finish one of your tasks,\ngive yourself a pat on the back and click it! It'll be marked \"done.\"\n\n\n### Editing your list\n\n`todo-indicator`'s goal is to show you your list and let you check items off.\nAnything more complex than that, you'll want to use your trusty text editor.\n\nClick \"Edit todo.txt\" and your todo list will open in your text editor of\nchoice. (Or your OS's text editor of choice, at least -- it uses `xdg-open`.)\nOnce you've made your changes and saved the file, you should see your updates\nautomatically reflected in the `todo-indicator` UI. (Thanks, `inotify`!)\n\nIf for some reason the indicator doesn't update, click \"Refresh\".\n\n\n### Command-line options\n\nUse `-e`/`--editor` to specify a text editor other than your default:\n\n```bash\ntodo-indicator -e gvim ~/todo.txt\n```\n\n`todo-indicator` assumes a dark-colored panel by default. If you use a\nlight-colored panel, you can pass the `-i`/`--invert` option to invert the\nicon color:\n\n```bash\ntodo-indicator -i ~/todo.txt\n```\n\n\n## Contributing\n\nCheck the `Makefile` for some common operations like code formatting, linting,\nand running unit tests.\n\nIf you install/run `todo-indicator` inside a virtual env (usually recommended\nfor development), you'll need to install the dependencies from the\n`requirements.txt` file:\n\n```bash\npip install -r requirements.txt\n```\n\nThis includes `PyGObject`, which itself needs some extra development\ndependencies to be installed on your system. See [the PyGObject\ndocs](https://gnome.pages.gitlab.gnome.org/pygobject/getting_started.html#ubuntu-logo-ubuntu-debian-logo-debian)\nfor more info.\n\nAlternatively, you can skip this step, install the \"normal\" system-level\ndependencies from the [Installation](#installation) section, and create your\nvirtual env with the `--system-site-packages` option:\n\n```bash\npython -m venv --system-site-packages .venv\n```\n\nThis will allow your local, virtual env version of `todo-indicator` to import\nyour system-level python libraries (in particular the `gi` package).\n",
"bugtrack_url": null,
"license": null,
"summary": "An Ubuntu app indicator for todo.txt-style todo lists",
"version": "0.7.0",
"project_urls": {
"GitHub": "https://github.com/keithfancher/todo-indicator"
},
"split_keywords": [
"appindicator",
" indicator",
" todo",
" todo.txt"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "bb706121532f365703b02b2c9e4814176ce823225264d7c5663db6fef6fb59a6",
"md5": "8294a4e46fd4787403d8ee3ed05e4cdb",
"sha256": "f0704efaff1e994ff3723aa5b380515b7429316fc12ab28cbaf5a36fc134e4ab"
},
"downloads": -1,
"filename": "todo_indicator-0.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8294a4e46fd4787403d8ee3ed05e4cdb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3",
"size": 28570,
"upload_time": "2024-03-26T03:49:40",
"upload_time_iso_8601": "2024-03-26T03:49:40.045462Z",
"url": "https://files.pythonhosted.org/packages/bb/70/6121532f365703b02b2c9e4814176ce823225264d7c5663db6fef6fb59a6/todo_indicator-0.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c5330c48bcc33d9249eb68c50c8505eb9255d44192a3e5122b136b13f7928848",
"md5": "692c9d2eed7ba5b40ace5cc76bbdbcd2",
"sha256": "b1cf1381ded55734cdbc4d82c8c376429e9be6092c5e2ccda192006c07bbfcbc"
},
"downloads": -1,
"filename": "todo_indicator-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "692c9d2eed7ba5b40ace5cc76bbdbcd2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 176445,
"upload_time": "2024-03-26T03:49:42",
"upload_time_iso_8601": "2024-03-26T03:49:42.121362Z",
"url": "https://files.pythonhosted.org/packages/c5/33/0c48bcc33d9249eb68c50c8505eb9255d44192a3e5122b136b13f7928848/todo_indicator-0.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-26 03:49:42",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "keithfancher",
"github_project": "todo-indicator",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "todo-indicator"
}