**こんにちは。**はい
**hello.**yes
上記の太字表示が無効です。
**こんにちは。**はい
**hello.**yes
上記の太字表示が無効です。
こんにちは。オーケー
こんにちは。オーケー
こんにちは。オーケー
え? ** を使っても、Bボタンを押しても太字になります。MarkdownエディタとRTEでも同じです。
**こんにちは。了解です。**hello
最後の**の前に句読点があり、その後ろに文字が続けてあります。試してみてください。
以下の形式は機能しません
**+文字+句読点+**+文字
こんにちは。オーケー。 some text
そして
こんにちはオーケー without punctuation
しかし、句読点と末尾の ** の後にスペースを置かないと、次のようになります:
**こんにちはオーケー。**text
**こんにちはオーケー。**text
対して
**こんにちはオーケー。** text
こんにちはオーケー。 text
これがマークダウンのバグなのか、機能なのか、それとも何か別のものなのかはわかりません。
問題はアスタリスクの前の句読点にあるのではなく、アスタリスクの直後にスペースなしでテキストが続いていることにあると思います。
with punctuation. space text
**with punctuation.**no space text
**with punctuation.** space text
**with punctuation.**no space text
私はわかります。これはMarkdownのデフォルトの動作です。 ![]()
これは Markdown で知られている問題であり、Markdown パーサーを変更できない限り修正できません
私の回避策は、<span></span> を使用することです
**是的。**<span></span>对的。 是的。对的。
CommonMarkの仕様では、** は右側フランキングの区切り文字列の一部である場合にのみ、太字の強調を終了できます。句読点(.)に先行し、単語文字(t)に後続する区切り文字は右側フランキングではないため、強調を終了できません。markdown-it はこれをリテラルテキストとして解析します。このルールは *、_、および __ にも適用されます。
これについては我々ができることはあまりないでしょう。仕様に従っているからです。しかし、この件によりリッチエディターのマークダウンシリアライザーにバグがあることが判明しました。UIを使用してこの状況(**text.**text)を作成した場合、リッチエディター上では正しく表示されていましたが、出力(cooked)時にはプレーンテキストとして処理されていました。このPR は、マークされた領域から句読点を除外することでこの状況を解決し、text.text(**text**.text)となります。
このバグはまだ再現可能です。Markdown エディタに切り替えた後で、句読点が外部に移動します。
リッチエディタでのテスト: **text.**text
これは予期された動作であり、Markdown シリアライズ中に(ほぼ気づかない)句読点を強調から除外するという妥協をすることで、テキスト内の意図的な強調が壊れるのを避けています。