Jack Kamm <jackk...@gmail.com> writes: > Ihor Radchenko <yanta...@posteo.net> writes: > >> Another scenario we may need to consider is when schedule has a repeater >> while deadline does not, and vice versa. The former scenario is probably >> valid - a VTODO with limited number of occurrences. > > That is an interesting idea; and we can use the UNTIL or COUNT keywords > in RRULE to implement it. > > However, it doesn't seem completely faithful to the way the TODO ends up > in the Org Agenda (or does Org have some option to use DEADLINE to bound > a repeating SCHEDULED in this way?)
DUE in iCalendar and DEADLINE in Org are not exactly the same. So, of course, there is a room for ambiguity. The question is: does iCalendar allow something like DTSTART;TZID=America/New_York:19970105T083000 RRULE:FREQ=YEARLY DUE;TZID=America/New_York:20070105T083000 and repeats past DUE? If not, we have to choose when exporting from Org source - either to keep DUE or not. > I think the most faithful way to represent different SCHEDULED and > DEADLINE repeaters is to export 2 separate VTODOs, each with different > RRULE. Then the exported iCalendar will look just like the Org > Agenda. It is also in line with how ox-icalendar exports multiple > timestamps to separate VEVENTs. If we want to leave as many options as possible to the users, we can (1) Implement ICALENAR_DUE property that will set DUE explicitly on export; (2) ICALENDAR_DUE may allow special values that will indicate how to treat Org DEADLINEs - make them into DUE, use Org DEADLINE as a bound for SCHEDULED repeater, or ignore DEADLINE completely. > That said, I am not really happy with this solution either. The fact > that ox-icalendar can create multiple VEVENT per entry already creates > headaches for any setup doing bidirectional sync between Org and > iCalendar, such as with org-caldav, ical2org.awk, or ical2orgpy. And I > am hesitant to make this problem worse, by making it happen for VTODO as > well. Is there any reason for this? May we instead export to a single VEVENT with appropriate RDATE list? -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>