ユーザー選択の「生」を取得する(Markdownなし)

ユーザーが引用する際にハイライトするMarkdownテキストを取得するのがquoteState.bufferであり、それはthis.args.data.quoteState.bufferからアクセスできるquote-share-buttons-beforeプラグインのアウトレットに渡されるものの一つであることを理解しています。Markdownに変換される前の、ユーザーがハイライトしている生の解析されていないテキストを取得するにはどうすればよいですか?投稿を「デマークダウン」することは可能ですか?そもそも可能なのでしょうか?

ファイル:

よろしくお願いします。

テスト:

  • この箇条書きは星ではなく、プラス記号です。

考えられる回避策は、生の投稿をMarkdownに変換し(方法は不明ですが)、変換されたテキストでの選択範囲の開始インデックスと終了インデックスを確認してから、それを使用して元のテキストからセクションを抽出することです。問題は、文字が1対1で置き換えられると仮定する必要があることです。つまり、Markdownは文字を1対1で置き換えます。

編集とコピー引用符の処理速度を確認しましたか?そこで選択したテキストはどうなりますか?

「いいね!」 2

この場合、引用をコピーすると、実際に使用した + ではなく、引用内の箇条書きが * に変換されます。アスタリスクの代わりにプラス記号を取得する方法を探しています。

「いいね!」 2

はい、これは非常に難しいです。おそらく難易度レベル20です。

選択から取得する際には、生のHTMLを取得しています。

<ul>
<li>some text</li>
</ul>

ここには *+ に関する情報はありません。

さらに複雑なことに、長いリストからいくつかの項目を選択するだけで、次のようになります。

<li>some text</li>
<li>some other text</li>

これには ulol の区別さえありません。

引用のために行っていることは次のとおりです。

HTML → Markdown

これは損失のあるプロセスであり、バグが発生しやすいプロセスでもあります。変換前にHTMLをクリーンアップするための多くの回避策があります。

次のように変更するには:

HTML → 元のMarkdownには、HTMLの行/列 → Markdownの逆マッピングが必要です。これは現在、markdown.itではサポートされていません。

「いいね!」 1

うーん、それはかなり難しいタスクになりますね。まあ、説明ありがとうございました!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.