{{- $page := .page }} {{- with $page }} {{- $init := "{}" }} {{- if isset .Params "mathjaxinitialize" }} {{- $init = .Params.mathJaxInitialize }} {{- else if isset .Site.Params "mathjaxinitialize" }} {{- $init = .Site.Params.mathJaxInitialize }} {{- end }} <script> function useMathJax( config ){ if( !Object.assign ){ // We don't support MathJax for IE11 anyways, so bail out early return; } window.MathJax = Object.assign( window.MathJax || {}, { loader: { load: ['[tex]/mhchem'] }, startup: { elements: [ '.math' ] }, tex: { inlineMath: [ ['$', '$'], // allow for single dollars as we set startup.elements ['\\(', '\\)'] ] }, options: { enableMenu: false // avoid translation hassle for context menu } }, config ); } useMathJax( JSON.parse({{ $init }}) ); </script> {{- if and (isset .Params "custommathjaxurl") .Params.customMathJaxURL }} <script id="MathJax-script" async src="{{ .Params.customMathJaxURL }}"></script> {{- else if and (isset .Site.Params "custommathjaxurl") .Site.Params.customMathJaxURL }} <script id="MathJax-script" async src="{{ .Site.Params.customMathJaxURL }}"></script> {{- else }} <script id="MathJax-script" async src="{{"js/mathjax/tex-mml-chtml.js" | relURL}}{{ if not .Site.Params.disableAssetsBusting }}?{{ now.Unix }}{{ end }}"></script> {{- end }} {{- end }}