Chained To-Dos (i.e. a todo that is only visible if a previous todo is marked as "done")

Use case or problem

I want to be more productive. This starts with enumerating all the things I have to do and having them in front of me, prioritized, in a list e.g.

  • task A
  • task B
  • etc

The problem is… usually this list is huge. And I am weak-willed. Or maybe I have ADHD, anxiety, a lack of executive function, or some combination thereof.

So, what happens is, I see this huge list, I get overwhelmed, and I blow everything off and get on Twitter (or similar).

What would be AMAZING is if I could create my to-do list, but then later when I look at it, it only shows me the highest priority thing. Then, when I mark it as complete, it shows me the next thing.

I don’t want to have to think about anything else on the list other than what’s the top priority. I don’t want to know about it, I want it to not exist until I have to do it.

Proposed solution

Technically, I’m not sure what the most optimal way to implement this is, but it seems like a block reference + some “is this a task? if so, is it done? okay, toggle visibility. if not, no visibility” check would do the trick.

  • [x] DONE TASK (reference id: d0n3)

  • [ ] UNDONE TASK (reference id: und0n3)

  • [ ][[currentfile#^d0n3]] This task will show up because it’s linked to a done task

  • [ ][[currentfile#^und0n3]] This task will not show up because it’s linked to an undone task

Current workaround (optional)

The closest workaround I have… and this is really hacky, but with my todo list, whenever I check something off, I always put a bunch of new lines between the current thing and everything else, e.g.

Task A

Task B
Task C

1 Like