From d86f39cb83617465c2937eb18c8d5cb4ce49da40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hu=C3=A1ng=20J=C3=B9nli=C3=A0ng?= Date: Thu, 15 Nov 2018 00:10:50 +0800 Subject: [PATCH] fix(markdown): add more category to CJK regex (#5480) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The following characters should be treated as CJK character ``` 3099..309A ; Hira Kana # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK 309B..309C ; Hira Kana # Sk [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK ``` Here is the [playground link](https://deploy-preview-5402--prettier.netlify.com/playground/#N4Igxg9gdgLgprEAuEhqhkFkMhahnYeoZ2EaGdQZoZ1AzBkEyGVczcnco8gHSmcGkGQEwZTB7BkHuGQGQjAdgw9AgAyAHhmGBHhmGAnhkDWDIEH7QJ0OgJIZAG3KB1BlIACANoA3ALpbAz+nLAFhGA-50CaDIGiGQMoMgCwZAEP89A2Qxj3E99NeBIf8BBDHyA8QyAMQyA+gyAMgzCgABygDRBgCFuslyAVgyAkQzJrIDGDGGAQAzMzCAANCAQAA4wAJbQAM7IoACGAE6NEADuAApNCLUo9XoQFQAmRSAARo31YADWcDAAyqWTFVAA5sgwjQCucMUAFjAAtgA2AOq7FfDVi2Bwc90XFXoXAJ7I4NW1xcvVcI0w7RMVgd6sgAGb1I4-YoAK2qAA8AEITaazOb1A5wAAyyzgYIhUJAsLhc2WKyOcAAipsIPA8ZCdiBFo0fo03sDGlNBm0oCNSi0ficJqU3ny4Cy9Ljio04ABHTYVaUA+pAkFIcH04o-A4VdZbBnVUnkqk03Fq-EMmD1UYnIYwXbIABMxQ29QqR1JAGEIAdgW8oNBJSBNj8ACpWnrqgl85YwG2DO3IADsAAYAL6poA) to show that current `prettier` adds redundant whitespaces around the characters. The testcase text are copied from [半濁点 - Wikipedia](https://ja.wikipedia.org/wiki/%E5%8D%8A%E6%BF%81%E7%82%B9) and [ヴ - Wikipedia](https://ja.wikipedia.org/wiki/%E3%83%B4) respectively. --- src/language-markdown/constants.evaluate.js | 4 +++- .../__snapshots__/jsfmt.spec.js.snap | 10 +++++++++- tests/markdown_splitCjkText/chinese-japanese.md | 4 ++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/language-markdown/constants.evaluate.js b/src/language-markdown/constants.evaluate.js index 946a4d16e..8956cab6b 100644 --- a/src/language-markdown/constants.evaluate.js +++ b/src/language-markdown/constants.evaluate.js @@ -12,7 +12,9 @@ const cjkPattern = cjkRegex() "Other_Letter", "Letter_Number", "Other_Symbol", - "Modifier_Letter" + "Modifier_Letter", + "Modifier_Symbol", + "Nonspacing_Mark" ] }) ) diff --git a/tests/markdown_splitCjkText/__snapshots__/jsfmt.spec.js.snap b/tests/markdown_splitCjkText/__snapshots__/jsfmt.spec.js.snap index dcd91714d..d1837535c 100644 --- a/tests/markdown_splitCjkText/__snapshots__/jsfmt.spec.js.snap +++ b/tests/markdown_splitCjkText/__snapshots__/jsfmt.spec.js.snap @@ -8,7 +8,10 @@ exports[`chinese-japanese.md - markdown-verify 1`] = ` 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。 -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +カ゚キ゚ク゚ケ゚コ゚でガギグゴ + +かつてはワ行のワ、ヰ、ヱ、ヲに濁点を付して [v] 音を表現すること(ワ゛、ヰ゛、ヱ゛、ヲ゛)も行われたが、一般的にはならなかった。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 這是一段很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長 很長的段落 @@ -20,6 +23,11 @@ exports[`chinese-japanese.md - markdown-verify 1`] = ` 何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。 +カ゚キ゚ク゚ケ゚コ゚でガギグゴ + +かつてはワ行のワ、ヰ、ヱ、ヲに濁点を付して [v] 音を表現すること(ワ゛、ヰ゛、ヱ +゛、ヲ゛)も行われたが、一般的にはならなかった。 + `; exports[`korean.md - markdown-verify 1`] = ` diff --git a/tests/markdown_splitCjkText/chinese-japanese.md b/tests/markdown_splitCjkText/chinese-japanese.md index a88925416..3170bb7c7 100644 --- a/tests/markdown_splitCjkText/chinese-japanese.md +++ b/tests/markdown_splitCjkText/chinese-japanese.md @@ -5,3 +5,7 @@ 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 空白全形空白全形空白全形空白 何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。 + +カ゚キ゚ク゚ケ゚コ゚でガギグゴ + +かつてはワ行のワ、ヰ、ヱ、ヲに濁点を付して [v] 音を表現すること(ワ゛、ヰ゛、ヱ゛、ヲ゛)も行われたが、一般的にはならなかった。 \ No newline at end of file