From 60b1b97185472725b5bc271632435e00dc349e58 Mon Sep 17 00:00:00 2001 From: Dorian Lesbre Date: Tue, 18 Nov 2025 10:13:54 +0100 Subject: [PATCH 1/3] Persistent KaTeX macros --- src/html/html_page.ml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/html/html_page.ml b/src/html/html_page.ml index 7e89754718..ee121d0589 100644 --- a/src/html/html_page.ml +++ b/src/html/html_page.ml @@ -202,6 +202,7 @@ let search_urls = %s; (Html.cdata_script {| document.addEventListener("DOMContentLoaded", function () { + var macros = {}; var elements = Array.from(document.getElementsByClassName("odoc-katex-math")); for (var i = 0; i < elements.length; i++) { var el = elements[i]; @@ -209,7 +210,7 @@ let search_urls = %s; var new_el = document.createElement("span"); new_el.setAttribute("class", "odoc-katex-math-rendered"); var display = el.classList.contains("display"); - katex.render(content, new_el, { throwOnError: false, displayMode: display }); + katex.render(content, new_el, { throwOnError: false, displayMode: display, macros }); el.replaceWith(new_el); } }); From e60f8c221348034acb1f52449645e137d20b481d Mon Sep 17 00:00:00 2001 From: Dorian Lesbre Date: Tue, 18 Nov 2025 10:18:23 +0100 Subject: [PATCH 2/3] Promote tests --- test/generators/html/Markup.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/generators/html/Markup.html b/test/generators/html/Markup.html index 05e4aecb57..2849b4c313 100644 --- a/test/generators/html/Markup.html +++ b/test/generators/html/Markup.html @@ -13,6 +13,7 @@ // Date: Tue, 18 Nov 2025 10:27:44 +0100 Subject: [PATCH 3/3] Changelog --- CHANGES.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 7c161bf364..8f82c3f28f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -8,6 +8,7 @@ - New experimental markdown generator (@davesnx, #1341) - `markdown-generate` command now accepts multiple `.odocl` files in a single invocation, eliminating the need for shell scripting (@davesnx) +- Allow persistent latex macros in HTML/KaTeX backend (@dlesbre, #1391) ### Changed - Remove cmdliner compatibility layer, no longer needed (@dbuenzli, #1328) @@ -183,7 +184,7 @@ ### Fixed - Fix issues #1066 and #1095 with extended opens (@jonludlam, #1082, #1100) - + # 2.4.1 ### Fixed