Extensão:Math

This page is a translated version of the page Extension:Math and the translation is 45% complete.
Outdated translations are marked like this.
Manual de extensões do MediaWiki
Math
Estado da versão: estável
Implementação Marcação
Descrição Permite a renderização de fórmulas matemáticas
Autor(es)
  • Moritz Schubotz,
  • Tomasz Wegrzanowski,
  • Brion Vibber,
  • André Greiner-Petter,
  • e outros
Última versão continuous updates
Política de
compatibilidade
Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki >= 1.43
Modifica o banco
de dados
Sim
Tabelas math
mathoid
mathlatexml
Licença GNU GPL (Licença Pública Geral) 2.0 ou superior
Download
  • $wgMathEnableWikibaseDataType
  • $wgMathDefaultLaTeXMLSetting
  • $wgMathUseInternalRestbasePath
  • $wgMathMathMLUrl
  • $wgMathFullRestbaseURL
  • $wgMathTexVCService
  • $wgMathInternalRestbaseURL
  • $wgMathConcurrentReqs
  • $wgMathEnableFormulaLinks
  • $wgMathValidModes
  • $wgMathEntitySelectorFallbackUrl
  • $wgMathWikibasePropertyIdSymbolRepresents
  • $wgMathWikibasePropertyIdQuantitySymbol
  • $wgMathDisableTexFilter
  • $wgMathSvgRenderer
  • $wgMathoidCli
  • $wgMathWikibasePropertyIdInDefiningFormula
  • $wgMathWikibasePropertyIdHasPart
  • $wgMathWikibasePropertyIdDefiningFormula
  • $wgMathMathMLTimeout
  • $wgMathLaTeXMLUrl
  • $wgMathLaTeXMLTimeout
  • $wgMathEnableExperimentalInputFormats
‎<math>
Quarterly downloads 146 (Ranked 40th)
Public wikis using 7,934 (Ranked 18th)
Para traduzir a extensão Math, verifique sua disponibilidade no translatewiki.net
Problemas Tarefas em aberto · Relatar um bug

A extensão Math fornece suporte para renderização de fórmulas matemáticas. Uma visão geral do que pode ser feito atualmente com esta extensão está disponível na m:Help:Displaying a formula.

Mais informações sobre como instalar e configurar esta extensão, inclusive para versões mais antigas, podem ser encontradas em Extensão:Math/advancedSettings .

See an overview of what can currently be done with this extension at Extension:Math/Syntax.

Instalação

This extension comes with MediaWiki 1.38 and above. Logo, não é necessário baixá-la novamente. No entanto, ainda é necessário seguir as outras instruções fornecidas.
  • Baixe e coloque o(s) arquivo(s) num diretório chamado Math na sua pasta extensions/.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Math
  • Adicione o seguinte código ao final do seu arquivo LocalSettings.php :
    wfLoadExtension( 'Math' );
    
  • Execute o script de atualização que criará automaticamente as tabelas de banco de dados necessárias a essa extensão.
  • Para ver as matemáticas além de uma saída de texto simples, siga as instruções abaixo para ativar vários modos de saída de matemática.
  • If you have problems for represent formulas when trying to use RESTBase, you can try using the following patch
  •   Concluído – Navegue à página Special:Version em sua wiki para verificar se a instalação da extensão foi bem sucedida.


Instalação com Vagrant:

  • Se estiver usando o Vagrant , instale com 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. Para qualquer problema que você veja, a melhor opção é criar uma tarefa em 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 por favor contribua.

Usage

Once installed, you write formulas using TeX markup syntax inside the ‎<math> tag. For example:

<math>E=mc^2</math>

Renders as:

E=mc2


Ver matemática

O tipo de saída depende do software usado para ler a página. Se puder, a extensão Math gera MathML. Caso contrário, ela gera imagens em SVG (convertendo caracteres em elementos <path>) ou PNG. O suporte matemático básico funciona para todos os navegadores. Mas, para obter melhores resultados, talvez seja necessário alterar suas configurações:

Todos os parâmetros de configuração

Nome da configuração Valor padrão Descrição
$wgMathValidModes [ 'source', 'mathml' ] Defina o modo permitido no servidor.
$wgMathDisableTexFilter 'never' Opção para desativar o filtro tex. Se definido como verdadeiro, qualquer expressão do LaTeX será analisada, isso pode ser um risco potencial de segurança. Se definido como false somente um subconjunto dos comandos TeX é permitido. Consulte a wikipedia Ajuda: Matemática para obter mais detalhes. Use "sempre" para desativar esse recurso.
$wgMathFullRestbaseURL false A extensão matemática obtém a configuração padrão do Editor Visual, se disponível. Detalhes.
$wgMathPreferRestbaseURL true Whether to allow using of internal RESTBase path instead of $wgMathFullRestbaseURL and $wgVisualEditorFullRestbaseURL. Set false if you want to use external RESTBase in any case.

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

Modo: 'mathml'

  Atenção: Mathoid is no longer actively developed in favor of Native MathML mode. It will eventually be discontinued.

Você pode usar Mathoid, um aplicativo que usa MathJax no lado do servidor para converter a entrada texvc em renderização MathML+SVG. Esta é a opção mais recomendada; Mathoid é o modo de renderização matemática usado na Wikipedia.

Mathoid como um serviço

"Mathoid como um serviço" é a abordagem recomendada para a extensão Math, e é a abordagem padrão. Se você não adicionar nenhuma configuração adicional ao LocalSettings.php, o Math usará os serviços Mathoid do cluster Beta e RESTBase para fazer toda a renderização de fórmulas matemáticas. As configurações padrão são:

// Definir MathML como opção de renderização padrão
$wgDefaultUserOptions['math'] = 'mathml';
$wgMathUseInternalRestbasePath = false;
$wgMathFullRestbaseURL = 'https://wikimedia.org/api/rest_';
$wgMathMathMLUrl = 'https://mathoid-beta.wmflabs.org';
  Atenção: Wikimedia plans to discontinue RESTBase services including the Mathoid endpoint used by Math extension by default, though there is no specific EOL date yet. For sites using newer MediaWiki versions, Native MathML mode is recommended instead.

Você pode modificar essas configurações para usar diferentes serviços Mathoid e RESTBase, potencialmente incluindo o seu próprio.

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

Versão MediaWiki:
1.39

Modo: '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

Modo: '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).

Native MathML

Versão MediaWiki:
1.40

Modo: 'native'

This mode will generate MathML from LaTeX via PHP without Mathoid. Note this mode does not have image fallback, so formulas will only be displayed correctly if the browser supports MathML. Firefox and Safari introduced MathML support early (2006 and 2008), but support in Chromium-based browsers is a much more recent addition (Chrome 109, released in 2023).

MathJax

Versão MediaWiki:
1.42

Mode: 'mathjax'

This mode works the same as Native MathML mode (generating MathML from LaTeX via PHP), but it will use MathJax 3 to render MathML. Therefore it will work for browsers that do not have MathML support, with the overhead of loading MathJax library (bundled in Math extension) on page views.

  Atenção: Previously, a MathJax mode based on MathJax 2 is provided in MediaWiki 1.19-1.25. To use MathJax to render formulas in MediaWiki 1.26-1.41, see Extensão:SimpleMathJax .

No rendering

Modo: '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.

Tracking categories

The extension creates a number of tracking categories to detect errors and deprecated features. Their message keys begin with math-. Administrators may change a tracking category's name in a wiki by editing the message's value in that wiki's MediaWiki namespace. Special:TrackingCategories shows each tracking category's name, message key, and description.

Página MediaWiki Padrão Descrição
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. Veja 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 use the Firefox MathML copy addon to copy formulae to other applications such as Microsoft Word (video), or Google docs with the g(Math) plugin (video)
  • 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:Integral article. Afterwards you need to bypass your browser cache so that the new created images of the formulas are actually downloaded.

Relatório de erros

Se algo está errado com a extensão de matemática você pode denunciar isso em Phabricator. Além disso, você deve verificar como seu problema se relaciona com os testes de unidade automatizada que são gerados a partir da página CoverageTest.

Leitura adicional

Confira Extensão:Math/advancedSettings para versões antigas e mais informações.

Subpáginas

Ver também