//- Mathjax 3 - const { tags, enableMenu } = theme.math.mathjax script. (() => { const loadMathjax = () => { if (!window.MathJax) { window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], tags: '!{tags}', }, chtml: { scale: 1.1 }, options: { enableMenu: !{enableMenu}, renderActions: { findScript: [10, doc => { for (const node of document.querySelectorAll('script[type^="math/tex"]')) { const display = !!node.type.match(/; *mode=display/) const math = new doc.options.MathItem(node.textContent, doc.inputJax[0], display) const text = document.createTextNode('') node.parentNode.replaceChild(text, node) math.start = {node: text, delim: '', n: 0} math.end = {node: text, delim: '', n: 0} doc.math.push(math) } }, ''] } } } const script = document.createElement('script') script.src = '!{url_for(theme.asset.mathjax)}' script.id = 'MathJax-script' script.async = true document.head.appendChild(script) } else { MathJax.startup.document.state(0) MathJax.texReset() MathJax.typesetPromise() } } btf.addGlobalFn('encrypt', loadMathjax, 'mathjax') window.pjax ? loadMathjax() : window.addEventListener('load', loadMathjax) })()