MathJax для MediaWiki
MathJax |
- Системные требования:
- MediaWiki
- Разработчик:
- Александр Машин и Mithgol the Webmaster
- Дата появления:
- 2010
- Текущая версия:
- 3.0
- Статус:
- стабильно
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 и локализация формул[править | править код]
Дополнительно к операторам ΤΕΧ, реализованным MathJax, с помощью сообщений MediaWiki определяются макросы:
- заглавные греческие буквы, по начертанию совпадающие с латинскими, по неизвестной причине не реализованные MathJax,
- несколько операторов,
- тригонометрические, гиперболические и логарифмические функции, выводящиеся в соответствии с русской традицией, или же западной, если в настройках пользователя MediaWiki указан английский язык интерфейса.
Разделённый запятыми список макросов находится в сообщении mathjax-macros
, а значения макросов — в сообщениях с названиями вида mathjax-macro-(название макроса)
, например, значение макроса \ctg
для котангенса находится в сообщении mathjax-macro-ctg
.
Расширение понимает викиссылки внутри уравнения: например, <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.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 | Первая версия |
См. также[править | править код]