Crates.io | orgtoical |
lib.rs | orgtoical |
version | 0.3.2 |
created_at | 2024-12-11 03:53:21.193449+00 |
updated_at | 2025-09-07 20:54:29.296446+00 |
description | Export org-mode files to iCalendar |
homepage | |
repository | https://codeberg.org/felipeqq2/orgtoical |
max_upload_size | |
id | 1479560 |
size | 39,937 |
org-mode
has a builtin iCalendar export. It's horrifyingly slow with bigger
files. And, apparently, it's not super hard to build. So, this is a very similar tool to handle your iCal exports, only a tad
faster.
Quick comparison: using an org file with 1,3M and +20k lines, exporting this file via org-icalendar-export-to-ics
takes around a
very, very long time. Running cat vault.org | orgtoical
takes 138.21ms.
orgtoical
parses stdin as an org file, and outputs the iCalendar to stdout. Nice for piping and redirecting stuff!
There is a single command-line option: an optional reminder to be set in all iCal events. It can be set with the --reminder
flag: orgtoical --reminder $TRIGGER
, where $TRIGGER
is an iCal alarm trigger (like -PT15M
for triggering 15 minutes before
the start of the event. I don't know how it works or what it actually means).
Although TIMEZONE
properties are supported, no timezone definitions are added to the output. This is the same behaviour as the
org export, but is a nonconformity as per the iCal spec. In my experience, consuming
applications usually understand IANA timezone identifiers.
Currently, it supports the following properties: TIMEZONE
, LOCATION
, DESCRIPTION
, UID
. SUMMARY
is the title of the
headline, and CATEGORIES
is a list of all tags assigned to the headline. Both properties and tags are inherited. Only calendar
events are supported.