katex fix

frdel committed Jun 18, 2025 at 16:46 UTC ae2d959463476f2df21213c8bc7c459e7b274b0d
2 files changed +10 -33
prompts/research_agent/agent.system.main.communication.md
+1 -1
@@ -42,7 +42,7 @@ No other text is allowed!
42 Only one JSON object allowed per reply
43
44 ### rules
45 -Math requires latex notation <$LATEX>...<$LATEX> delimiters
45 +Math requires latex notation <latex>...<latex> delimiters
46 Code inside markdown must be enclosed in "~~~" and not "```"
47 dont use **
48
webui/js/messages.js
+9 -32
@@ -2,9 +2,6 @@
2 import { openImageModal } from "./image_modal.js";
3 import { marked } from "https://cdn.jsdelivr.net/npm/marked/lib/marked.esm.js";
4
5 -const katexDelimiterLeft = "<latex>";
6 -const katexDelimiterRight = "</latex>";
7 -
5 function createCopyButton() {
6 const button = document.createElement("button");
7 button.className = "copy-button";
@@ -117,28 +114,12 @@ export function _drawMessage(
114 spanElement.innerHTML = processedContent;
115
116 // KaTeX rendering for markdown
120 - if (window.renderMathInElement && latex) {
117 + if (latex) {
118 spanElement.querySelectorAll("latex").forEach((element) => {
119 katex.render(element.innerHTML, element, {
120 throwOnError: false,
121 });
122 });
126 -
127 - // renderMathInElement(spanElement, {
128 - // delimiters: [
129 - // {
130 - // left: katexDelimiterLeft,
131 - // right: katexDelimiterRight,
132 - // display: true,
133 - // },
134 - // {
135 - // left: escapeHTML(katexDelimiterLeft),
136 - // right: escapeHTML(katexDelimiterRight),
137 - // display: true,
138 - // },
139 - // ],
140 - // throwOnError: true,
141 - // });
123 }
124
125 contentDiv.appendChild(spanElement);
@@ -605,18 +586,14 @@ function drawKvps(container, kvps, latex) {
586 copyText(span.textContent, span);
587 });
588
608 - if (window.renderMathInElement && latex) {
609 - renderMathInElement(span, {
610 - delimiters: [
611 - {
612 - left: katexDelimiterLeft,
613 - right: katexDelimiterRight,
614 - display: true,
615 - },
616 - ],
617 - throwOnError: false,
618 - });
619 - }
589 + // KaTeX rendering for markdown
590 + if (latex) {
591 + span.querySelectorAll("latex").forEach((element) => {
592 + katex.render(element.innerHTML, element, {
593 + throwOnError: false,
594 + });
595 + });
596 + }
597 }
598 }
599 // } else {