Обновление Mathjax до версии 4

Хорошо, у меня есть отличные новости и немного расстраивающие.

Во-первых, вы абсолютно правы: добавление воронки размещает эти файлы в правильном месте. Я добавил воронку в свою ветку, и теперь всё работает отлично без зависимости от CDN. :tada:

К сожалению, я не могу запустить ваш код в данный момент. Всякий раз, когда я перехожу на страницу с математикой, математика не отображается, и в консоли я вижу следующее сообщение об ошибке:
Uncaught (in promise) Error: State EXPLORER already exists

Я уверен, что раньше ваш код работал, так что, вероятно, это что-то сделал я. Для ясности: я буквально создал совершенно новую директорию, используя методы, описанные в Установка Discourse на macOS для разработки.

git clone https://github.com/discourse/discourse.git ./discourse
cd ./discourse
bundle install
pnpm install
bundle exec rake db:create
bundle exec rake db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate

# В одном терминале
bundle exec rails server

# В другом терминале
bin/ember-cli

Затем я загрузил ваш код с помощью:

git checkout 71ad0305f812311f2a4570edf7c33f97de46c457
git switch -c mathjax-sam

Даже из этой свежей настройки я получаю ошибку.


На данный момент я довольно доволен своей версией кода, но всё ещё любопытно, что происходит у вас. Однако мне нужно сделать перерыв в связи с праздниками. Я с радостью вернусь к этому через несколько дней.

Одна последняя мысль: насколько мне известно,

await import("tex-mml-chtml.js") // за которым следует
await import("input/asciimath.js")

не должно работать, что, как я думаю, фактически делает ваш код.

Я неточно указываю пути, но моя суть в том, что я не уверен, что последовательные динамические вызовы import приводят к правильной структуре MathJax. Мне кажется, что загрузка компонентов MathJax довольно сложна, и именно поэтому у них такой детальный процесс загрузки с объектом MathJax и всем остальным.

Огромное спасибо за вашу помощь и терпение, @sam!