Mở rộng:Math

From mediawiki.org
This page is a translated version of the page Extension:Math and the translation is 3% complete.
Outdated translations are marked like this.
This extension comes with MediaWiki 1.38 and above. Thus you do not have to download it again. However, you still need to follow the other instructions provided.
Cẩm nang phần mở rộng MediaWiki
OOjs UI icon advanced-invert.svg
Math
Trạng thái phát hành: ổn định
ExtensionMath (cropped).svg
Cài đặt Tag
Mô tả Cho phép dàn trang các công thức toán học
Tác giả
  • Moritz Schubotz,
  • Tomasz Wegrzanowski,
  • Brion Vibber
  • và những người khác
Phiên bản continuous updates
Compatibility policy Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki >= 1.39.0
Database changes
Tables math
mathoid
mathlatexml
Giấy phép GNU General Public License 2.0 or later
Tải xuống
  • $wgMathEnableWikibaseDataType
  • $wgMathDefaultLaTeXMLSetting
  • $wgMathUseInternalRestbasePath
  • $wgMathMathMLUrl
  • $wgMathFullRestbaseURL
  • $wgMathLaTeXMLUrl
  • $wgMathConcurrentReqs
  • $wgMathEnableFormulaLinks
  • $wgMathValidModes
  • $wgMathEntitySelectorFallbackUrl
  • $wgMathWikibasePropertyIdQuantitySymbol
  • $wgMathDisableTexFilter
  • $wgMathMathMLTimeout
  • $wgMathWikibasePropertyIdSymbolRepresents
  • $wgMathWikibasePropertyIdInDefiningFormula
  • $wgMathWikibasePropertyIdDefiningFormula
  • $wgMathWikibasePropertyIdHasPart
  • $wgMathoidCli
  • $wgMathLaTeXMLTimeout
  • $wgMathEnableExperimentalInputFormats
‎<math>
Translate the Math extension if it is available at translatewiki.net
Issues Open tasks · Báo cáo lỗi

Mở rộng Math cung cấp hỗ trợ cho việc dàn trang các công thức toán học trên wiki thông quatexvc và các phần mềm backend khác. Một giới thiệu tổng quan về những gì có thể làm hiện tịa với mở rộng này có thể tìm thấy tại the English Wikipedia's documentation.

More information about installing and configuring this extension, including for older versions, can be found at Extension:Math/advancedSettings .

Viewing math

The Math extension tries to deliver MathML output, with fallback to images in SVG (converting characters to <path>s) or PNG (least preferentially). Depending on the capabilities of the device you are using, the sort of output is chosen. Basic math support works for all browsers. However, for optimal rendering specific tuning may be needed:

Accessibility support is provided by NVDA, VoiceOver or Orca. Additionally, NVDA requires the MathPlayer plugin to read mathematics.

  • For Safari or other WebKit browsers, you may also install math fonts and enable native MathML rendering by inserting some CSS rules into the custom style sheet of your browser preference.

Accessibility support is provided by the VoiceOver screen reader but not by Orca yet.

Installation

  • Download and place the file(s) in a directory called Math in your extensions/ folder.
  • Thêm mã sau vào dưới cùng tệp $LocalSettings của bạn:
    wfLoadExtension( 'Math' );
    
  • Chạy mã cập nhật mà sẽ tự động tạo các bảng cơ sở dữ liệu mà phần mở rộng này cần.
  • To see math beyond a plain text output, follow instructions below for enabling various math output modes.
  • If you have problems for represent formulas when trying to use wikipedia restbase, you can try using the following patch
  • Yes Xong – Chuyển tới Special:Version trên wiki của bạn để xác nhận phần mở rộng được cài đặt thành công.


Vagrant installation:

  • Nếu sử dụng Vagrant , cài đặt bằng vagrant roles enable math --provision

You should additionally go to the page Special:MathStatus to see whether all of the components of the Math extension now work. For any problems you see, the best option is to create a task on https://phabricator.wikimedia.org

Unfortunately, there is no well tested guide on installing Mathoid and RESTBase to work with the Math extension, but there is at least a working draft. Extension:Math/Restbase please contribute.

Math output modes

The setting $wgMathValidModes holds an array with the names of output modes that can be used for rendering. If multiple modes are enabled, logged-in users can set a personal preference in the appearance pane of their user preferences page.

You can also use the $wgDefaultUserOptions setting to set which of these modes should be the default, e.g.:

$wgDefaultUserOptions['math'] = 'mathml';

Mathoid

Mode:

'mathml'

You can use Mathoid, an application that uses MathJax on the server side to convert texvc input to MathML+SVG rendering. This is the most recommended option; Mathoid is the Math rendering mode used on Wikipedia.

Mathoid as a service

"Mathoid as a service" is the recommended approach for the Math extension, and the default one. If you do not add any additional settings to LocalSettings.php, Math will use the Wikimedia Mathoid and RESTBase services to do all math formula rendering. The default settings are:

// Set MathML as default rendering option
$wgDefaultUserOptions['math'] = 'mathml';
$wgMathFullRestbaseURL = 'https://wikimedia.org/api/rest_';
$wgMathMathMLUrl = 'https://mathoid-beta.wmflabs.org';

You can modify these settings in order use different Mathoid and RESTBase services, potentially including your own.

Mathoid's CLI interface

You can instead run Mathoid as a command-line utility on the local server. To use this approach, the following settings are recommended:

// Set MathML as default rendering option
$wgDefaultUserOptions['math'] = 'mathml';
// Please create a config.yaml in advance. Templates are in the Mathoid repository.
$wgMathoidCli = ['/path/to/mathoid/cli.js', '-c', '/path/to/mathoid/config.yaml'];
// Raise MediaWiki's memory limit to 1.2G for mathoid.
$wgMaxShellMemory = 1228800;

If you run MediaWiki in a system containing SELinux and you get the message Mathoid cli '/path/to/mathoid/cli.js' is not executable in the error log, you can run the following to make sure that the Apache server allows to change system limits:

setsebool -P httpd_execmem 1
setsebool -P httpd_setrlimit 1

LaTeX

Mode: 'png'

Since MediaWiki 1.32, this mode will also require a Mathoid server to work. In older versions, it requires installing texvc and texvccheck, which may require the most setup work.

LaTeXML

Mode: 'latexml'

Uses the LaTeXML utility. The rendering is done via an online service (set with $wgLaTeXMLUrl, which has a default value of https://latexml.formulasearchengine.com/convert).

No rendering

Mode: 'source'

This mode will forward the Latex input without rendering, presenting it in a ‎<span> element, surrounded by $ :formula $.

Make sure to set $wgMathDisableTexFilter to 'always' (see below) if you only want the raw latex formula, else an error will appear due to the failed check for PNG depictions.

Danh sách toàn bộ các thiết lập cấu hình

Setting name Default value Description
$wgMathValidModes array( 'png', 'source', 'mathml' ) Defines the mode allowed on the server.
$wgMathDisableTexFilter 'never' Option to disable the tex filter. If set to true any LaTeX expression is parsed this can be a potential security risk. If set to false only a subset of the TeX commands is allowed. See the wikipedia page Help:Math for details. Use "always" to disable this feature.
$wgMathFullRestbaseURL false The math extension gets the default config from the Visual Editor, if available. Details.

Tracking categories

The extension creates a number of tracking categories to detect errors and deprecated features. The exact name of the categories is determined by pages in the MediaWiki namespace.

MediaWiki page Default Description
MediaWiki:Math-tracking-category-error Category:Pages with math errors Pages where there is a syntax error in the formula causing the rendering to fail
MediaWiki:Math-tracking-category-render-error Category:Pages with math render errors Pages where there has been a temporary error in the rendering pipeline causing the rendering to fail. These normally fix themselves
MediaWiki:Math-tracking-category-texvc-deprecation Category:Pages that use a deprecated format of the math tags Pages which use deprecated texvc syntax like $ % \and \or \part \ang \C \H \bold \Bbb\ \pagecolor, which should be replaced by more standard LaTeX \$ \% \land \lor \partial \angle \Complex \mathbb{H} \mathbf \mathbb (removed) respectively. See Extension:Math/Roadmap .
MediaWiki:Math-tracking-category-mhchem-deprecation Category:Pages that use a deprecated format of the chem tags

Deprecated chemical markup, see Extension:Math/Roadmap#Step 1 Part C: Manual fixing of mhchem syntax.

Tips and tricks

  • You can override the user preferred and default rendermode by adding the forcemathmode attribute to the ‎<math> element. e.g. to force an image being rendered <math forcemathmode="png">...</math>.
  • All images of rendered formula are stored in a cache and not automatically recreated if the page is viewed or edited.

To force the re-rendering of all formulas of a page, purge using the ?action=purge&mathpurge=true action. For example the URL https://en.wikipedia.org/w/index.php?title=Integral&action=purge&mathpurge=true will force re-rendering of the w:Integer article. Afterwards you need to bypass your browser cache so that the new created images of the formulas are actually downloaded.

Error reporting

If something is wrong with the math extension you can report that at Phabricator. In addition you should check how your problem relates to the automated unit tests that are generated from the page CoverageTest.

Further reading

See Extension:Math/advancedSettings for old versions and further information.

Subpages


See also