mirror of
https://git.webmeisterei.com/webmeisterei/todoist-taskwarrior.git
synced 2023-12-21 10:23:00 +01:00
61 lines
1.5 KiB
Markdown
61 lines
1.5 KiB
Markdown
# todoist-taskwarrior
|
|
|
|
A tool for migrating Todoist tasks to Taskwarrior.
|
|
|
|
## Usage
|
|
|
|
Running the tool requires that your Todoist API key is available from the
|
|
environment under the name `TODOIST_API_KEY`. The key can be found or created in
|
|
the [Todoist Integrations Settings](https://todoist.com/prefs/integrations).
|
|
|
|
The main task is `migrate` which will import all tasks. Since Todoist's internal
|
|
ID is saved with the task, subsequent runs will detect and skip duplicates:
|
|
|
|
```sh
|
|
$ python -m todoist_taskwarrior.cli migrate --help
|
|
Usage: cli.py migrate [OPTIONS]
|
|
|
|
Options:
|
|
-i, --interactive
|
|
--no-sync
|
|
--help Show this message and exit.
|
|
```
|
|
|
|
Using the `--interactive` flag will prompt the user for input for each task,
|
|
allowing the task to be modified before import:
|
|
|
|
```sh
|
|
$ python -m todoist_taskwarrior.cli migrate --interactive
|
|
Task 1 of 315: Work on an open source project
|
|
|
|
tid: 142424242
|
|
name: Work on an open source project
|
|
project: Open Source
|
|
priority:
|
|
tags:
|
|
entry: 2019-01-18T12:00:00+00:00
|
|
due: 2019-01-21T17:00:00+00:00
|
|
recur: 3 days
|
|
```
|
|
|
|
By default, `migrate` will refetch all tasks from Todoist on each run. To skip
|
|
this step and use the cached data without refetching, use the --no-sync flag.
|
|
|
|
The flags `--map-project` and `--map-tag` can be specified multiple times to translate or completely remove specific flags
|
|
|
|
```sh
|
|
$ python -m todoist_taskwarrior.cli migrate \
|
|
--map-project Errands=chores \
|
|
--map-project 'XYZ Corp'=work \
|
|
--map-tag books=reading
|
|
```
|
|
|
|
## Development
|
|
|
|
### Testing
|
|
|
|
```sh
|
|
$ python -m pytest tests
|
|
```
|
|
|