cal

Timeline
Login

Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

6 check-ins

2026-08-18
16:08
Document default duration of 1h in the add prompt

The default was already 1h; make it explicit in the interactive prompt and note it in the README. leaf check-in: fa3a7177e1 user: bapt tags: trunk

16:07
Add timezone support; store events in UTC

cal add now takes an optional timezone argument (default UTC). The entered local date/time is converted to UTC and stored, with the tz field kept for display. list, show, agenda, gen-web and the invitation email show the local time in the event's timezone, while the ICS is sent as UTC timestamps so every client shows the correct absolute time.

Also fix dur_to_min to parse the documented '1h30' form (was returning 60 instead of 90), and stop FreeBSD date leaving stray seconds in ICS timestamps by forcing :00 in the parse. check-in: feae412110 user: bapt tags: trunk

15:55
Make event references user friendly and copy-pasteable

cal list now prints a single copy-pasteable date_time token before the title (e.g. 2026-08-20_1400) instead of a spacey 'date time', so the token can be used directly as the EVENT argument without quoting. require_event also joins all args with a space, so pasting '2026-08-20 14:00' (split into two args by the shell) matches the same as the quoted form. Update README to document the three reference styles. check-in: 87788c1564 user: bapt tags: trunk

15:51
Fix missing-arg crash under set -u

Commands that take an event (show, edit, rm, ics, invite) referenced $1 before checking it was set, so running e.g. 'cal show' with no event aborted with 'parameter not set'. Add a require_event helper that validates the argument safely under set -u and use it everywhere. Also guard cmd_team against a missing team name. check-in: e18fbb13ea user: bapt tags: trunk

15:31
cal: simple calendar for people sharing a shell

- CLI (add, list, show, edit, rm, agenda, invite, ics, teams, team) - events stored as one text file per event in CAL_DIR - email invitations with ICS (iCalendar) attachment - optional video conference link (URL in ICS, shown in web + email) - team config file (teams.conf) with @team expansion at invite time - read-only HTML agenda generator (gen-web.sh) check-in: ab37bb8c85 user: bapt tags: trunk

15:31
initial empty check-in check-in: b5c10f45bc user: bapt tags: trunk