| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clectio (~/git/projects/clectio) is a tiny suckless-C daily-readings build
that compiles the calendar, citations and scripture text in. clectio-gen is
its data compiler: it reuses this engine to compute, for a year range, each
day's name/colour/readings and emits corpus-independent C tables plus the
verse KEYS, so the C side is a dumb lookup and the hard liturgical logic
stays here (oracle-validated).
- bible.LookupKeyed(version, ref) returns each resolved verse's
(book, chapter, verse) key, mirroring Lookup's splitting/versification.
clectio-gen uses it to record the exact pericopes a lectionary cites.
- Verified: clectio's output is byte-identical to lectio's readings, day
names 157/157 over a 3-year sample.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Lookup now detects a verse-tail range that crosses a chapter boundary
("M-P:Q", e.g. "30-28:7" in "Sirach 27:30-28:7") and fetches chapter N
from verse M to its end, any whole chapters between, and chapter P from
verse 1 through Q, instead of misreading the tail as a plain from-to
range and coming up empty. SplitRef expands the same pattern inside a
comma list so a trailing group after the jump (e.g. the ",8-10" in
"Malachi 1:14-2:2,8-10") resolves against the new current chapter.
FormatRef renders the range intact as "<sigla> N:M-P:Q" instead of
splitting off a fake new-chapter marker from the embedded "P:" and
mangling the display (previously "Sir 27:7").
No sentinel value is ever stored in a ref string; it only bounds an
internal verse-filter loop in Lookup.
|