diff --git a/tools/server/public/index.html.gz b/tools/server/public/index.html.gz
index 1c62ebe968605..34818012c8e46 100644
Binary files a/tools/server/public/index.html.gz and b/tools/server/public/index.html.gz differ
diff --git a/tools/server/webui/src/lib/components/app/misc/MarkdownContent.svelte b/tools/server/webui/src/lib/components/app/misc/MarkdownContent.svelte
index 24d29c2b3e51e..1f4caa9003bce 100644
--- a/tools/server/webui/src/lib/components/app/misc/MarkdownContent.svelte
+++ b/tools/server/webui/src/lib/components/app/misc/MarkdownContent.svelte
@@ -154,9 +154,20 @@
return mutated ? tempDiv.innerHTML : html;
}
+ function normalizeMathDelimiters(text: string): string {
+ return text
+ .replace(/(^|[^\\])\\\[((?:\\.|[\s\S])*?)\\\]/g, (_, prefix: string, content: string) => {
+ return `${prefix}$$${content}$$`;
+ })
+ .replace(/(^|[^\\])\\\(((?:\\.|[\s\S])*?)\\\)/g, (_, prefix: string, content: string) => {
+ return `${prefix}$${content}$`;
+ });
+ }
+
async function processMarkdown(text: string): Promise {
try {
- const result = await processor().process(text);
+ const normalized = normalizeMathDelimiters(text);
+ const result = await processor().process(normalized);
const html = String(result);
const enhancedLinks = enhanceLinks(html);