From 7494ce76f1eefc2a9a2112d2f2ffec4709d90e08 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Thu, 24 Sep 2026 17:42:31 +0200 Subject: docs: the calendar entry stays when it is unconfigured, and it says so --- AGENTS.md | 3 ++- CHANGELOG.md | 9 +++++---- README.md | 9 +++++++-- docs/superpowers/specs/2026-09-24-calendar-design.md | 2 +- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 47f25ba..6b69818 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -102,7 +102,8 @@ those types have ever existed, and looking for them wastes a search. The widget classes that do exist are `MessageView`, `ThreadListView`, `TagStrip`, `TagDialog`, `MessageDetailsDialog`, `PendingChangesDialog`, `RowStyleDelegate`, `CardDelegate`, `ComposeWindow`, `SendDialog`, -`ThreadDashboard`, `BusyIndicator`, `CalendarWindow` and `EventPane`; `TagChip` +`ThreadDashboard`, `BusyIndicator`, `CalendarWindow`, `MonthView`, +`AgendaView` and `EventPane`; `TagChip` is a namespace of painting helpers, not a widget, `SearchTerm` is a namespace of query builders, and `ThreadCidMap`, `CardLayout`, `SearchOffer`, `HeaderRow`, `ThreadDigest` and `PendingChangeRow` are structs. diff --git a/CHANGELOG.md b/CHANGELOG.md index a1b6b92..da831b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,10 +29,11 @@ point at which they are stable. ### Upgrading **The calendar is off until `calendars_dir` is set.** No existing config key -changes meaning and nothing breaks by doing nothing: without the key the -calendar action is simply absent and no vdir is read. To turn it on, point it -at your vdir root and, if new events should land in one collection rather than -the first, name that collection's directory in `default_calendar`. +changes meaning and nothing breaks by doing nothing: without the key no vdir is +read, and the View menu and toolbar entry stays in place, reporting that +`calendars_dir` must be set under `[general]` when you trigger it. To turn it +on, point it at your vdir root and, if new events should land in one collection +rather than the first, name that collection's directory in `default_calendar`. **A vdirsyncer cron line should take the same lock the calendar uses.** The default `calendar_sync_command` is prefixed with diff --git a/README.md b/README.md index 60198f1..7e88526 100644 --- a/README.md +++ b/README.md @@ -528,8 +528,13 @@ of this yet. | `calendar_sync_command` | `flock -w 60 /tmp/vdirsyncer.lock vdirsyncer sync calendars` | Run after writes; empty disables. | | `calendar_sync_delay_ms` | `2000` | Delay before it runs. | -With `calendars_dir` unset the feature is off: the View menu entry is not there -and nothing is read. Point it at the vdir and the action appears. +With `calendars_dir` unset the feature is off and no vdir is read, but the +entry stays in the View menu and on the toolbar. Trigger it and the status bar +says the key must be set, rather than the window opening empty: + +> No calendar is configured: set calendars_dir under [general]. + +Point the key at the vdir and the same entry opens the window. `calendar_sync_command` takes the same `flock` vdirsyncer uses, so a save here and a cron run cannot sync at once. If vdirsyncer already runs from cron, diff --git a/docs/superpowers/specs/2026-09-24-calendar-design.md b/docs/superpowers/specs/2026-09-24-calendar-design.md index 72358b2..a57bb26 100644 --- a/docs/superpowers/specs/2026-09-24-calendar-design.md +++ b/docs/superpowers/specs/2026-09-24-calendar-design.md @@ -324,7 +324,7 @@ All in `[general]`, read without the `general/` prefix per AGENTS.md: | Key | Default | Meaning | |---|---|---| -| `calendars_dir` | unset (off) | The vdir root, tilde-expanded like `contacts_dir`. Empty turns the feature off: no action, no error. | +| `calendars_dir` | unset (off) | The vdir root, tilde-expanded like `contacts_dir`. Empty turns the feature off; the menu and toolbar entry remains and shows a hint naming the key (no window opens). | | `default_calendar` | first collection by name | Directory name of the collection new events go to. | | `calendar_sync_command` | `flock -w 60 /tmp/vdirsyncer.lock vdirsyncer sync calendars` | Run after writes. Empty disables. | | `calendar_sync_delay_ms` | `2000` | Debounce before the sync runs. | -- cgit v1.2.3