優先度/重大度: 低?\n\nプラットフォーム: 新しいRTEを使用するデバイス。\n\n説明: カスタムトークンタイプを作成すると、以前はmarkdown-itエンジンだけで正常に機能していましたが、ProseMirrorではエラーが発生します。ProseMirrorスキーマがないとDOMに解析されたものを処理できないため、カスタムトークンタイプはエラーを引き起こします。同様に、RTEとMarkdownをBBCodeで切り替える際に動作上の問題が発生します。\n\n
\n\n再現手順:\n\nRTEを最初に:\n1. エディタを開く\n2. モードをRTEに設定する\n3. カスタムBBCodeを挿入する。\n a. 例えばDiscourse Metaの場合:[wrap=test2 user-id=1]Content[/wrap]\n4. エラーを無視してRTEモードとmdモードを切り替える。\n a. BBCodeはエスケープされる\n\n\n\nMarkdownを最初に:\n1. エディタを開く\n2. モードをMarkdownに設定する\n3. カスタムBBCodeを挿入する。\n4. mdモードとRTEを切り替える。\n a. BBCodeが表示されない\n\n5. 元に戻して生の表示を確認する。\n\n\n現在の回避策:\nMarkdownモードのみを使用する。\n\n—\nエラー自体が発生することはそれほど大きな問題ではなく、切り替え時やコード挿入時の奇妙な動作の方がより大きな問題です。\n\n理想的な解決策は、すべてのmarkdownプラグインが適切なウィザード/ProseMirrorスキーマを作成して処理することです。\n\n一般的な[wrap] bbcodeに関しては、複数のコンポーネントが同じDiscourseインスタンスで一般的なbbcodeを使用している可能性があるため、プレーンテキストのままにしておくのが最善かもしれません。理想的な解決策は、開発者がカスタムウィザードを作成し、その出力を独自のインプリメンテーションに一致させ、一致が見つからない場合はプレーンテキストにフォールバックさせることでしょう。\n\nより一般的には、ProseMirrorを使用するように更新されていない既存のプラグインについては、プレーンテキスト(エスケープ/非表示ではない)にデフォルト設定するのが良い中間的なフォールバックとなるでしょう。


