Enables MathJax on reddit for the TeXtheWorld delimiters [; ... ;].
// ==UserScript==
// @name MathJax for Reddit
// @author David Hansen & James Edward Lewis II
// @namespace greasyfork.org
// @version 0.2
// @description Enables MathJax on reddit for the TeXtheWorld delimiters [; ... ;].
// @match https://*.reddit.com/*
// @license MIT
// @grant unsafeWindow
// @run-at document-start
// @copyright 2026
// ==/UserScript==
(function (window, document, undefined) {
'use strict';
if (window.MathJax === undefined) {
var script = document.createElement('script'), cscript = document.createElement('script'),
head = document.getElementsByTagName('head')[0], config, doMathJax;
script.type = "text/javascript";
// script.src = 'http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML';
// script.src = 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS_HTML';
script.src = 'https://cdn.jsdelivr.net/npm/mathjax@4/tex-mml-chtml.js';
config = 'MathJax.Hub.Config({ ' + 'extensions: ["tex2jax.js"], ' + 'tex2jax: { skipTags: ["script","noscript","style","textarea"],inlineMath: [ ["[;", ";]"] ], displayMath: [["[(;",";)]"]], processEscapes: true }, ' + 'jax: ["input/TeX", "output/HTML-CSS"] ' + ' }); ' + 'MathJax.Hub.Startup.onload(); ';
if (window.opera) cscript.innerHTML = config;
else cscript.text = config;
head.appendChild(script);
doMathJax = function doMathJax() {
if (window.MathJax === undefined) window.setTimeout(doMathJax, 4);
else head.appendChild(cscript) && window.MathJax.Hub.Queue(['Typeset', window.MathJax.Hub]);
};
doMathJax();
} else window.MathJax.Hub.Queue(['Typeset', window.MathJax.Hub]);
})(unsafeWindow, document);