2016-10-21 2 views
1

Я установил mediawiki-1.26.2 на личном сервере и хочу отображать в нем latex формулы. Поэтому я решил использовать Extension:MathJax.MathJax в MediaWiki: экранированный синтаксис показан, консоль имеет 404 ошибки

Сначала я установил локальную копию MathJax, чтобы отобразить уравнения (на верхнем уровне сервера: /var/www/html/mediawiki-1.26.2/). По завершении установки я протестировал ее, посетив http://(Server)/MathJax/test, где страница сообщает мне, что «MathJax появляется, чтобы работать!».

Затем я загрузил расширение, извлеченный архив, переименовал его в «MathJax» и перевел его в подкаталог «extensions» mediawiki-1.26.2. После этого я создал символическую ссылку на «mwMathJaxConfig.js» в [local MathJax location]/config/local, которая является каталогом «/var/www/html/mediawiki-1.26.2/MathJax/config/local». Так уже существует два файла:

  1. local.js
  2. mwMathJaxConfig.js (символьная ссылка)

Тогда я изменил последнюю строчку "mwMathJaxConfig.js" от:

MathJax.Ajax.loadComplete("_SUBSTITUTE YOUR URL___/mathjax/config/local/mwMathJaxConfig.js"); 

в это:

MathJax.Ajax.loadComplete("http://localhost/MathJax/config/local/mwMathJaxConfig.js"); 

Потому что extension page говорит: «Возможно, вам понадобится изменить файл mwMathJaxConfig.js, чтобы эта работа ...».

После каждого из них, я тестировал, правильно ли было установлено расширение? (wiki → специальные страницы → версия → Установленная часть расширений) И было имя «MathJax».

Но когда я пытаюсь показать латекс в mediawiki, даже простые термины, подобные этим:

We consider, for various values of $s$, the $n$-dimensional integral 
:<math> \frac{f}{g} </math> 

не правильно, как показано. Результаты:

We consider, for various values of $s$, the $n$-dimensional integral 
\[ \frac{f}{g} \] 

Вы можете увидеть :<math> заменяется \[ и </math> по \]. Поэтому я предполагаю, что MathJax загружен, но не загружается правильно, и проблема находится в последней строке mwMathJaxConfig.js.

Также я сохранил страницу в HTML и посмотрел на его код, и только эта часть кода была связана с MathJax:

<script type="text/javascript" src="./PageName_files/MathJax.js"> </script> 

Приведенный выше код не был в head и PageName это имя сохраненной страницы. Я думаю, что замещается вместо этого кода, который описан в MathJax документации:

<script type="text/javascript" async src="path-to-MathJax/MathJax.js?config=TeX-MML-AM_CHTML"></script> 

Я смотрел на Third-party Extensions в MathJax документации, но не понял его смысл.

Также я проверил local.js файл в [local MathJax location]/config/local которого последняя строка:

MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js"); 

ли я изменить последнюю строку, что и заменить другую строку вместо [MathJax]?

+0

Включает ли конфигурационный файл разделители доллара? По умолчанию значки с одним долларом не активируются, и вы должны использовать '\ (' и '\)' для встроенной математики. Попробуйте двойные доллары и посмотрите, работают ли они, поскольку они включены по умолчанию. –

+0

@DavideCervone Но я тестировал другие типы, например ' ...' и результат был тот же. – hasanghaforian

+0

Что обрабатывается обработкой (TeX, MathML, AsciiMath) и какие разделители используются, зависят от файла конфигурации. Вы не показали нам этого, поэтому мы не можем отлаживать это для вас. Поэтому вам нужно будет проверить файл 'mwMathJaxConfig.js' и свой собственный файл local.js, чтобы убедиться, что они загружают правильный вход и выход jax, загружают необходимые расширения препроцессора и определяют правильные разделители. Вы также должны проверить, действительно ли MathJax загружен, проверяя, задан ли объект 'MathJax' с помощью консоли браузера. Это первое, что нужно проверить. –

ответ

0

Раствор, который работал на Давиде Червоне и hasanghaforian:

Название директории локального MathJax должны быть mathjax и не MathJax, то \ гидроразрыва {е} {г} отображается правильно.

Две ошибки отображаются в консоли браузера:

Эти два файла являются частью стороннего расширения под названием XyJax для обработки коммутативных диаграмм, называемых xypic. Я подозреваю, что расширение MediaWiki, которое вы установили, настроено для загрузки, вам нужно было бы получить его отдельно от указанной выше ссылки. Я не знаю много о расширении, но я думаю, что ссылки относятся к старой версии и что как xypic.js, так и fp.js объединены в более поздних версиях. Если вы не хотите делать коммутативные диаграммы, вы можете удалить их из файла конфигурации mwMathJaxConfig.