.TH CLECTIO 1 "2026" "clectio" "User Commands" .SH NAME clectio \- tiny, fast, offline Catholic daily readings .SH SYNOPSIS .B clectio .RB [ \-a | \-g ] .RI [ YYYY\-MM\-DD ] .br .B clectio \-\-month .RI [ YYYY\-MM " | " N ] .SH DESCRIPTION .B clectio prints the Catholic liturgical day and its Mass readings for a date, entirely offline. It computes nothing at run time: the calendar, the reading citations and the scripture text are all compiled into the binary, so a date is a table lookup. With no date it prints today. .PP One liturgical form, citation dialect and scripture text are built into a given binary; all of that is compile\-time configuration (see .BR CONFIGURATION ). The default text is the public\-domain Latin Vulgate. The compiled calendar covers 2025\-2054; a date outside that range is reported, not guessed. .SH OPTIONS .TP .BR \-a ", " \-\-all Print all of the day's readings, overriding the compiled default. .TP .BR \-g ", " \-\-gospel Print only the Gospel, overriding the compiled default. .TP .B \-\-month List a whole month, one line per day: weekday, day, liturgical colour and celebration (no readings). Takes an optional .I YYYY\-MM or a bare month number .RI ( N , in the current year); with no argument, the current month. Useful piped to a file as a reference. .TP .BR \-h ", " \-\-help Print usage and the compiled configuration, and exit. .SH CONFIGURATION There is no run\-time configuration file. Options are set at compile time in .IR config.h , copied from .I config.def.h on first build \(em edit it, then run .BR make . .TP .BR FORM_OF " / " FORM_EF Ordinary Form (post\-1969) or Extraordinary Form (1962). Enable exactly one. .TP .BR SIGLA_ENGLISH " / " SIGLA_LATIN Citation dialect: \(dqJer 14\(dq versus \(dqIer 14\(dq. Enable exactly one. .TP .B COLOR Colour the day name with its liturgical colour on a terminal (1 on, 0 off). .TP .B GOSPEL_ONLY Default reading set: all readings (0) or the Gospel only (1). Override per run with .BR \-a / \-g . .TP .B WRAP Wrap reading text at N columns; .B 0 fits the terminal, and leaves piped output one line per verse. .PP One form per binary; build twice for both. The interface is English only. .SH BRING YOUR OWN BIBLE The default build embeds the Latin Vulgate. To build with another translation, pass a corpus \(em a six\-column TSV .RB ( Book ", " Abbrev ", " BookNum ", " Chapter ", " Verse ", " Text , in Vulgate chapter/verse numbering) \(em to .BR make : .PP .RS .B make CORPUS=/path/to/bible.tsv .RE .PP clectio matches a citation on Book+Chapter+Verse and prints Text; Abbrev and BookNum are ignored, but the columns must be present. A verse the corpus lacks prints blank; it never fails the day. See the README for the full format, an example, and how to switch back. .SH BRING YOUR OWN CALENDAR Out of the box the calendar is the universal Roman calendar, compiled in. It can be changed in two tiers, because clectio has no calendar engine. .PP .B Minor \(em name and colour of a fixed date, standalone. Edit .I calendar.h (copied from .IR calendar.def.h ), add a .B { month, day, colour, "name" } row, and .BR make . It replaces that fixed date's name and colour every year, in both the single\-day and .B \-\-month output. It cannot change a day's readings or rank, place movable feasts, or arbitrate precedence \(em an override wins unconditionally. .PP .B Full \(em readings, ranks, movable feasts, via lectio. Describe the change as a .BR lectio (1) calendar layer .RB ( "lectio \-\-cal\-dump" ), then regenerate clectio's tables with it applied and recompile \(em from the lectio source tree: .PP .RS .nf go run ./cmd/clectio\-gen \-caldir DIR \-use NAME new 2025 2054 gen/ make CORPUS=.../vul.tsv .fi .RE .PP The running binary stays standalone; only regenerating needs lectio and a Go toolchain. See the README for the full workflow and a revert note. .SH FILES .TP .I config.def.h Template for the compile\-time configuration; copied to .I config.h on first build. .TP .I calendar.def.h Template for local calendar overrides; copied to .IR calendar.h . .TP .I gen/ Generated, corpus\-independent tables (calendar, citations, verse keys). .TP .IR text_of.lz ", " text_ef.lz The packed scripture text for each form (default: the Latin Vulgate). .SH EXIT STATUS .TP .B 0 Success. .TP .B 1 The date is outside the compiled range. .TP .B 2 Usage error (bad option, date or month). .SH SEE ALSO .BR lectio (1) .PP The full manual \(em corpus format, calendar customization, sizing \(em is the project README. .SH LICENSE GPL\-3.0\-or\-later (clectio's own code; see the LICENSE file). .B puff.c is Mark Adler's public\-domain inflate. The compiled scripture text is a separate work under its own terms; the default Latin Vulgate is public domain. .SH AUTHOR Ɓukasz Kasprzak.