擴展:SimpleMathJax

From mediawiki.org
This page is a translated version of the page Extension:SimpleMathJax and the translation is 83% complete.
MediaWiki扩展手册
SimpleMathJax
发行状态: 稳定版
实现 标签
描述 使用MathJax用MediaWiki的数学风格渲染数学公式
作者 jmnote, vedmaka, jamesmontalvo3, badshah400
最新版本 0.8.4 (2023-11-04)
MediaWiki 1.29+[1]
数据库更改
许可协议 MIT授權條款
下載
README
示例 zetawiki.com

  • $wgSmjUseCdn
  • $wgSmjUseChem
  • $wgSmjDisplayMath
  • $wgSmjExtraInlineMath
  • $wgSmjScale
  • $wgSmjEnableMenu
  • $wgSmjDisplayAlign
  • $wgSmjWrapDisplaystyle
正在使用的公开wiki数 909 (Ranked 270th)

SimpleMathJax插件提供了MathJax(一个JavaScript库)以便在MediaWiki中排版“数学环境”内的TeX公式。 此扩展将在所有具有math或chem标记的Wiki页面上从cdn.jsdelivr.net加载资源。

<math>E=mc^2</math>
优点
  • 简单
  • 轻巧
  • 支持UTF-8
  • 支持移动视图
  • 可设置字体大小
  • chem标签支持化学
  • 其他inlineMath符号对支持
  • MediaWiki风格!参见示例

安裝

或者你可以用git clone。

$ git clone --depth 1 https://github.com/jmnote/SimpleMathJax.git

如果你想使用本地MathJax脚本(而不是CDN),那么你可以使用git clone recursive。 在大多数情况下,CDN要比你的服务器快得多。 但是,如果你有一个加固的PHP安装,由于disabled_functions的限制,CDN可能无法使用。

$ git clone --depth 1 --recursive --shallow-submodules https://github.com/jmnote/SimpleMathJax.git

SimpleMathJax旨在替代Math扩展。 如果安装了Math扩展,则它可能具有优先权,并导致SimpleMathJax不起作用。 SimpleMathJax扩展是您开始渲染方程式所需的唯一选择。


配置设置

在调用wfLoadExtension( 'SimpleMathJax' );之后,可以在LocalSettings.php中定义以下变量。请注意,对于一个简单的站点,只需添加$wgSmjScale = 1.1;即可使其工作。

版本 设置名 默认值 描述
0.7.0+ $wgSmjUseCdn true 使用CDN或本地资源
0.7.0+ $wgSmjUseChem true 开启‎<chem>标签
默认开启
0.8.0+ $wgSmjEnableMenu true 让MathJax的右键菜单可用
从0.8.0开始就没有这个设置,这将是一个错误。
0.8.0+ $wgSmjExtraInlineMath [] 可以添加一些其他的inlineMath符号对
0.8.1+ $wgSmjScale 1 SimpleMathJax的默认字体大小
0.7.4 $wgSmjShowMathMenu false (已移除)
(replaced by $wgSmjEnableMenu)
0.6.1 $wgSmjSize 110 (已移除)
(replaced by $wgSmjScale)
0.6.1 $wgSmjInlineMath [] (已移除)
(replaced by $wgSmjExtraInlineMath)
0.6.1 $wgSmjDisableChem false (已移除)
(replaced by $wgSmjUseChem)
0.6.1 $wgSmjScripts ['//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-AMS-MML_HTMLorMML',
'//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/extensions/TeX/mhchem.js']
(已移除)
(replaced by $wgSmjUseCDN)
可以使用本地或其他远程脚本
( defaults to use cloudflare CDN )
0.6 $wgSimpleMathJaxSize 125 (已移除)
(replaced by $wgSmjSize)
0.6 $wgSimpleMathJaxUseCDN true (已移除)
(replaced by $wgSmjScripts)
0.6 $wgSimpleMathInlineMath [] (已移除)
(replaced by $wgSmjInlineMath)

如果您想改变字体大小,则需要像下文一样设置$wgSmjScale

wfLoadExtension( 'SimpleMathJax' );
$wgSmjScale = 1.5;

如果您要启用其他inlineMath符号对,则需要像下文一样设置$wgSmjExtraInlineMath

wfLoadExtension( 'SimpleMathJax' );
$wgSmjExtraInlineMath = [ [ "$", "$" ], [ "\\(", "\\)" ] ];

如果您要使用本地的模块,则需要像下文一样设置$wgSmjUseCdn

wfLoadExtension( 'SimpleMathJax' );
$wgSmjUseCdn = false;

SimpleMathJax与实时预览(版本 < 0.8.0)

在版本0.8.0之前,为了使编辑器的实时预览显示渲染好的数学公式而非原始LaTeX源代码,请在MediaWiki:Common.js中加入如下内容:

function waitForMathJax($content) {
  if (typeof MathJax === 'undefined') {
    setTimeout(function () { waitForMathJax($content); }, 1000);
  } else {
    MathJax.Hub.Queue(["Typeset", MathJax.Hub, $content[0]]).execute();
  }
}

mw.hook('wikipage.content').add(waitForMathJax);

示例

比较
更多例子

參見

外部链接

  1. SimpleMathJax 0.8.0+ uses manifest_version 2. Manual:Extension.json/Schema