0.2.2 — a subtitle begins with a capital

title_case counted small words from the start of the whole string, so
every subtitle that opened with one was set in lower case: 'Aesthetic in
Kant: a Critique', 'Born Fighting: the Scots-Irish'. A colon starts a
title of its own and the first word of one is capitalised however small
it is.

Found by book-pipeline, which had been proposing a title page's capitals
verbatim into a catalogue and needed this to stop.
This commit is contained in:
funkpower
2026-09-21 11:30:26 -04:00
parent 60943420b4
commit 05b712d084
4 changed files with 104 additions and 55 deletions
+27 -27
View File
@@ -3,39 +3,39 @@ resolver = "3"
members = ["crates/*"]
[workspace.package]
version = "0.2.1"
version = "0.2.2"
edition = "2024"
rust-version = "1.85"
license = "MPL-2.0"
repository = "https://git.pumpin.online/funkpower/catena"
[workspace.dependencies]
catena-cli = { path = "crates/catena-cli", version = "0.2.1" }
corpus-core = { path = "crates/corpus-core", version = "0.2.1" }
cuekit = { path = "crates/cuekit", version = "0.2.1" }
textkit = { path = "crates/textkit", version = "0.2.1" }
chunkmd = { path = "crates/chunkmd", version = "0.2.1" }
mdscrub = { path = "crates/mdscrub", version = "0.2.1" }
mdsplit = { path = "crates/mdsplit", version = "0.2.1" }
pdftriage = { path = "crates/pdftriage", version = "0.2.1" }
cuenorm = { path = "crates/cuenorm", version = "0.2.1" }
cueseg = { path = "crates/cueseg", version = "0.2.1" }
rrf = { path = "crates/rrf", version = "0.2.1" }
cuepack = { path = "crates/cuepack", version = "0.2.1" }
bibclean = { path = "crates/bibclean", version = "0.2.1" }
avplan = { path = "crates/avplan", version = "0.2.1" }
pdfgutter = { path = "crates/pdfgutter", version = "0.2.1" }
catena = { path = "crates/bindings", version = "0.2.1" }
seriesof = { path = "crates/seriesof", version = "0.2.1" }
idnorm = { path = "crates/idnorm", version = "0.2.1" }
bibfetch = { path = "crates/bibfetch", version = "0.2.1" }
bookmeta = { path = "crates/bookmeta", version = "0.2.1" }
langid = { path = "crates/langid", version = "0.2.1" }
tocfind = { path = "crates/tocfind", version = "0.2.1" }
booksniff = { path = "crates/booksniff", version = "0.2.1" }
citefind = { path = "crates/citefind", version = "0.2.1" }
colophon = { path = "crates/colophon", version = "0.2.1" }
emb = { path = "crates/emb", version = "0.2.1" }
catena-cli = { path = "crates/catena-cli", version = "0.2.2" }
corpus-core = { path = "crates/corpus-core", version = "0.2.2" }
cuekit = { path = "crates/cuekit", version = "0.2.2" }
textkit = { path = "crates/textkit", version = "0.2.2" }
chunkmd = { path = "crates/chunkmd", version = "0.2.2" }
mdscrub = { path = "crates/mdscrub", version = "0.2.2" }
mdsplit = { path = "crates/mdsplit", version = "0.2.2" }
pdftriage = { path = "crates/pdftriage", version = "0.2.2" }
cuenorm = { path = "crates/cuenorm", version = "0.2.2" }
cueseg = { path = "crates/cueseg", version = "0.2.2" }
rrf = { path = "crates/rrf", version = "0.2.2" }
cuepack = { path = "crates/cuepack", version = "0.2.2" }
bibclean = { path = "crates/bibclean", version = "0.2.2" }
avplan = { path = "crates/avplan", version = "0.2.2" }
pdfgutter = { path = "crates/pdfgutter", version = "0.2.2" }
catena = { path = "crates/bindings", version = "0.2.2" }
seriesof = { path = "crates/seriesof", version = "0.2.2" }
idnorm = { path = "crates/idnorm", version = "0.2.2" }
bibfetch = { path = "crates/bibfetch", version = "0.2.2" }
bookmeta = { path = "crates/bookmeta", version = "0.2.2" }
langid = { path = "crates/langid", version = "0.2.2" }
tocfind = { path = "crates/tocfind", version = "0.2.2" }
booksniff = { path = "crates/booksniff", version = "0.2.2" }
citefind = { path = "crates/citefind", version = "0.2.2" }
colophon = { path = "crates/colophon", version = "0.2.2" }
emb = { path = "crates/emb", version = "0.2.2" }
clap = { version = "4", features = ["derive"] }
clap_mangen = "0.3"