Skip to content

Add scheduling to tasks #67

schemar started this conversation in Ideas
Add scheduling to tasks #67
Apr 22, 2021 · 9 comments · 16 replies

It should be possible to filter tasks based on when they are scheduled. This helps declutter the tasks list by only showing tasks that are already scheduled.

A new emoji could indicate a scheduled date, e.g. ⏳ 2021-09-12. Then filtering could be done like:

```tasks
scheduled before 2021-12-30
```

With #1, filtering could be done like scheduled before tomorrow.

Replies

9 comments
·
16 replies

Thanks for bringing this over from Obsidian Forum!

Here some thoughts:

  • It would be good to have the same filtering functions as with "due" (e.g. "no start date" and to support new/advanced filters).
  • Maybe call it "start date"? It is just wording, but e.g. with Linenberger's "Manage your Now"-methodology, it is not only about simple "scheduling", but also about "older start dates are sorted to the bottom". But again, just wording ...
  • Maybe
8 replies
@schemar

schemar May 31, 2021
Maintainer Author

Will definitely get the same filters.

If you feel it’s important, could you elaborate on the different meanings of scheduling vs. a start date? Thanks!

@mhofherr

As regards wording "Start date" vs. "Scheduled": Probably the exact wording is less relevant. It's more about functionality behind the start date/scheduled date. One thing is having the option to filter for it, another is to sort results based on it. Similar to issue #8, using something like "sort by priority (asc|desc) first, start date (asc|desc) second" would be really helpful.

@schemar

schemar Jun 3, 2021
Maintainer Author

Ok, thanks. And I fully agree 🙂

It would be amazing if "Scheduled" would create repeating tasks (that exist on the daily note) on the new Daily Note for that date.

4 replies
@schemar

schemar Jun 3, 2021
Maintainer Author

That has been discussed in #130. I don't think it's in the workflow/scope of the Tasks plugin to do that. At least not at the moment. But it's definitely something I will keep in mind.

@FiekeB

@flatlines and @schemar

Wouldn't it do that* automatically, if the template for the daily notes contains something like

tasks
not done
due today

?

I just tried that...it works well for today's (June 5th for example) daily note. But it adds the same tasks-for-today if you (on today, June 5th) create a daily note with a date in the past, say for June 4th. Which you wouldn't normally do, I think. And if you occasionally do, you can remove the tasks which are for the actual today. That doesn't conflict with the actual tasks for today, because it's just a rendering from a template. You can remove all you want in the note rendered from the template, without messing up the template itself or the tasks rendered.

That said, it would of course be brilliant if the Tasks plugin could recognise from the Daily Note's title (which is always a date) whether it actually IS today, or not today. If it's not actually today, then it shouldn't render the tasks for today. Maybe it would/could render the tasks that were due on the day that the note's title reflects.

Again, I have no clue how hard that would be to code. It's just an idea.

  • that = It would be amazing if "Scheduled" would create repeating tasks (that exist on the daily note) on the new Daily Note for that date.
@flatlines

Hi @FiekeB I use a variant of what you describe in my daily notes currently:

Today

due {{date}}
not done

Coming Up

due after {{date}}
due before in {{date+7d:YYYY-MM-DD}}
not done

Done

done {{date}}

The {{date}} field is substituted in automatically by Obsidian templates (native functionality). So e.g. notes for today would be filtered automatically by:

Today

due 2021-06-06
not done

Similarly my done view only shows tasks completed that day.

The coming up variant is handled by the calendar plugin.

I'm pretty sure this hasn't been suggested yet, and I think it fits with this topic.

I think there's a potentially significant use case for start dates, due dates, and scheduled for dates. Start dates hide tasks till it's they can be started; due dates are when they must be completed. Scheduled for dates would be a (possibly recurring) date between start and due that is when I would like to actually work on the task.

One possible use case: a project that starts 1 Aug, is due 31 Aug, and I would like to work on it every Tuesday. Specifically, as an academic who teaches, there are many tasks I have to do regularly but only during certain times of the year; tasks for Fall semester are different than those in Winter, which are different again from those done during Spring/Summer.

1 reply
@schemar

schemar Jul 8, 2021
Maintainer Author

Thank you for your input. I agree. I think these things will find their way into Tasks at some point, however my time is very limited and progress is slow.

As a workaround you can use due dates and filter in a way that due dates shouldn't be too far into the future (not after 1 Aug, for example).

just curious how a Task will be sorted if it has both a Start and a Due date?

3 replies
@schemar

schemar Jul 9, 2021
Maintainer Author

Good question 🤔 Intuitively I would say the due date marks the “importance” of the task and sorting by default would therefore be by due date, not start date. I am not 100% sure, though.

@Gnopps

For me I would like to hide tasks that have a future start date

@FilSalustri

Yes, hiding tasks that haven't "started" yet matters to me too.

Additionally, sorting by start date can help in planning. If you sort future tasks by start, you can see how new tasks will spring up in the future, which may result in changing other plans. If you sort started tasks by start date, you can get a sense of how long different tasks have been active and again can inform your future planning.

Personally, I really like Remember The Milk. It just lets you sort by whatever you want and you can set up custom sorts. Typically, I use start dates only to hide tasks that I don't have to worry about yet. However, I could see sorting by start date as a good way to plan ahead.

0 replies

Here's a workaround that I've been using pretty well by using a description-based filter. It doesn't give you exact start-by level formatting, but this has been more than enough for my use case.

Anytime my task is blocked, I just add #blocked somewhere in the task line

Tasks available

not done
description does not include #blocked

Tasks blocked

not done
description includes #blocked

You could even precede each of your "blocked" tasks with the date you want to start, and then sort the tasks by description so that the tasks are sorted by when they are scheduled for

0 replies

I would like to add a +1 to this request. My specific use case is often tasks that repeat; I would like to be able to look at a list of all tasks and not have to see the task reminding me to pay rent every day.

0 replies

schemar
Sep 22, 2021
Maintainer Author

I might have the time to add this some time in October. I want this myself. Fingers crossed.

0 replies

schemar
Oct 28, 2021
Maintainer Author

🛫 start dates and scheduled dates will be part of the next release later this week. They can be used for filtering and sorting. They can be hidden using the query's layout options.

0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Ideas
Labels
None yet
10 participants
Converted from issue