Changes
⚠️ Requires obsidian 12.0.0 or higher!
Complete rewrite of the plug-in. It now utilizes the new capabilities of the metadata cache that were introduced in obsidian 12.
This is the first (pre-)release of the rewrite.
I have not tested it extensively, yet. I will do that this coming week by using it as my daily driver.
Check the readme for details.
Tracking Tasks
Tasks are no longer tracked by specific identifiers like - TODO
. Instead, regular checklist items are treated as tasks.
Global Filter
There are now settings and they include a global filter. A global filter filters checklist items so that you can have checklist items which aren't tasks.
As an example, you could set your global filter to #task
. It can be any string. It doesn't have to be a tag. If it is set, a checklist item has to have the defined global filter on its line.
Example:
- [ ] #task this would be considered a task with a due date 📅 2021-04-23
- [ ] this as well #task
- [x] and also this #task 📅 2021-03-03 ✅ 2021-04-04
- [ ] this is a regular checklist item and not a task (won't have done date or appear in queries)
Migration Support
I understand that this is a big change and potentially means a lot of work for you, as you need to change all existing tasks to be in the new format if you want to migrate to this version. Contact me if you need help with this.
If you know how to use sed
on the command line, you can do the following. I tested it only on Linux. I know that macOS' sed
has some peculiarities, so I am not sure whether it works on macOS.
If you try these, make sure first that you have a backup of your vault!
Moving to the new model with #task as the task identifier:
# From within your vault directory:
sed -i 's/- TODO/- \[ \] #task/' ./**/*.md
sed -i 's/- DONE/- \[x\] #task/' ./**/*.md
Without any global filter:
# From within your vault directory:
sed -i 's/- TODO/- \[ \]/' ./**/*.md
sed -i 's/- DONE/- \[x\]/' ./**/*.md