自动装填

这个 autoload 扩展预先定义了尚未加载的扩展中的所有宏,以便它们在首次使用时自动加载所需的扩展,除了 物理学 包,因为它重新定义了标准宏, AMS 包,因为它包含大量宏。

这个 autoload 除了 input/tex-base . 这意味着tex输入jax实际上可以访问所有扩展,即使它们最初没有加载,也不应该使用 \require 或加载其他扩展(除了 physics )除非你愿意。

你可以控制哪些分机 autoload 将使用 autoload 对象中 tex mathjax配置的块。此对象包含 key: value 对,其中 key 是扩展名,并且 value 是一个数组,列出导致加载扩展的宏名。如果环境也可以导致加载扩展, value 是由两个子数组组成的数组,第一个子数组是导致扩展自动加载的宏的名称,第二个子数组是导致扩展加载的环境的名称。

例如,

window.MathJax = {
  tex: {
    autoload: {
      verb: ['verb']
    }
  }
};

\verb 命令应加载 动词 首次使用时的扩展名。

如果数组为空,则不会加载该扩展,因此要防止 autoload 在加载扩展时,将其分配为空数组。例如。,

window.MathJax = {
  tex: {
    autoload: {
      verb: []
    }
  }
};

verb 扩展将不会自动加载。

注解

这个 autoload 扩展定义 \color 成为 颜色 扩展(与 Latex 兼容的版本,而不是非标准的mathjax版本)。如果您想使用非标准版本2 \color 宏来自 颜色2 请改为使用以下扩展名:

window.MathJax = {
  tex: {
    autoload: {
      color: [],
      colorv2: ['color']
    }
  }
};

此扩展已经加载到包括TeX输入JAX的所有组件中,而不是 input/tex-base 。要加载 autoload 显式扩展(当使用 input/tex-base 例如),添加 '[tex]/autoload' 发送到 load 属性的数组 loader 您的MathJax配置的挡路,然后添加 'autoload' 发送到 packages 属性的数组 tex 挡路。

window.MathJax = {
  loader: {load: ['[tex]/autoload']},
  tex: {packages: {'[+]': ['autoload']}}
};

由于 autoload Extension包含在包含TeX输入JAX的组合组件中,则它将已经在包列表中。在这种情况下,如果您要禁用它,可以将其删除:

window.MathJax = {
  tex: {packages: {'[-]': ['autload']}}
};

自动加载选项

添加 autoload 扩展到 packages 数组定义 autoload 子块到 tex 配置块。此块包含 key: value 对,其中 key 是一个TeX包名,并且 value 是导致加载该包的宏数组,或者是由两个数组组成的数组,第一个是宏的名称,第二个是环境的名称;第一次使用其中任何一个时,将自动加载扩展。

默认的自动加载定义如下:

MathJax = {
  tex: {
    autoload: expandable({
      action: ['toggle', 'mathtip', 'texttip'],
      amscd: [[], ['CD']],
      bbox: ['bbox'],
      boldsymbol: ['boldsymbol'],
      braket: ['bra', 'ket', 'braket', 'set', 'Bra', 'Ket', 'Braket', 'Set', 'ketbra', 'Ketbra'],
      cancel: ['cancel', 'bcancel', 'xcancel', 'cancelto'],
      color: ['color', 'definecolor', 'textcolor', 'colorbox', 'fcolorbox'],
      enclose: ['enclose'],
      extpfeil: ['xtwoheadrightarrow', 'xtwoheadleftarrow', 'xmapsto',
                 'xlongequal', 'xtofrom', 'Newextarrow'],
      html: ['href', 'class', 'style', 'cssId'],
      mhchem: ['ce', 'pu'],
      newcommand: ['newcommand', 'renewcommand', 'newenvironment', 'renewenvironment', 'def', 'let'],
      unicode: ['unicode'],
      verb: ['verb']
    }
  }
};

要防止扩展自动加载,请将其值设置为空数组。例如,不自动加载 color 扩展,使用

MathJax = {
  tex: {
    autoload: expandable({
      color: []
    }
  }
};

如果您定义了自己的扩展名,并且它们的前缀不是 [tex] ,然后将其包含在扩展名中。例如,

MathJax = {
  tex: {
    autoload: expandable({
      '[extensions]/myExtension' : ['myMacro', 'myOtherMacro']
    }
  }
};

加载程序选项 有关如何定义自己的前缀的详细信息,如 [extensions] 这里使用的前缀。