gettalong / kramdown

kramdown is a fast, pure Ruby Markdown superset converter, using a strict syntax definition and supporting several common extensions.
http://kramdown.gettalong.org
Other
1.72k stars 274 forks source link

Japanese chars combined with MD syntax are not converted #799

Closed JonasPospichal closed 9 months ago

JonasPospichal commented 9 months ago

Hi,

Our documentation platform provider Zoomin Software utilizes kramdown for conversions of MD to HTML, we came across an interesting problem that the provider is unable to solve on their end. When converting Japanese text with MD syntax and some form of brackets - ([{ - the MD tags do not get converted. See the example below, look for the ** tags:

**[Configuration Center]**をクリックし、ユーザログイン名に**admin**、パスワードに**admin**と入力します。**[システム]**>**[インターフェース設定]**>**[管理インターフェース1]**で、IPアドレスの設定を行います(GUIを使用したIP設定の管理の図を参照)。
IPアドレスを設定し、**[保存]**をクリックします。IPアドレスが変更され、デバイスが使用不可になります。10秒ほど待ち、デバイスをコンピュータから取り外し、管理インターフェースをLANネットワークに接続します。DHCPによる設定を行うIPアドレスの設定が完了したら、電源ボタンを短く押し、デバイスがオフになるまで待ちます。デバイスがオフになったら、もう一度オンにします。数分後、DHCPプロトコルからIPアドレスが取得されます。固定IPアドレスの設定が完了している場合は、デバイスをオフにする必要はありません。

This produces the following HTML code (also look for the ** tags):

<p><strong>[Configuration Center]<strong>をクリックし、ユーザログイン名に</strong>admin</strong>、パスワードに<strong>admin</strong>と入力します。<strong>[システム]</strong>&gt;<strong>[インターフェース設定]</strong>&gt;**[管理インターフェース1]**で、IPアドレスの設定を行います(GUIを使用したIP設定の管理の図を参照)。</p>
<p>IPアドレスを設定し、**[保存]**をクリックします。IPアドレスが変更され、デバイスが使用不可になります。10秒ほど待ち、デバイスをコンピュータから取り外し、管理インターフェースをLANネットワークに接続します。DHCPによる設定を行うIPアドレスの設定が完了したら、電源ボタンを短く押し、デバイスがオフになるまで待ちます。デバイスがオフになったら、もう一度オンにします。数分後、DHCPプロトコルからIPアドレスが取得されます。固定IPアドレスの設定が完了している場合は、デバイスをオフにする必要はありません。</p>

Is there any way how to fix this or influence this behavior?

Thank you!

Regards,

Jonáš.

gettalong commented 9 months ago

Could you reduce the problem to a minimal case because I'm not sure what exactly you mean?

Is the following the behaviour that you think is invalid:

**[Configuration Center]**をクリックし、ユーザログイン名に**admin**
<p><strong>[Configuration Center]</strong>をクリックし、ユーザログイン名に<strong>admin</strong></p>
JonasPospichal commented 9 months ago

Hi Thomas,

Thanks for a swift reply. No, not really. This is the smallest possible example of that behavior: MD:

IPアドレスを設定し、**[保存]**をクリックします。

HTML:

<p>IPアドレスを設定し、**[保存]**をクリックします。(...)</p>

The ** ** pairs are not converted into the <strong></strong> pairs.

gettalong commented 9 months ago

When I run your example through the kramdown binary, it gives me this output:

<p>IPアドレスを設定し、<strong>[保存]</strong>をクリックします。</p>

which looks correct.

Maybe there is something else at play?

JonasPospichal commented 9 months ago

Thanks, Thomas. It definitely looks like it. I'll check with our provider. Apologies for taking your time.

gettalong commented 9 months ago

No problem! :smile: I will close the issue. If it turns out it can be reproduced with kramdown alone, please let me know.