リンクに含まれる))も正しくレンダリングされ、機能するようにする

:information_source: 概要

Discourse は、二重閉じ括弧 )) を含むリンクを適切にレンダリングしません。これは、リンクが直接追加された場合や、テキストの上に貼り付けて自動テキストリンクを作成した場合に、正しく機能しないことを意味します。

:walking_woman: 再現手順

  1. URL の途中に )) が含まれるリンクを作成します。例: meta.discourse.org/?parameter_one=((value))&parameter_two=value
  2. これをコンポーザーにそのまま貼り付けます。
  3. 同じ URL をテキストの上に貼り付けて、自動テキストリンクを作成します。

:white_check_mark: 期待される結果

どちらの場合も、元のリンクは正しくレンダリングされ、機能するはずです。

:x: 観測された結果

リンクの機能は )) で途切れ、URL の残りの部分が失われます。

例:

:books: 追加コンテキスト

リンクを直接貼り付ける場合、二重閉じ括弧を %29) としてエンコードするか、テキストの上に貼り付ける際に URL を <> で囲むことが有効な場合があります。例:

「いいね!」 4

これは markdown-it の動作であり、より正確には、その基盤となる linkify ライブラリの動作であるため、修正できないと思います、@lindsey

この動作は、こちらでテストできます: linkify-it demo

彼ら自身も、この件に関して 8 年以上オープンなイシューを抱えています: Better handle nested parens · Issue #23 · markdown-it/linkify-it · GitHub

「いいね!」 4

@Vitaly さん、どう思われますか? この問題を修正するために linkify をフォークすべきでしょうか、それともアップストリームからの修正を待つべきでしょうか? この問題の修正をあなたに依頼することはできますか?