🚨 Danger Zone: This software is battle tested. We here at Import Google
Tasks To Taskwarrior do hope it saves you some time and frustration, but please
don't blindly run it against your production database (of tasks). It has been
used successfully on macOS 10.13.5 (17F77) with node
v10.4.0 and task
2.5.1.
Reads a JSON export from Google Takeout of Google Tasks and runs
Taskwarrior shell commands (task
) on your system to import the tasks.
-
Each "list" from Google Tasks is added verbatim as the
project:
for the task in the Taskwarrior command.Protip: If your task lists in Google Tasks contain Emojis and such, best sanitize those out of your JSON payload first.
-
If a task contains notes (the text box below with extra details), they are added as a single annotation
-
Subtasks for a Google Task are added as dependencies of their parent task using
depends:
. -
All imported tasks are assigned a Taskwarrior tag "googleTasks" (
+googleTasks
) to keep track of what was imported.Protip: If you want to further modify tasks after importing, run
task +googleTasks modify [[YOUR MODS]]
to do them all at once. -
Completed tasks from the Google export are still added, using the
task log
command to mark them as done on arrival.
- Use chalk for nice output
- Annotate every task with the original JSON
- Support due dates
- Handle adding indented tasks from Google as blocking tasks in Taskwarrior
- Deal with tasks that are linked to Gmail messages
- Have an option to pull directly from the Google Tasks API
npm install -g google-tasks-taskwarrior-import
google-tasks-taskwarrior-import ~/path/to/Tasks.json
# profit
There isn't much error handling, due to budget concerns for the current fiscal.
If an import exits with errors, you can likely run task +googleTasks delete
to
destroy all imported tasks and try again after debugging.