自动装填
这个 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]
这里使用的前缀。