math - 如何在 MediaWiki 中嵌入数学

标签 math render mediawiki-extensions

我正在尝试从 old wiki 传输一些数学内容到我的新 MediaWiki。

旧页面使用 MathJax,如下所示:

Here is the k-degree Taylor series for [[$ f(x) $]] 
    expanding around [[$ x=0 $]]  

[[$ T_k(x) = f(0) + x\cdot f'(0) + \frac{x^2}{2!} f''(0) + \dots
     + \frac{x^k}{k!} f^k(0) $]]

这是我迄今为止发现的:

http://www.mediawiki.org/wiki/Extension:MathJax -- 似乎已停产。

http://www.mediawiki.org/wiki/Extension:SimpleMathJax -- 我尝试过这个,它可以在 OSX Chrome 上运行,但在 OSX FireFox 上会出现渲染错误 ( https://github.com/jmnote/SimpleMathJax/issues/1 )

http://www.mediawiki.org/wiki/Extension:Math -- 这似乎是正在积极开发的地方,但我还没有设法让它发挥作用。这也是一个非常令人头疼的问题。

我错过了什么吗?

在 MediaWiki 中启用数学内容的正确方法是什么?

据我所知,它看起来像:“在服务器上渲染并提供 PNG 更快,使用 MathJax 在客户端上渲染更简单/更干净”

SimpleMathJax 是一个绝对最小的安装。如果它能在 Firefox 上运行就好了!

数学扩展看起来像是一项艰苦的工作,看起来有点大材小用——它似乎支持至少 4 种不同的渲染技术。

最佳答案

一年后,MediaWiki 网站如何处理数学的情况变得更加令人困惑。如果我们都同意 png 图像中显示的 texvc 和数学公式丑陋且过时,那么根据https://www.mediawiki.org/wiki/Extension:Math,Mathoid 似乎是这样的。 ,“是最推荐的选项;Mathoid 是 future 维基百科上将使用的渲染模式。” .

但是 Mathoid 需要像 Parsoid 这样的外部服务器,并且它们(Mathoid 和 Parsoid)都在大力开发中。因此,我寻找其他解决方案,并成功找到并测试了“SimpleMathJax”( https://www.mediawiki.org/wiki/Extension:SimpleMathJax )。可以像下面这样设置

wfLoadExtension( 'SimpleMathJax' );

// MediaWiki 1.24 or earlier
// require_once "$IP/extensions/SimpleMathJax/SimpleMathJax.php";

适用于任何最新版本的 MediaWiki(测试的最新版本是 2016 年 12 月下旬的 mw1.28)。

但是,扩展本身的代码并未随 WikiMedia 基金会(支持 mathoid)的众多 MediaWiki 扩展一起分发,但您可以在 github 上获取它 https://github.com/jmnote/SimpleMathJax/archive/master.zip并将其与其他扩展一起展开到您的扩展子目录中。

  • 数学渲染非常漂亮,因为它使用 MathJax,而 MathJax (.org) 是“适用于所有现代浏览器的 LaTeX、MathML 和 AsciiMath 表示法的开源 JavaScript 显示引擎。”
  • 大多数标准 AMS LaTeX 代码似乎都能正常工作(对齐等)。

它被称为“简单”MathJax 可能是因为它没有 MW MathJax 扩展的雄心壮志来处理所有 LaTeX 和 TeX 设施,如编号方程和处理 TeX 宏,但它使用 mathjax.org 的原始 javascript CDN因此安装和用于简短的数学文本非常简单。 - 如果您想处理更长甚至更大的数学文本,您可以尝试“pandoc”,它将使用以下命令行将您的完整 LaTeX 文档转换为 mediawiki 源代码:

$ pandoc -o foo.wiki -f latex -t mediawiki foo.tex

关于math - 如何在 MediaWiki 中嵌入数学,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29387372/

相关文章:

c# - 可能丢失分数

Java 求两个整数的中点

math - 计算 4 维向量之间的欧几里德距离

ruby-on-rails - Ruby on Rails-渲染布局

c++ - 如何在 SDL2 中的不透明矩形之上绘制透明或半透明矩形?

Java - 在循环中接收输入

javascript - MediaWiki 如何让 [Collapse] 链接不随文本移动位置?

c - 在 c 中获取以 2 为底的对数时出错

MediaWiki - 如何使用图库中某个类别的所有图像

php - 存储内容,例如 MediaWiki 中的页面