irrationalistic / atom-tasks

Handle tasks/todo files in atom
MIT License
154 stars 22 forks source link

Show overall progress #70

Closed garygreen closed 5 years ago

garygreen commented 7 years ago

It would be cool once tasks are marked as completed it could keep track via some kind of @progress marker. Something like:

@progress: 2 of 4 completed (50%)

front end booking form:
☐ use more customisable datepicker for frontend
    ☐ disable dates which cannot be selected (before min bookable date)
✔ automatically edit the return details when editing the singles @done(2017-02-21 13:25)
✔ add "Your tickets expire on <date>" at end of the tickets stage @done(2017-02-21 13:43)
irrationalistic commented 7 years ago

I'm not sure this would be the right format; i think it would make more sense to attach the number to the project, but even then it requires some additional dependencies. Like what about nested projects? And nested tasks? I'll keep this open, but i'm not sure what the right solution is here!

Any thoughts?

garygreen commented 7 years ago

Well my initial thoughts are it's intended for the overall progress of all the tasks in the file, regardless of the position of the @progress block or how many subtasks there.

If you wanted to make it more complex, then you could support multiple progress areas wherever there is multiple @progress blocks it will only count the progress for tasks below that block upto the next @progress (if found, or else the end of the document). If you did that, it would make sense to have a @overallprogress too.

I think as proof of concept just keep it simple initially with the first option. It would be pretty cool to have, no?

garygreen commented 7 years ago

Or maybe control how it counts by some special characters : and = and > like:

@progress= outputs the overall progress for all tasks, regardless of position in document.
@progress: outputs progress for the current block (upto the next `@progress:` or `@progress>` marker)
@progress> outputs progress for all the blocks below.

Maybe not too intuitive though.

irrationalistic commented 7 years ago

There is also a general progress field in the status bar at the bottom of the editor. Maybe that could use some love? Would that cover your use-case?

garygreen commented 7 years ago

Yeah that'll be good too

irrationalistic commented 7 years ago

I don't really think adding a special line like this makes a lot of sense since it's pretty divergent from how these are usually organized. I could potentially see this being integrated via dynamic styles (so it doesn't end up in the actual output plaintext file) by injecting the count into the view right after the project name itself, maybe adding a formatting setting so it can be customized to your liking.

I could also see bolstering the status bar display to show total completion, plus your current project and its completion state as well. That feels a little more clear, but I'll take a look at what this might look like and let's see which solves for your use case!