summaryrefslogtreecommitdiffstats
path: root/katex-header.html
blob: 44b80e5612edc52ee4434d8b181ba9032864baa7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!-- Credit: https://stackoverflow.com/a/54573800 -->
<!-- Credit: https://github.com/m-ou-se/rust-horrible-katex-hack/blob/master/src/lib.rs -->

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/katex.min.css" integrity="sha384-zh0CIslj+VczCZtlzBcjt5ppRcsAmDnRem7ESsYwWwg3m/OaJ2l4x7YBZl9Kxxib" crossorigin="anonymous">

<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.21/dist/katex.min.js" integrity="sha384-Rma6DA2IPUwhNxmrB/7S3Tno0YY7sFu9WSYMCuulLhIqYSGZ2gKCJWIqhBWqMQfh" crossorigin="anonymous"></script>

<script>
    document.addEventListener("DOMContentLoaded", () => {
        let codes = [...document.getElementsByTagName("code")];
        for (let code of codes) {
            if (code.parentNode.classList.contains("language-math")) {
                let p = document.createElement("p");
                katex.render(code.textContent, p, { displayMode: true });
                let pre = code.parentNode;
                pre.parentNode.replaceChild(p, pre);
            } else if (/^\$.*\$$/.test(code.textContent)) {
                let span = document.createElement("span");
                katex.render(code.textContent.slice(1, -1), span);
                code.parentNode.replaceChild(span, code);
            }
        }
    });
</script>