Ihor Radchenko <yanta...@posteo.net> writes: > Another concern is that we already have `org-export-with-tasks' where > you can specify which todo keywords should be exported and which > headings should be exported, according to their todo keyword. So, > "no-export" appears to unnecessary.
That's a good point. Michael, does `org-export-with-tasks' suffice for your original need/request? > However, after I looked at the RFC in more details now, I can see that > the values of STATUS property depend on the entry type: > > statvalue-event = "TENTATIVE" ;Indicates event is tentative. > / "CONFIRMED" ;Indicates event is definite. > / "CANCELLED" ;Indicates event was cancelled. > ;Status values for a "VEVENT" > > statvalue-todo = "NEEDS-ACTION" ;Indicates to-do needs action. > / "COMPLETED" ;Indicates to-do completed. > / "IN-PROCESS" ;Indicates to-do in process of. > / "CANCELLED" ;Indicates to-do was cancelled. > ;Status values for "VTODO". > > statvalue-jour = "DRAFT" ;Indicates journal is draft. > / "FINAL" ;Indicates journal is final. > / "CANCELLED" ;Indicates journal is removed. > ;Status values for "VJOURNAL". > > Maybe we can introduce separate variables mapping todo keyword to status > depending on the entry type (VTODO vs. VEVENT; we do not export VJOURNAL)? Sure, but we should also consider the STATUS for VEVENTs created from non-TODO entries. Perhaps these variables could map tags as well as todo keywords to status? E.g., in the following: (setq org-icalendar-event-status-map '((cancelled . ("KILLED" "cancelled")))) Then any VEVENT created from entries whose todo-keyword or tag matches the above would have STATUS set to CANCELLED. For example, both of the following entries would contain VEVENTs exported as such: * An event that was cancelled :cancelled: A non-todo entry with active timestamp <2024-06-23>. It will be exported with STATUS as CANCELLED. * KILLED A todo that was cancelled SCHEDULED: <2024-06-22> This todo entry has both a scheduling timestamp as well as an active timestamp <2024-06-23>, and may create both VEVENT and VTODO. Any VEVENTs created will have STATUS as CANCELLED, due to "KILLED" being in org-icalendar-event-status-map. Any VTODO created will have STATUS set according to org-icalendar-todo-status-map instead.