MathJax для MediaWiki
MathJax |
- Системные требования:
- MediaWiki
- Разработчик:
- Александр Машин и Mithgol the Webmaster
- Дата появления:
- 2010
- Текущая версия:
- 3.1
- Статус:
- стабильно
MathJax — расширение для MediaWiki, позволяющее показывать формулы в форматах ΤΕΧ и MathML путём вызова JavaScript-инструментария MathJax, созданное специально для «Традиции» Мицголом-вебмастером и Александром Машиным в 2010—2012 гг. и дорабатываемое по сей день.
Это расширение было разработано для «Традиции», в связи с нехваткой мощности её web-сервера для преобразования формул в изображения с помощью
Использование расширенияПравить
Когда расширение установлено с настройками по умолчанию, в формулы преобразуется викитекст внутри определённых тегов:
Формат | Режим вывода | |
---|---|---|
внутристрочный | выносной | |
ΤΕΧ |
|
|
MathML | <math xmlns="http://www.w3.org/1998/Math/MathML">...</math> |
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">...</math>
|
Кроме того, распознаётся не обрамлённый тегом код ΤΕΧ, наподобие \begin{pmatrix}...\end{pmatrix}
.
MathJax для MediaWiki в «Традиции»Править
Порядок работы с формулами в «Традиции» описан на страницах:
Расширения ΤΕΧ от MathJax и локализация формулПравить
Список поддерживаемых расширений ΤΕΧ:
- amsmath
- amscd
- mathtools
- physics
- braket
- mhchem
- gensymb
- textcomp
- upgreek
- bbox
- cancel
- boldsymbol
- extpfeil
- verb
- color
- colorv2
- enclose
- html
- action
- newcommand
Дополнительно к операторам ΤΕΧ, реализованным MathJax, с помощью сообщений MediaWiki определяются макросы:
- заглавные греческие буквы, по начертанию совпадающие с латинскими, по неизвестной причине не реализованные MathJax,
- несколько операторов,
- тригонометрические, гиперболические и логарифмические функции, выводящиеся в соответствии с русской традицией, или же западной, если в настройках MediaWiki указан английский язык содержимого.
Разделённый запятыми список макросов находится в сообщении mathjax-macros
, а значения макросов — в сообщениях с названиями вида mathjax-macro-(название макроса)
, например, значение макроса \ctg
для котангенса находится в сообщении mathjax-macro-ctg
.
Традиции
Команда | Вывод |
---|---|
\AA |
|
\Ai |
|
\Alpha |
|
\Beta |
|
\Bi |
|
\C |
|
\Chi |
|
\Ci |
|
\Coppa |
|
\D |
|
\Ei |
|
\Epsilon |
|
\Erf |
|
\Eta |
|
\F |
|
\H |
|
\Hom |
|
\Ind |
|
\Iota |
|
\J |
|
\Kappa |
|
\Koppa |
|
\Larr |
|
\Li |
|
\Mu |
|
\N |
|
\Nu |
|
\O |
|
\Omicron |
|
\P |
|
\Q |
|
\R |
|
\Rarr |
|
\Rho |
|
\Sampi |
|
\Si |
|
\Stigma |
|
\Tau |
|
\Wr |
|
\Ypsilon |
|
\Z |
|
\Zeta |
|
\acos |
|
\acosecant |
|
\acosine |
|
\acot |
|
\acotangent |
|
\acsc |
|
\am |
|
\and |
|
\arccosec |
|
\arccot |
|
\arccotangent |
|
\arccsc |
|
\arcctg |
|
\arcgd |
|
\arch |
|
\arcos |
|
\arcosh |
|
\arcosine |
|
\arcotanh |
|
\arcsch |
|
\arcsec |
|
\arctan |
|
\arctangent |
|
\arctg |
|
\arcth |
|
\arsech |
|
\arsh |
|
\arsinh |
|
\artanh |
|
\arth |
|
\asec |
|
\asecant |
|
\asin |
|
\asine |
|
\atan |
|
\atangent |
|
\ba |
|
\bc |
|
\bp |
|
\bs |
|
\cd |
|
\ceil |
|
\ch |
|
\clubs |
|
\cn |
|
\const |
|
\coppa |
|
\cosec |
|
\cosecant |
|
\cosh |
|
\cot |
|
\cotangent |
|
\cotanh |
|
\coth |
|
\cs |
|
\csc |
|
\csch |
|
\ctg |
|
\cth |
|
\dalembert |
|
\dc |
|
\del |
|
\diag |
|
\diamonds |
|
\dn |
|
\ds |
|
\empty |
|
\erfc |
|
\erfi |
|
\euro |
|
\fint |
|
\floor |
|
\gd |
|
\geq |
|
\hearts |
|
\helm |
|
\hypcosecant |
|
\hypcosine |
|
\hypcotangent |
|
\hypsecant |
|
\hypsine |
|
\hyptangent |
|
\ind |
|
\intBar |
|
\intbar |
|
\intcap |
|
\intclockwise |
|
\intcup |
|
\koppa |
|
\lam |
|
\larr |
|
\leq |
|
\li |
|
\lowint |
|
\nc |
|
\nd |
|
\ns |
|
\of |
|
\oiiint |
|
\oiint |
|
\ointclockwise |
|
\ointctrclockwise |
|
\or |
|
\ord |
|
\qall |
|
\qand |
|
\qas |
|
\qassume |
|
\qcc |
|
\qelse |
|
\qeven |
|
\qfor |
|
\qgiven |
|
\qif |
|
\qin |
|
\qinteger |
|
\qlet |
|
\qodd |
|
\qor |
|
\qotherwise |
|
\qsince |
|
\qthen |
|
\qunless |
|
\qusing |
|
\rarr |
|
\rect |
|
\rot |
|
\sampi |
|
\sc |
|
\sd |
|
\secant |
|
\sech |
|
\sgn |
|
\sh |
|
\si |
|
\sign |
|
\sinc |
|
\sinh |
|
\sn |
|
\spades |
|
\sqint |
|
\stigma |
|
\sub |
|
\sube |
|
\supe |
|
\surfintegral |
|
\tan |
|
\tangent |
|
\tanh |
|
\textvisiblespace |
|
\tg |
|
\th |
|
\thetasym |
|
\up |
|
\upint |
|
\varoiiint |
|
\varoiint |
|
\varointclockwise |
|
\varointctrclockwise |
|
\vline |
|
\volintegral |
|
\weierp |
|
\ypsilon |
|
\zn |
Расширение понимает викиссылки внутри уравнения: например, <math>[[Скорость света|c]]^2</math>
даст mathjax-pages
автоматически ставятся викиссылки, указывающие на страницы об этих функциях, определяемые в сообщениях с названиями вида mathjax-page-(название функции)
, например, название функции \ctg
для котангенса находится в сообщении mathjax-page-ctg
.
Традиции
Технические особенностиПравить
Особенность расширения — то, что оно состоит из серверной и клиентской части, полагающихся на MathJax, написанный на JavaScript'е.
Опциональная серверная часть преобразовывает ΤΕΧ в MathML. Серверная часть может реализовываться как установкой MathJax на сервере MediaWiki, так и в отдельном контейнере Docker.
Опциональная клиентская часть или перерисовывает формулы в формате MathML, или отрисовывает формулы ΤΕΧ, присоединяя к ним контекстное меню инструментов. Если формул на странице нет, конфигурационный JavaScript и скрипты MathJax к ней добавлены не будут.
НастройкиПравить
Администратору сервера MediaWiki доступны следующие настройки расширения:
- переменные, регулирующие включение серверной и клиентской частей расширения, а для сервеной части — возможный URL контейнеризированного MathJax,
- путь к локальному и CDN-дистрибутивам MathJax и переменная для выбора между ними,
- тег для формул, по умолчанию,
<math>
, - тег для химических формул, по умолчанию,
<chem>
, - пространства имён XML для MathML, по умолчанию, только одно —
http://www.w3.org/1998/Math/MathML
, - промежуточные символы обрамления внутристрочных и выносных формул ΤΕΧ, по умолчанию, соответственно,
\(...\)
и$$...$$
, - список тегов (
<script>
,<noscript>
,<style>
,<textarea>
,<pre>
,<code>
,<nowiki>
,<kbd>
,<tt>
) и классов (diff
), где формулы не распознаются, - список допустимых тегов MathML, по умолчанию, все теги из спецификации.
С помощью системных сообщений MediaWiki настраиваются:
- макросы ΤΕΧ, как было написано выше,
- страницы с описаниями функций, изображаемых
, - перечень допустимых окружений ΤΕΧ — в
mathjax-environments
.
История версийПравить
Версия | Дата | Изменения |
---|---|---|
3.1 | 16 марта 2025 |
|
3.0 | 4 ноября 2024 |
|
2.0 | 6 февраля 2021 |
Подключение серверной части расширения. |
1.8 | 6 февраля 2021 |
|
1.7 | 30 августа 2017 |
|
1.62 | 20 сентября 2015 | Возможность использовать совместно с HTTPS |
1.61 | 17 сентября 2015 | Подключение расширения MathJax cancel, изменение реализации всплывающих подсказок |
1.6 | 22 июня 2015 | Автоматическая вставка викиссылок на страницы об определённых функциях в формулы; оптимизация |
1.51 | 22 июня 2015 | Поддержка обратных гиперболических функций |
1.5 | 15 февраля 2014 | Подключение в конфигурацию по умолчанию расширений MathJax color для вывода цветных формул, action для интерактивных формул и AMScd для показа коммутативных диаграмм. |
1.4 | 6 сентября 2012 | Возможность вставлять в формулы ΤΕΧ викиссылки в формате [[Скорость света|c]] , вынос конфигурации MathJax в отдельное сообщение MediaWiki, контроль допустимости названия окружения в командах \begin {...} и \end {...} , поддержка нумерации уравнений.
|
1.3 | 3 сентября 2012 | Возможность вставлять в формулы ΤΕΧ гиперссылки в формате \href{http://traditio-ru.org/wiki/Скорость_света}{c} .
|
1.2 | 1 сентября 2012 | Запись дополнительно определяемых макросов ΤΕΧ в системные сообщения MediaWiki. |
1.11 | 27 августа 2012 | Устранение ошибки, из-за которой, после правки раздела без формул страницы с формулами, к странице переставали прикрепляться конфигурация и сценарии MathJax. |
1.1 | 23 августа 2012 | Замена <displaymath>...</displaymath> для выносного ΤΕΧ на <math display="block">...</math> .
|
1.0 | 23 августа 2012 | Стабильный выпуск. Распознавание традиционного для вики формата : <math>...</math> (в начале строки) в качестве выносной формулы ΤΕΧ.
|
0.9 | 23 августа 2012 | Конфигурирование макросов (включая русификацию тригонометрических и логарифмических функций) без вмешательства в код расширения |
0.8 | 5 августа 2012 | Пересмотр архитектуры: переход к определению пользовательского тега MediaWiki |
0.7 | 5 августа 2012 | Заявленная поддержка MathML реализована. Последняя публично доступная версия. |
0.6 | 21 июля 2012 | Поддержка формул ΤΕΧ вне тега <math> , а также выносных формул
|
0.5 | февраль 2012 | Совместимость с MathJax 2.0 |
0.3 | осень 2011 | Добавление некоторых недостающих символов |
0.2 | 2011 | Переход на внешний CDN-дистрибутив MathJax по адресу http://cdn.mathjax.org/mathjax/latest/MathJax.js |
0.1 | 30 октября 2010 | Первая версия |