diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-18 13:59:26 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-18 13:59:26 +0200 |
| commit | 266b10d6cd2d44b4bccc36318054408ded80b8ce (patch) | |
| tree | fa7e5bdd618902fd1bcfc34318395a181f531254 /man/colitur-overlay.5 | |
| parent | 150f8c550d2f9ebbac61d195eb342eb2b2ec6b95 (diff) | |
| parent | 36daf47dde9b0c16dacef31163ea74effdd5e7f3 (diff) | |
| download | colitur-266b10d6cd2d44b4bccc36318054408ded80b8ce.tar.gz colitur-266b10d6cd2d44b4bccc36318054408ded80b8ce.zip | |
merge: a flat INI overlay front end
A convenience format for simple local calendars, transpiled to the existing
S-expression form and verified against it before emitting.
Diffstat (limited to 'man/colitur-overlay.5')
| -rw-r--r-- | man/colitur-overlay.5 | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/man/colitur-overlay.5 b/man/colitur-overlay.5 index 00a84a7..a2d2dae 100644 --- a/man/colitur-overlay.5 +++ b/man/colitur-overlay.5 @@ -251,6 +251,98 @@ accordingly. A local feast that never appears in output has usually lost that contest rather than failed to load \(em .B colitur check will confirm it loaded. +.SH THE FLAT INI FORM +For a calendar that only adds a few local feasts, drops one or two universal +entries, and recolours nothing complicated, there is a flatter form converted +by +.BR "colitur convert" . +Section names are slugs; a +.RB [ overlay ] +section carries the id. +.RS +.nf + +[overlay] +id = my\-parish + +[our\-patron] +date = 07\-11 +rank = class\-3 +colour = white +name.en = St Example, Patron + +[our\-dedication] +date = oct/sun/1 +rank = class\-1 +colour = white +name.en = Dedication of Our Church + +[stanislaus] +edit = yes +colour = red + +[barbara] +suppress = yes +.fi +.RE +.PP +.I status +defaults to +.BR feast , +.I subject +to +.BR saint , +and +.I layer +to the file's id, so the common case \(em an ordinary local saint's feast \(em +says only what distinguishes it. Dates take the three forms +.IR MM\-DD , +.IB easter + N +or +.IB easter - N +, and +.IB mon / day / nth +such as +.B oct/sun/1 +or +.B oct/sun/\-1 +for the last. +.PP +.B This form is deliberately less expressive. +It covers +.BR Add ", " Suppress +and single\-field +.BR Edit . +.B Replace +, multi\-field edits, citation edits and +.B Remove_name +are not expressible, and the converter refuses them +.I by name +rather than dropping them silently. Anything it cannot say is a reason to +write the S\-expression form, not a reason to grow this one. +.PP +.B The conversion verifies its own output. +The generated text is parsed back with the same function that loads an +overlay, and must equal what the INI denoted; nothing is written if it does +not. This matters because a transpiler emitting +.I valid but wrong +S\-expressions is the failure a convenience format invites, and +.B colitur check +could never catch it \(em the output would parse cleanly and simply mean +something else. +.RS +.nf + +.B colitur convert my\-parish.ini > my\-parish.sexp +.B colitur check my\-parish.sexp +.fi +.RE +.PP +The conversion is a separate step rather than something +.B \-\-overlay +does invisibly, so you can read what your INI became. When a date form was +mistyped, "what did the engine actually get" is the question, and an invisible +transpile cannot answer it. .SH SEE ALSO .BR colitur (1) .SH LICENSE |
