Calendar.txt
Appeal of a plain‑text calendar
- Many commenters like the simplicity and “unixy” nature: one file, easy to
grep,sort, version-control with git, edit on any device with a text editor. - Fits users who already live in a terminal and value transparency, reliability, and resilience to app/API churn.
- Git history effectively becomes a calendar change log.
- Some see it as analogous to todo.txt or plaintext accounting: the file is the source of truth; tools can be layered on top.
Perceived limitations and skepticism
- Critics see it as oversimplified and brittle:
- One line per day or event is awkward for multi-day events, detailed notes, or high event volume.
- No built-in reminders, invites, or sync; these are central to modern calendaring.
- Mixing editable text with rigid metadata (dates, week numbers) risks copy‑paste errors and manual sorting mistakes.
- Concerns about: time zones, DST, localization, separator characters colliding with normal text, and English-centric syntax.
- Several argue plain text is fine as a backing format but not sufficient as the user interface for a full-featured calendar.
Format design debates
- Disagreement over “one day per line” vs “one event per line”; some prefer repetition for easier parsing and line-based tools.
- Week numbers being mandatory are divisive; proponents use pre-generated templates and find week numbers work-specific, critics find them friction.
- Suggestions include headers for locale/timezone, alternative separators, or CSV/JSON/SQLite instead of ad-hoc text.
Alternatives and related tools
- Many point to existing solutions: Emacs diary/org-mode,
remind(often viewed as strictly more powerful), OpenBSDcalendar(1), todo.txt, orgzly-like tools, and CalDAV clients such as khal/vdirsyncer/todoman. - Some describe custom ICS/CalDAV backends that present plain text or simple HTTP interfaces to mainstream calendar apps.
Workflows, tooling, and sync
- Proposed uses: journaling, logging, simple personal calendars, daily work logs.
- Ideas: alarm scripts with cron/
at, text-to-ICS converters, template generators up to year 2400, Markdown-based variants plus “markdown-aware grep”. - Mobile sync remains a pain point; suggestions include Syncthing, note apps, or email drafts, each with tradeoffs.