mathjax_script_template 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. if (!document.getElementById('mathjaxscript_pelican_#%@#$@#')) {{
  2. var align = "{align}",
  3. indent = "{indent}",
  4. linebreak = "{linebreak_automatic}";
  5. if ({responsive}) {{
  6. align = (screen.width < {responsive_break}) ? "left" : align;
  7. indent = (screen.width < {responsive_break}) ? "0em" : indent;
  8. linebreak = (screen.width < {responsive_break}) ? 'true' : linebreak;
  9. }}
  10. var mathjaxscript = document.createElement('script');
  11. var location_protocol = ({force_tls}) ? 'https' : document.location.protocol;
  12. if (location_protocol !== 'http' && location_protocol !== 'https') location_protocol = 'https:';
  13. mathjaxscript.id = 'mathjaxscript_pelican_#%@#$@#';
  14. mathjaxscript.type = 'text/javascript';
  15. mathjaxscript.src = location_protocol + {source};
  16. mathjaxscript[(window.opera ? "innerHTML" : "text")] =
  17. "MathJax.Hub.Config({{" +
  18. " config: ['MMLorHTML.js']," +
  19. " TeX: {{ extensions: ['AMSmath.js','AMSsymbols.js','noErrors.js','noUndefined.js'{tex_extensions}], equationNumbers: {{ autoNumber: 'AMS' }} }}," +
  20. " jax: ['input/TeX','input/MathML','output/HTML-CSS']," +
  21. " extensions: ['tex2jax.js','mml2jax.js','MathMenu.js','MathZoom.js']," +
  22. " displayAlign: '"+ align +"'," +
  23. " displayIndent: '"+ indent +"'," +
  24. " showMathMenu: {show_menu}," +
  25. " tex2jax: {{ " +
  26. " inlineMath: [ ['\\\\(','\\\\)'] ], " +
  27. " displayMath: [ ['$$','$$'] ]," +
  28. " processEscapes: {process_escapes}," +
  29. " preview: '{latex_preview}'," +
  30. " }}, " +
  31. " 'HTML-CSS': {{ " +
  32. " styles: {{ '.MathJax_Display, .MathJax .mo, .MathJax .mi, .MathJax .mn': {{color: '{color} ! important'}} }}," +
  33. " linebreaks: {{ automatic: "+ linebreak +", width: '90% container' }}," +
  34. " }}, " +
  35. "}}); " +
  36. "if ('{mathjax_font}' !== 'default') {{" +
  37. "MathJax.Hub.Register.StartupHook('HTML-CSS Jax Ready',function () {{" +
  38. "var VARIANT = MathJax.OutputJax['HTML-CSS'].FONTDATA.VARIANT;" +
  39. "VARIANT['normal'].fonts.unshift('MathJax_{mathjax_font}');" +
  40. "VARIANT['bold'].fonts.unshift('MathJax_{mathjax_font}-bold');" +
  41. "VARIANT['italic'].fonts.unshift('MathJax_{mathjax_font}-italic');" +
  42. "VARIANT['-tex-mathit'].fonts.unshift('MathJax_{mathjax_font}-italic');" +
  43. "}});" +
  44. "MathJax.Hub.Register.StartupHook('SVG Jax Ready',function () {{" +
  45. "var VARIANT = MathJax.OutputJax.SVG.FONTDATA.VARIANT;" +
  46. "VARIANT['normal'].fonts.unshift('MathJax_{mathjax_font}');" +
  47. "VARIANT['bold'].fonts.unshift('MathJax_{mathjax_font}-bold');" +
  48. "VARIANT['italic'].fonts.unshift('MathJax_{mathjax_font}-italic');" +
  49. "VARIANT['-tex-mathit'].fonts.unshift('MathJax_{mathjax_font}-italic');" +
  50. "}});" +
  51. "}}";
  52. (document.body || document.getElementsByTagName('head')[0]).appendChild(mathjaxscript);
  53. }}