From eff4b89cff4e1b8fcceb23c54cb62ec636ce62fe Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Wed, 19 Aug 2026 07:47:30 +0200 Subject: feat(render): per-flavour escaping and RFC 5545 line folding Six flavours: latex, groff, html, xml, ics, none. Markdown, AsciiDoc and plain text map to none deliberately -- their metacharacters are context-dependent and escaping them aggressively produces worse output than not escaping. An unrecognised extension returns None rather than falling back to none: guessing the flavour wrong produces malformed output that looks fine until it does not. Folding backs off to a non-continuation byte, so a fold never splits a UTF-8 sequence -- the failure mode that would corrupt Polish and Latin names in a published feed. --- test/test_colitur.ml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'test/test_colitur.ml') diff --git a/test/test_colitur.ml b/test/test_colitur.ml index 76ff685..2295a3f 100644 --- a/test/test_colitur.ml +++ b/test/test_colitur.ml @@ -6,4 +6,5 @@ let () = Test_calendar.suite; Test_precedence_ef.suite; Test_sanctoral_ef.suite; Test_rite_ef.suite; Test_differential.suite; Test_oracle.suite; Test_oracle.suite_2038; Test_oracle.suite_2035; Test_golden.suite; ("lectionary", Test_lectionary.suite); - ("lectionary-ef", Test_lectionary_ef.suite) ] + ("lectionary-ef", Test_lectionary_ef.suite); + Test_escape.suite ] -- cgit v1.3