Skip to main content

Module dayview

Module dayview 

Source
Expand description

The day, seen (docs/tasks.md, “The day”): today’s events at their times, and the steps the plan gives today laid into your hours, each into hours of its own kind (work, admin), a pause between them and around the events; a line where now is. A step up to an hour is never cut; a longer one goes on after a break; one with margins never (going there twice is not the same step). Visual supports cut transition time (Dettmer et al. 2000); the current step is shown inside the whole day, with what comes next (Brili, Tiimo). A layout to look at, never a schedule to keep: nothing is written into the tasks, and a step that runs over only moves the next ones.

What a day asks is spread (docs/capacity.md): never two heavy steps in a row, a light step or a break of a quarter of an hour after a heavy one, two steps weighing on the same cost apart when another can come between (criteria 29–30). A step given a time by hand keeps it. Two slots of time for you are kept, silent: one after the day’s costliest block, one in the evening (G11, G15, G18). Free time is kept after the last step for steps running long (plan::Plan::slack).

Structs§

Block
One block of the day.
DayView
The day: from its first hour to its last, its hours, its blocks, and now.
Step 🔒
A step of today, as the day orders it.
Stretch
A stretch of the day’s hours and what it is for: “work”, “admin”, “leisure”, several joined by “+” where hours overlap.

Constants§

BREAK_AFTER_HEAVY
After a heavy step, this long before anything but a light one (criterion 29: more than 10 min).
GAIN_LEAST
A gain slot: this long, a quarter of an hour when that is all a gap holds (G11).
LOOK_AHEAD
How far ahead the day looks for a step that keeps two heavy ones, or two of the same cost, apart. A guess.
SLACK_SHOWN
The free time kept for steps running long is shown from this long.

Functions§

day
Today laid out: events of today, and the plan’s steps for today in its order, from now into the hours of their kind (settings), around the events and what is laid already.
first_gap 🔒
The first stretch of free from from on, least long at least, most at most.
rounded 🔒
The next five minutes: blocks start on readable times.
side_by_side
Places spans side by side where they overlap, as (column, columns): each takes the first column free at its start, and every span of a group of overlapping ones learns how many columns the group needs. spans are (start, end), in any unit, an end no earlier than its start.
spread_out 🔒
Today’s steps in the plan’s order, moved only to keep two heavy ones, or two weighing on the same cost, apart, when one of the next few can come between; never before what it waits for.
whole_hour 🔒
seconds down, or up, to a whole hour as the clock in zone shows it.