As the title says, I could use an exhaustive list of all Stack Exchange sites that use MathJax. If the list included any site-specific customizations made to the MathJax configuration on each site, that would be even better.
1 Answer
Which sites support MathJax?
These sites (and their respective Meta sites) support MathJax:
- 3D Printing (with mhchem extension)
- Amateur Radio
- Artificial Intelligence
- Astronomy
- Aviation
- Bioacoustics
- Bioinformatics
- Biology (with mhchem extension)
- Blender
- Chemistry (with mhchem extension)
- Code Golf (with
\$
delimiters) - Code Review (with
\$
delimiters) - Computational Science
- Computer Graphics
- Computer Science
- Computer Science Educators
- Cross Validated
- Cryptography
- Data Science
- Drones and Model Aircraft
- Earth Science (with mhchem extension)
- Economics
- Electrical Engineering (with
\$
delimiters) - Engineering
- Game Development (with
\$
delimiters) - History of Science and Mathematics
- MathOverflow
- Mathematica
- Mathematics
- Mathematics Educators
- Matter Modeling (with mhchem extension)
- Operations Research
- Photography (with
\$
delimiters) - Physics
- Programming Language Design and Implementation
- Proof Assistants
- Psychology & Neuroscience
- Puzzling
- Quantitative Finance
- Quantum Computing (with mhchem extension)
- Robotics
- Role-playing Games (with
\$
delimiters) - Signal Processing
- Space Exploration
- Theoretical Computer Science
- Worldbuilding (with mhchem extension)
This list was complete as of 2023-08-13. If you notice that it has become outdated, please update it using the snippet below.
Run the Stack Snippet to get the live list based on /sites from the Stack Exchange API. Note that the snippet does not check sites for the mhchem extension or \$
delimiters, only for the mere presence of MathJax; these parenthetical notes are hard-coded into the output. If any of these are out of date, please update the specials
list or leave a comment on this post to let the author know to change it:
// edit below structure to indicate mathjax specific settings
// remove all spacees and/or - from the name of the site
// all lowercase
var specials = {
"3dprinting": { mhchem: true },
biology: { mhchem: true },
chemistry: { mhchem: true },
earthscience: { mhchem: true },
mattermodeling: { mhchem: true },
quantumcomputing: { mhchem: true },
worldbuilding: { mhchem: true },
electricalengineering: { delim: true },
codegolf: { delim: true },
codereview: { delim: true },
gamedevelopment: { delim: true },
photography: { delim: true },
roleplayinggames: { delim: true },
};
// no changes needed after this
function onload() {
// error handling
if (xhr.status !== 200) {
document.getElementById('result').textContent = 'An error occurred: ' + xhr.status;
return;
}
function filter(items) {
var i,
sites =[];
for(i=0; i < items.length; i++) {
if (items[i].site_type === 'main_site' &&
items[i].markdown_extensions &&
items[i].markdown_extensions.indexOf('MathJax')>-1)
{
sites.push(items[i]);
}
}
return sites;
}
function getExtensions(sitename) {
var sec = specials[sitename.toLowerCase().replace(' ','').replace('-','')],
extra = '';
if (sec !== undefined) {
extra = '(with ';
if (sec.mhchem) extra = extra + 'mhchem extension';
if (sec.delim) extra = extra + '`\\$` delimiters';
extra = extra + ')'
}
return extra;
}
function buildMarkdown(site, extra) {
var content = [
'1. [',
site.name,
'](',
site.site_url.substr(site.site_url.indexOf(':') + 1),
') ',
extra
],
pre = document.createElement('pre');
pre.innerHTML = content.join('');
return pre;
}
function processSites(sites) {
var i,
result = document.getElementById('result'),
md = document.getElementById('md'),
li,
extra;
for(i = 0; i < sites.length; i = i + 1) {
extra = getExtensions(sites[i].name);
li = document.createElement('li');
li.textContent = sites[i].name + ' ' + extra;
result.appendChild(li);
md.appendChild(
buildMarkdown(sites[i], extra)
);
}
}
function sortSiteName(l, r) {
return l.name<r.name?-1:1;
}
function process(txt) {
var data = JSON.parse(txt);
processSites(filter(data.items).sort(sortSiteName));
}
process(xhr.responseText);
}
var xhr = new XMLHttpRequest();
xhr.open(
'GET',
'https://api.stackexchange.com/2.2/sites?pagesize=500&filter=!*L6SiaRiUSk*Z2zr');
xhr.addEventListener("load", onload);
xhr.send();
<ol id="result">
</ol>
<div id="md">
</div>
It's possible to examine the configuration programmatically, as suggested by @IlmariKaronen; here is a user script which does. (It doesn't work as a snippet because of CORS protection.)
Why doesn't [site X] support MathJax?
MathJax increases page load times drastically, so it's only supported on sites that have demonstrated a serious need for it. For more information, see LaTeX on Stack Overflow?
It is intentionally deactivated on TeX - LaTeX, as generally, site users want to see the code more than they want to see the rendered output.
-
13Just as a remark: It is intentionally deactivated on TeX.SE, cf. Can we turn off math-tex please?, and to clear up a common misunderstanding: It is also off-topic there to ask MathJax related questions.– SperavirCommented Jan 18, 2014 at 5:10
-
3@Speravir: apparently, the topicality of MathJax questions on TeX.SE is "marginal". Commented Jan 19, 2014 at 20:14
-
3
-
1Physics SE doesn't have MathJax on the meta site, which causes continuous troubles there.– peterhCommented Sep 20, 2017 at 13:50
-
1@endolith The SE has a strong urge to make all page rendering in tenths of seconds possible on most client machines. I already tried to convince an SE insider from that the mathjax should be conditionally initialized on the page requests where there is a formula on the page. The answer was a polite mentioning, that they want to remain still so fast (then became unresponsive + nothing happened).– peterhCommented Sep 20, 2017 at 13:56
-
2@endolith It can also explain, why the SE handles the SO differently. For example, on the SE sites, it is no problem, if there is some topic overlap. But it seems, they have a strong wish to collect practically all programming questions to the SO and that it should remain undivided and very fast, forever. This is likely also the reason, why the SO has a lot of improvements what the SE sites get only with a delay, or never. Maybe business logic could be the most realistic explanation (i.e. bosses simply calculate paid work hours / generated income and these numbers can be strongly for the SO).– peterhCommented Sep 20, 2017 at 14:01
-
@endolith Btw, there are simple userscripts which enable mathjax simply everywhere.– peterhCommented Sep 20, 2017 at 14:03
-
2The "funny" thing is, that tex.stackexchange.com somehow doesn't have MathJax support, on mysterious reasons.– peterhCommented Aug 22, 2018 at 23:23
-
4@peterh The reason why is explained here: tex.meta.stackexchange.com/questions/1272/… Commented Aug 23, 2018 at 5:40
-
3@SonictheInclusiveHedgehog That is not an explanation, just a simple statement. The very little "explanation" part is non-sense (code can be still shown, just \$s it should be enclosed in `). Probably their real reason is that having MathJax support would focus the site to MathJax and distract other Tex implementations. However, if it is so, then they should say that.– peterhCommented Aug 23, 2018 at 6:16
-
5@peterh If you disagree with their decision to not support MathJax, the best place to contest that would be on their per-site meta, not in comments here. Commented Aug 23, 2018 at 6:46