diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-18 09:39:27 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-18 09:39:27 +0200 |
| commit | d0393fffb4191e6b29252690381d8dbb48314c77 (patch) | |
| tree | fa723dc5e5bf894473656985609ddd7c565a50aa /README.md | |
| parent | c64bf67e15b075182deb4eebead8315c9081ac46 (diff) | |
| download | conky-theme-udt-d0393fffb4191e6b29252690381d8dbb48314c77.tar.gz conky-theme-udt-d0393fffb4191e6b29252690381d8dbb48314c77.zip | |
feat: date the calendar rows and pin a colour legend
Three changes to the calendar card:
The month grid drops further below the header. The weekday initials sat
close enough to read as part of the header rather than as the top of the
grid.
Event rows carry the date before the time, day/month with no year: the
window is a week and the grid above already names the month, so a year
would spend three characters on the one field that cannot vary.
A legend of the calendar colours is pinned along the card's bottom, and
the event rows now end above it rather than at the card's inner edge. It
lists every calendar khal declared a colour for, in name order so it
does not reshuffle between frames, since pairs() walks a hash.
The row budget also counted one row more than the drawing loop would
draw, which suppressed the '+N more' line exactly when it was needed:
the loop cut the row the count had already spent. Both now test the same
condition.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -154,16 +154,25 @@ takes its calendar's colour; today takes a filled pill, coloured by its own calendar when something is on and `highlight` otherwise, with the number over it in the heading colour because a calendar colour loses too much contrast against the fill. Past days in the month dim: the grid is mostly about what is -still coming. Below the grid, one row per appointment, start time left in the -calendar's colour and title right in the body colour. Colour-coding the whole +still coming. Below the grid, one row per appointment: date and start time +left in the calendar's colour, title right in the body colour. The date is +day/month with no year, since the window is a week and the grid above already +names the month. Colour-coding the whole row makes three calendars read as three unrelated cards, so the time carries the code and the title stays readable. All-day events read `all day`, never `00:00`, because midnight is a legitimate start time. +A legend of the calendar colours is pinned along the card's bottom, in name +order so it does not reshuffle between frames, and the event rows end above it +rather than running under it. It lists every calendar khal declared a colour +for, including ones with nothing on this week: it is a colour key, not a second +list of what is coming. + Events come from a cache file written by `bin/calendar-sample.sh`, which shells out to `khal`. The card shows as many rows as the cell affords and ends with `+N more` when the week does not fit, since a card that silently drops the rest -of the week defeats its own purpose. +of the week defeats its own purpose. A cell too short for even one row draws +the grid alone, without the legend, rather than a clipped half-row. **Calendar colours come from khal's own config**, parsed out of the `[calendars]` section by the sampler, then mapped onto the board's palette |
