From 7b220084cf3951c8cde0582efdfcf628afc64336 Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Tue, 28 Jul 2026 12:50:31 +0200 Subject: refactor: remove the niedziela/missalemeum scrapers, bt, traditional_lang The daily view now computes entirely offline (previous commit), so retire the network path and everything that served it: - Delete internal/tradlit (missalemeum) and the niedziela scraper from internal/liturgy (fetch/store/parse + fixtures); keep Section, DayInfo and ExtractCitation. - Remove the "bt" version everywhere (render gatherBT + branches, config, i18n, web form, TUI) and bible.ToEnglishRef (Polish citation converter). A legacy config carrying "bt" migrates to "wuj" on load (config.migrateBT). - Remove the traditional_lang config field and the -g/--lang flag from all three binaries. - Drop the now-dead flags -R/--refresh, -o/--offline, -u/--update, -C/--clean and the harvest/clean commands. - New defaults: versions = wuj,vul,grb,drb; default_version = vul. Update the README (offline-by-design, no harvest/update), help text, and stale niedziela/bt doc comments. Tests updated for the offline reality; go test ./... and go vet ./... are clean, all three binaries build and run offline (OF + EF, compare, web). --- internal/liturgy/citation.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 internal/liturgy/citation.go (limited to 'internal/liturgy/citation.go') diff --git a/internal/liturgy/citation.go b/internal/liturgy/citation.go new file mode 100644 index 0000000..2c545c2 --- /dev/null +++ b/internal/liturgy/citation.go @@ -0,0 +1,21 @@ +package liturgy + +import ( + "fmt" + "regexp" + "strings" +) + +// citationRe captures a scripture reference in a trailing "(...)" of a section +// heading, e.g. "Ewangelia (J 20, 1. 11-18)" -> "J 20, 1. 11-18". +var citationRe = regexp.MustCompile(`\((.+)\)\s*$`) + +// ExtractCitation returns the scripture reference carried in a section +// heading's trailing parentheses, or an error when the heading has none. +func ExtractCitation(heading string) (string, error) { + m := citationRe.FindStringSubmatch(heading) + if m == nil { + return "", fmt.Errorf("no reference found in heading: %q", heading) + } + return strings.TrimSpace(m[1]), nil +} -- cgit v1.3