# full-todotxt
[![PyPi version](https://img.shields.io/pypi/v/full_todotxt.svg)](https://pypi.python.org/pypi/full_todotxt) [![Python 3.8|3.9|3.10|3.11](https://img.shields.io/pypi/pyversions/full_todotxt.svg)](https://pypi.python.org/pypi/full_todotxt)
[todotxt](https://github.com/todotxt/todo.txt) interactive interface that forces you to specify certain attributes.
<img src="https://raw.githubusercontent.com/seanbreckenridge/full_todotxt/master/.github/demo.gif" alt="demo gif">
For each todo, you have to specify at least `one project tag` (e.g. `+work`) and a priority `(A)`.
Though not required for each todo, it will prompt you want to specify a `deadline`, which will store a `deadline` key-value pair to the todo with the datetime as the value.
For example:
```
(A) measure space for shelving +home deadline:2020-05-13-15-30
```
... which specifies 2020-05-13 at 3:30PM.
If the `todo.txt` file is not provided as the first argument, it tries to guess based on typical locations
The `my.todotxt.active` module in [HPI](https://github.com/seanbreckenridge/HPI) parses the deadline back into python:
```
$ hpi query my.todotxt.active.todos -s | jq 'select(.deadline) | .raw' -r
(C) 2023-10-01 drink water +self deadline:2023-10-02T00-00-0700
```
## Installation
#### Requires:
`python3.8+`
To install with pip, run:
python3 -m pip install full-todotxt
## Usage
```
Usage: full_todotxt [OPTIONS] [TODOTXT_FILE]
If TODOTXT_FILE is not specified, the environment variable FULL_TODOTXT_FILE will be used.
Options:
--add-due / --no-add-due Add due: key/value flag based on deadline: [default: no-add-due]
-t, --time-format TEXT Specify a different time format for deadline: [env var: FULL_TODOTXT_TIME_FORMAT;
default: %Y-%m-%d-%H-%M]
-f, --full-screen / -p, --prompts
Use prompts or the full screen dialog editor [default: full-screen]
-h, --help Show this message and exit.
```
This checks many possible locations for the `todo.txt` file:
- `TODOTXT_FILE` passed to `full_todotxt`
- `$FULL_TODOTXT_FILE` environment variable
- `$TODO_DIR/todo.txt`
- `$XDG_CONFIG_HOME/todo/todo.txt`
- `~/.config/todo/todo.txt`
- `~/.todo/todo.txt`
- `~/.todo.txt`
- `~/todo.txt`
Raw data
{
"_id": null,
"home_page": "https://github.com/seanbreckenridge/full_todotxt",
"name": "full-todotxt",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "todotxt todo.txt todo",
"author": "Sean Breckenridge",
"author_email": "\"seanbrecke@gmail.com\"",
"download_url": "https://files.pythonhosted.org/packages/55/d9/aace5d040dad9c8192848d4afdbeea3598a067115b5087285ad80241d926/full_todotxt-0.2.4.tar.gz",
"platform": null,
"description": "# full-todotxt\n\n[![PyPi version](https://img.shields.io/pypi/v/full_todotxt.svg)](https://pypi.python.org/pypi/full_todotxt) [![Python 3.8|3.9|3.10|3.11](https://img.shields.io/pypi/pyversions/full_todotxt.svg)](https://pypi.python.org/pypi/full_todotxt)\n\n[todotxt](https://github.com/todotxt/todo.txt) interactive interface that forces you to specify certain attributes.\n\n<img src=\"https://raw.githubusercontent.com/seanbreckenridge/full_todotxt/master/.github/demo.gif\" alt=\"demo gif\">\n\nFor each todo, you have to specify at least `one project tag` (e.g. `+work`) and a priority `(A)`.\n\nThough not required for each todo, it will prompt you want to specify a `deadline`, which will store a `deadline` key-value pair to the todo with the datetime as the value.\n\nFor example:\n\n```\n(A) measure space for shelving +home deadline:2020-05-13-15-30\n```\n\n... which specifies 2020-05-13 at 3:30PM.\n\nIf the `todo.txt` file is not provided as the first argument, it tries to guess based on typical locations\n\nThe `my.todotxt.active` module in [HPI](https://github.com/seanbreckenridge/HPI) parses the deadline back into python:\n\n```\n$ hpi query my.todotxt.active.todos -s | jq 'select(.deadline) | .raw' -r\n(C) 2023-10-01 drink water +self deadline:2023-10-02T00-00-0700\n```\n\n## Installation\n\n#### Requires:\n\n`python3.8+`\n\nTo install with pip, run:\n\n python3 -m pip install full-todotxt\n\n## Usage\n\n```\nUsage: full_todotxt [OPTIONS] [TODOTXT_FILE]\n\n If TODOTXT_FILE is not specified, the environment variable FULL_TODOTXT_FILE will be used.\n\nOptions:\n --add-due / --no-add-due Add due: key/value flag based on deadline: [default: no-add-due]\n -t, --time-format TEXT Specify a different time format for deadline: [env var: FULL_TODOTXT_TIME_FORMAT;\n default: %Y-%m-%d-%H-%M]\n -f, --full-screen / -p, --prompts\n Use prompts or the full screen dialog editor [default: full-screen]\n -h, --help Show this message and exit.\n```\n\nThis checks many possible locations for the `todo.txt` file:\n\n- `TODOTXT_FILE` passed to `full_todotxt`\n- `$FULL_TODOTXT_FILE` environment variable\n- `$TODO_DIR/todo.txt`\n- `$XDG_CONFIG_HOME/todo/todo.txt`\n- `~/.config/todo/todo.txt`\n- `~/.todo/todo.txt`\n- `~/.todo.txt`\n- `~/todo.txt`\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "todotxt interactive interface that forces you to specify attributes",
"version": "0.2.4",
"project_urls": {
"Homepage": "https://github.com/seanbreckenridge/full_todotxt"
},
"split_keywords": [
"todotxt",
"todo.txt",
"todo"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "cf85791585336961d0946efcac0c57170b2bd5510a1222cd22fb98fb4772bb5c",
"md5": "4c99f7c2742e8a7c419912cb3db0f4a2",
"sha256": "327295569d56ea738e199a719cc987c2557026c7cfc7adcefddba64ec2219ca8"
},
"downloads": -1,
"filename": "full_todotxt-0.2.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4c99f7c2742e8a7c419912cb3db0f4a2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7782,
"upload_time": "2023-10-27T20:55:27",
"upload_time_iso_8601": "2023-10-27T20:55:27.717422Z",
"url": "https://files.pythonhosted.org/packages/cf/85/791585336961d0946efcac0c57170b2bd5510a1222cd22fb98fb4772bb5c/full_todotxt-0.2.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "55d9aace5d040dad9c8192848d4afdbeea3598a067115b5087285ad80241d926",
"md5": "9b5425576af323c1d61cad907fb3cd59",
"sha256": "e63c3fcfd8785628c7008da1f683477bfef0bfbdffab47aaae404adde607c885"
},
"downloads": -1,
"filename": "full_todotxt-0.2.4.tar.gz",
"has_sig": false,
"md5_digest": "9b5425576af323c1d61cad907fb3cd59",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 7055,
"upload_time": "2023-10-27T20:55:29",
"upload_time_iso_8601": "2023-10-27T20:55:29.777067Z",
"url": "https://files.pythonhosted.org/packages/55/d9/aace5d040dad9c8192848d4afdbeea3598a067115b5087285ad80241d926/full_todotxt-0.2.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-27 20:55:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "seanbreckenridge",
"github_project": "full_todotxt",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "full-todotxt"
}