Discourse Math

OK、非常に良いニュースと、少々厄介なニュースがあります。

まず、funnelを追加することで、それらのファイルが正しい場所に配置されるというのは、全くその通りです。私のブランチにfunnelを追加したところ、CDNへの依存なしで素晴らしい動作をするようになりました。 :tada:

残念ながら、現時点ではあなたのコードを実行することができません。数式のあるページに移動するたびに、数式が組版されず、コンソールに次のエラーメッセージが表示されます。
Uncaught (in promise) Error: State EXPLORER already exists

以前はあなたのコードが動作していたことは確かですので、何か私がしたことなのだろうと思います。はっきりさせておきますが、Install Discourse on macOS for developmentで説明されている手順を使って、完全に新しいディレクトリを使い始めました。

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

# 1つ目のターミナルで
bundle exec rails server

# 2つ目のターミナルで
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!

「いいね!」 1