Open punten — vsa-templates¶
Checklist voor verdere chats. Afgevinkt = gedaan in deze branch/sessies. Onder Werklijst staan alleen nog echte vervolgstappen.
Valkuilen bij MSCZ/MXL: rendering-pitfalls.md. Mappingcontract: mapping-vsa.md.
Gedaan (niet opnieuw oppakken)¶
- [x] Lokale curated texts: vsa-template, template-frase, template-event, frase-id, frase-anker, formulelabel, reciteertoon, laddergraad, do-context.
- [x] Frase-toewijzing:
text_mapping+mapping_plans+template_mapping.py. - [x] Mapping-architectuur VSA→template-instance (S uit VSA, A/T/B uit
template) — zie mapping-vsa.md;
implementatie
template_instance.py(geen “pad B”-jargon meer). - [x] Hoogte-mismatch → harde
TemplateInstanceError(H9); geen stil hold. - [x] Tropaar-toon-4 corpus-pipeline:
.vsa/.mscz/.mxl+ lokale PDF; CLIscripts/render_tropaar_toon4_corpus.py. - [x] Recite-print (MSCZ): ≥3 ongemarkeerd recite →
||O||; eerste lettergreep gecentreerd op de nootkop; rest op spacer-noten naar rechts; laatste als kwart; geen melisma-extender onder recite; VSA-scopes eigen noten; Coria-MXL zonder collapse. - [x] Instance-layout: één maat per strofe; MS4-maatstrepen via voice-
<BarLine visible=0>; geen dots op||O||; lyric-dichtheid vialyricsMinDistance/minNoteDistance/ maat-eind-spacer. - [x] Valkuilen-doc + links in README / AGENTS / MkDocs: rendering-pitfalls.md.
- [x] PDF-export uit git geweerd (afgeleide); lokaal via
--pdf-only. - [x] Spot-check PDF’s tropaar-toon-4 corpus: recite/scopes/layout kloppen (menselijke audit).
- [x] Instance-foutmeldingen zoals
vsa validate: compacte + uitgebreide vorm; bestand:regel:kolom; foutcode;Hint:(H7/H9 e.d.). - [x] Mapping H4–H7 in de instance-mapper (optional; VSA-duur H5; hold/zelfde-S H6; H7 andere toon alleen via optional / zelfde-S-run incl. na recite). Details: mapping-vsa.md.
- [x] H1
openvs eerste recite: YAML houdt twee events (formuleblad); instance slaatopenover als VSA meteen reciteert — geen dubbele noot. - [x]
mode/do: template én VSA-parser alleenmajor/minor; mismatch →VSA-TEMPLATE-MODE-MISMATCH/VSA-TEMPLATE-DO-MISMATCH. - [x] Sequence / text_mapping-lengte: aantal VSA-regels moet bij het plan
passen →
VSA-TEMPLATE-TEXT-MAPPING. - [x]
l.lgr.(H8): mapper koppelt geankerd event + rest van de frase aan de laatste VSA-syllabe; stichier-toon-5laatsteheeft het anker. - [x] Anker-normalisatie:
e. st.→e.st.(zelfde voorl.st.,vl.st.,l.lgr.). - [x] Parallelle cadenspaden (
of): YAML + mapper; VSA kiest impliciet; geen pad → mismatch. Geen uitvoeringsvorm (dat is zangstuk-niveau). Formuleblad toont pad 0. Tropaar-toon-4laatsteblijft voorlopig alleen mi–re–mi (fa-tak kan later bij). - [x] Tenor-octaaf tropaar-toon-4:
sol-1t.o.v.do: F4= C4 (niet C3). Vastgelegd in YAML + test. - [x] CLI
vsa template validate. - [x] Formule-MusicXML:
scripts/render_vsa_template_musicxml.py(--alloftemplate.yaml→.musicxml/.mscz). - [x] Formuleblad vs instance: wat in git / hoe regenereren — zie rendering-pitfalls.md en library/README.md.
- [x] Inline VSA in proza:
T.Nis geen zingbare syllabe; corpus zonderT.Nin de VSA-regel. Markdown-inline renderer is geen instance-pipeline (zie mapping-vsa). - [x] Geen org glossary-PR tot termen repo-overschrijdend moeten (template-termen blijven lokaal).
- [x] Stemmen met onderling verschillende ritmes: niet doen tot de noodzaak blijkt (homofone eventkeuzes blijven).
Werklijst (vervolg)¶
Templates / pitches¶
- [ ] Overige templates (niet tropaar-toon-4): graden/
do/modeprovisionaltot PDF-/partituur-audit. - [ ] Tropaar-toon-4
laatste: fa-cadenspad als tweedeof-tak encoderen zodra SATB van dat pad tegen het bronblad is gezet.
Tooling / export¶
- [ ] Andere genres/tonen: eigen corpus + render zodra pitches geverifieerd zijn (mapper/renderer zijn al generiek).
- [ ] Markdown-inline VSA-fragment (hoogtemarkering /
Amenin proza) als aparte presentatielaag — tablet/pc/telefoon én print — wanneer die UX nodig is.