v1.5.0 - Reconstructed Pronunciation, Noun/Deponent Fixes
What's new
- Reconstructed Classical Latin pronunciation. A Vox Latina-style IPA transcription now appears under the headword for entries carrying at least one macron/breve (~85% of the dictionary; skipped rather than guessed for the rest, since stress placement depends on knowing vowel length). Checked directly against Wiktionary's
Module:la-pronuncoutput rather than derived from rules alone:- Vowel length/quality,
c/k/qu → [k],v → [w],gn → [ŋn],ph/th/chaspirated,ae/oe/audiphthongs - Dark vs. clear L — lupus →
[ˈɫʊ.pʊs], but lupus before i/y or in a geminatellstays plain - Nasalized vowels before word-final -m or before n/m+s/f, with the nasal consonant dropped — etiam →
[ɛ.ti.ãː], insula →[ˈĩː.sʊ.ɫa] - Hiatus-vowel tensing — duo →
[ˈdu.ɔ], not[ˈdʊ.ɔ] - Classical penultimate-weight stress rule, with syllabification handling the muta-cum-liquida exception
- Vowel length/quality,
- Fixed: nouns silently missing their declension table. Morpheus suffixes its own lemma with a homonym-disambiguating number even when L&S's key has none (equus →
equus1); the join now rescues the unambiguous case (~850 entries recovered) while leaving genuinely ambiguous homonyms unmatched rather than guessed. - Fixed: semi-deponent verbs had a broken citation form. Audeo, gaudeo, soleo, fido and compounds now get their correct 3-part citation (audeo, audere, ausus sum) instead of an empty/broken one — L&S's own tagging never marks this small closed class as deponent, so it's now recognized by a hardcoded lookup, the same shape as the adjective-suppletion handling from v1.4.1.
Regression coverage
scripts/test_dictionary.py gained checks for all of the above: noun-morphology rescue (equus), semi-deponent citations (audeo/gaudeo/soleo), and five pronunciation checks verified against real Wiktionary entries (insula, agellus, lupus, homo, duo).
Full Changelog: v1.4.1...v1.5.0