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), OpenBSD calendar(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.