fix(formaat): een notitie die met "Woord:" begint is geen Marp-richtlijn (#1815) #1816
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1816
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/marp-notitie-directive"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Een spreeknotitie die met een woord plus dubbele punt begint, liet de dia stil haar type verliezen.
Wat er misging
requiresWholeMarpBlockPreservationtoetste op^[A-Za-z][A-Za-z0-9_-]*\s*:— "elk woord gevolgd door een dubbele punt" — en zag dat aan voor een Marp-richtlijn die OciDeck niet modelleert. Het hele diablok viel daarop terug opfreeMarkdown.Dat is precies de vorm van een gewone notitie. Gemeten op
mainmet een handgeschreven deck van 46 dia's: drie verloren hun type.<!-- Antwoord: onwaar. … -->questionfreeMarkdown— quiz niet meer speelbaar<!-- Pareto: de balken staan gesorteerd … -->chartfreeMarkdown— fence rendert als codeblok<!-- Verdiepingsdia: valt weg in de export. -->matrix(FMEA)freeMarkdownAlleen die drie notities herschrijven — geen andere wijziging — herstelde alle drie. En
MarkdownValidator.validate()meldde er nul bevindingen over.Wat deze PR doet
kMarpitDirectiveNames, de sleutellijst van Marpit zelf, hoofdlettergevoelig zoals Marpit die ook vergelijkt. Dat is niet alleen smaller maar juister: Marpit negeert een sleutel die het niet kent, dus een blok bewaren omAntwoord:hielp niemand — Marp deed er zelf al niets mee. De uitzonderingslijst (advance:,tlp:,ocideck_,_) verviel daarmee; geen van vieren is een Marp-richtlijn.paginate:,footer:,backgroundPosition:doet Marp iets mee — dan meldt §10 dat nu met naam en gevolg.FILE_FORMAT.md§8 belooft weer wat de lezer doet. Er stond "Presenter notes — any other comment that does not start with_", en dat klopte niet. §9 en de controletabel van §10 lopen mee; de Nederlandse versie ook.De afweging, hardop
De oude brede toets ving élke toekomstige Marp-richtlijn vanzelf op; deze lijst niet. Voegt Marp er een toe, dan gaat die bij het opslaan verloren tot de naam hier bijstaat. Dat is een echte regressie in uitwisselbaarheid en hij staat opgeschreven bij de lijst zelf.
Ik laat betrouwbaarheid voorgaan: wat de brede toets kocht was toekomstvastheid voor iets zeldzaams (Marpit voegt zelden richtlijnen toe), wat ze kostte was een dagelijkse stille fout. Van gedachten veranderen we zodra dit aan een poort hangt —
make check-marp(#1804) draait de échte gepinde Marp CLI en is de plek om de lijst tegen die versie te toetsen. De structurele oplossing is de doorgeeflus van #1810, die bewaren-of-niet een niet-vraag maakt.Toetsen
test/marp_directive_note_test.dart, eerst rood tegen de onherstelde code (6 van 15 faalden), zet beide kanten vast:Footer:is proza,footer:is een richtlijn;Praktijktoets: het deck van 46 dia's dat de fout blootlegde, mét de drie oorspronkelijke notities, parseert nu met nul terugvallen naar
freeMarkdown.Gedraaid
make check— groen, exitcode 0 (niet doortailgepijpt), na rebase op058a010c0make check-secrets— 0 bevindingenmake sast— 4 regels, 1177 bestanden, 0 bevindingen.md— de wijziging zit puur in het lezen — en OciDecks interpretatie komt juist dichter bij die van elk ander Marp-gereedschap te liggen. Het enige punt dat eruit kwam is de veroudering hierboven, nu vastgelegd in de code.Closes #1815