diff options
| author | Lukasz Kasprzak <lukasz@arcofasiagroup.com> | 2026-08-27 14:12:43 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukasz@arcofasiagroup.com> | 2026-08-27 14:12:43 +0200 |
| commit | 34a36fcb0956db7f06c4b8860414283c03996293 (patch) | |
| tree | 09d642eb39545c1fe4a19a6f5afbe3785d6e653e /man/colitur.1 | |
| parent | 4b3c18d61a243f1ec9c39e6279f7c687402b8dda (diff) | |
| download | colitur-34a36fcb0956db7f06c4b8860414283c03996293.tar.gz colitur-34a36fcb0956db7f06c4b8860414283c03996293.zip | |
feat(cli): --pretty, for reading in a terminal
The row commands print for awk: single-space fields, slugs, a variable tail.
That is right for the default and wrong for a person, who mostly wants to know
what today is.
--pretty gives the same four commands -- day, readings, rubrics, temporal --
aligned columns, the day's liturgical colour as a swatch, and commemorations
on their own indented line rather than lengthening the row. The colour was
already computed and simply thrown away on a terminal.
Colour is written only when stdout is a terminal, so piping or redirecting
yields plain aligned text: the alignment survives, the escapes do not, and the
swatch degrades to the colour's initial so the information is not lost with
them. NO_COLOR is honoured on PRESENCE whatever its value, which is the
convention's own rule -- treating it as a boolean is the usual way to get it
wrong.
Every other command refuses the flag rather than accepting it and doing
nothing: emit, table, render and publish already choose their shape through
--format and --template, and easter prints six key/value lines, not a grid.
An intermediate version accepted it everywhere and silently ignored it on
five commands, which is the failure mode this program refuses everywhere else.
Two things the layout had to learn. Column widths are a minimum, not a
maximum: the Latin season names run past them ("Tempus per annum ante
Septuagesimam" is 35 against 34), so pad always leaves a separator or the next
field fuses onto it -- that is how "Septuagesimam 1S. Hilarii" happened. And
the commemoration indent is measured from the row actually printed rather than
computed from the column constants, or it sits under the wrong column on
exactly the rows that have something to indent.
Presentation only: bin/pretty.ml decides nothing about what a day is, and
nothing reads it. Default output is byte-identical to v1.1.0 -- verified
across day, readings, rubrics, temporal and easter for 2026, 1583 and 9999.
Diffstat (limited to 'man/colitur.1')
| -rw-r--r-- | man/colitur.1 | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/man/colitur.1 b/man/colitur.1 index 1a330d8..55383ec 100644 --- a/man/colitur.1 +++ b/man/colitur.1 @@ -476,6 +476,40 @@ Print a usage summary to standard output and exit 0. .TP .BR \-V ", " \-\-version Print the version and exit 0. +.SH PRETTY OUTPUT +.B \-\-pretty +lays the rows out for a terminal rather than for +.BR awk (1): +aligned columns, the day's liturgical colour as a filled circle, and +commemorations on their own indented line instead of lengthening the row. +.PP +Accepted by +.BR day ", " readings ", " rubrics " and " temporal . +Every other command refuses it rather than accepting it and doing nothing: +.BR emit ", " table ", " render " and " publish +already choose their shape through +.B \-\-format +or +.BR \-\-template , +and +.B easter +prints six key/value lines rather than a day grid. +.PP +Colour is written only when standard output is a terminal, so redirecting or +piping yields plain aligned text \-\- the alignment survives, the escape +sequences do not, and the colour column degrades to its initial +.RB ( w ", " r ", " g ", " v ", " o ", " k ) +so the information is not simply lost. The +.B NO_COLOR +environment variable is honoured on presence, whatever its value, per the +convention at https://no-color.org. +.PP +The default output is unchanged by this flag and remains the parseable one. +Nothing should be written to parse +.BR \-\-pretty : +its layout is free to change, which is precisely what the default format is +not. +.PP .SH OUTPUT FORMAT .SS day .RS |
