インポートされたテキストに着色

こんにちは、

Discourse ベースの新しいホスト型フォーラムを1ヶ月運営しています。非常に満足しています。すでに2000人のユーザーが登録しています。

以前のphpBBフォーラムから色付きテキストを持ってきましたが、新しいフォーラムで機能しません:[color=#BFBFBF]灰色 - 「更新準備完了」[/color]、[color=#FF8000]オレンジ色 - 古い番号[/color]、または[color=#00BF00]緑色 - 現在の番号[/color]。

ご提案があれば幸いです。

BBCode プラグインの利用を検討されましたか?

これはホスト型のフォーラムに使用できますか?

vB から Discourse へ約 100 万件の投稿をインポートした際、移行プロセス中にすべての色に関する BBCode を除去しました。

問題点は、BBCode プラグインが BBCode がネストされている場合(BBCode の中に BBCode)に期待通りに動作しないことでした。そのため、これを詳しく分析した結果、移行プロセス中にすべての色 BBCode タグを再帰的に除去することを決定しました。

ネストされた BBCode のインポートは明らかに非常に厄介です。「不可能ではない」ものの、その労力をかける価値はないと判断しました(また、名前付きカラーフォントはクラスに比べてテーマ化が困難であるため、付加価値もほとんどありません)。

これが参考になれば幸いです。

これはネストされていますか(BBCode 内に BBCode)?
色付きのテキストを得るための代替手段はありますか?

いいえ、BBCode を使用する必要があります。HTML と同様、意味が通じる場合に限ってネスト(入れ子)が可能です。実装されていないコードもあるかもしれません。

私の Discourse Frotz プラグイン は、フォント、色、背景色を組み合わせるために、ネストを正常に使用しています。スクリーンショットのコンパスにある赤い「N」の文字にご注目ください。

公式プラグインをインストールできるか、ホスティング業者に問い合わせてみてください。

@ianm さん、こんにちは

ご提示いただいたコードサンプルはネストされていません。

公式の BBCode プラグインについては、ネストされた BBCode とは「相性が悪い」という経験があります。ただし、ネストされた BBCode が存在しない場合、移行においては「おそらく」問題にはならないでしょう。

当社のサイト移行では、数十年にわたるネストされた BBCode(数十万件)が含まれており、これは大きな問題でした(現在も使用している公式 BBCode プラグインを使用してもです)。そのため、色に関するタグ(そして不要だった他のいくつかのコードタグ)をすべて削除することにしました。5 年前の投稿の文字色が欠落していることに不満を述べたユーザーは一人もいませんし、今後もそうなることはないでしょう。

移行された BBCode を正しく動作させることは、「公式 BBCode プラグインを使うだけ」というほど単純ではありません。数年にわたるさまざまな組み合わせのネストされた BBCode の大規模な移行がそれほど簡単だったなら、当社の完全な移行期間は数ヶ月ではなく数週間だったはずです。これは実際に体験してみなければわからないことであり、「理論」ではなく、これが現実です。公式 BBCode プラグインは優れており、当社でも使用していますが、それはネストされた BBCode の多くを削除した後の話です。

また、色を指定する BBCode タグをすべて完全に削除することを決定しました。なぜなら、テキストに色をハードコードすると、あるテーマ(例えばライトテーマ)では問題なく見えるかもしれませんが、同じ色は別のテーマ(例えばダークテーマ)では良く見えず、しばしば邪魔になるからです。そのため、色に関する BBCode タグをすべて削除することを決定し、その判断をして非常に満足しています。

もちろん、各サイトは移行時に独自のトレードオフの選択を行う必要があります。当社は「非常に優れた REGEX の専門家」が数ヶ月にわたり移行を「完璧」にするために尽力しましたが、その時間の多くは BBCode に費やされました。これに関連する公式プラグインや gems は良い「最初の近似」でしたが、最終的な移行においては物足りなさがありました。そのため、当社では大量の Ruby の gsub() REGEX を作成して整理整頓を行いました。

幸運を祈ります。また、この「移行の戦場からの実践的な視点」が役立つことを願っています。あるレガシーフォーラムから別のフォーラムへの移行は、「すっきりとした移行」ではなく「見栄えの良い移行」を目指す場合、非常に「厄介」になることは間違いありません。

あなたのコードは、BBCode プラグインではそのままで問題なく動作します:

image

ここでは、1 段のネストを追加しました:

image

2 段はどうでしょうか?

image

3 段、そしてもう少し複雑なセットはどうでしょうか?

image

そのプラグインで動作することを確認いただき、ありがとうございます。当社のホスト型フォーラムにも追加できるか検討いたします :thinking:

申し訳ありませんが、BBCode プラグインはスタンダードプランおよびビジネスプランのいずれでもご利用いただけません。各プランで利用可能なプラグインは、こちらでご確認いただけます:https://www.discourse.org/plugins。

ただし、BBCode プラグインおよび Discourse のその他の公式プラグインは、エンタープライズプランではインストール可能です。