12

I cannot find anything on being able to set TODO tasks with SCHEDULE to occur on multiple days of the week.

For example I have STAT class on Mon Wed and Fri that I would like the event to repeat every week with a +1w argument.

Is this possible or do I need to have 3 separate STAT events, each with a 1w argument in SCHEDULE?

1 Answer 1

23

It seems that org-mode wants you to think of meetings differently:

Scheduling an item in Org mode should not be understood in the same way that we understand scheduling a meeting. Setting a date for a meeting is just a simple appointment, you should mark this entry with a simple plain timestamp, to get this item shown on the date where it applies. This is a frequent misunderstanding by Org users. In Org mode, scheduling means setting a date when you want to start working on an action item.

I guess part of the point is that it doesn't really make sense to mark meetings as DONE. But I'm not really sure.

Anyway, that just changes the question to "how do I specify in a 'simple plain timestamp' multiple recurring dates?"

We can use functions from the diary library, as such:

* 100% chance of statistics today
SCHEDULED: <%%(or (diary-cyclic 7 8 31 2015) (diary-cyclic 7 9 2 2015) (diary-cyclic 7 9 4 2015))>

Now it'll show up every Monday, Wednesday, and Friday starting 2015-08-31. You won't mark it as DONE; it'll just be "scheduled" for those days.

As mentioned in a comment, you can also just use regular timestamps with repeaters:

* 100% chance of statistics today
<2015-08-31 Mon +1w><2015-09-02 Wed +1w><2015-09-04 Fri +1w>

Note that if you just use C-c . twice, org mode will think you're doing a date range. This will also work :

* 100% chance of statistics today
SCHEDULED: <2015-08-31 Mon +1w>--<2015-09-02 Wed>
1
  • 5
    But in that case the SCHEDULED doesn't really get you anything and you could just add 3 plain timestamps: <2015-08-31 +1w> <2015-09-02 +1w> <2015-09-04 +1w>
    – erikstokes
    Sep 17, 2015 at 1:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.