fix(markdown): preserve newline around Chinese/Japanese characters not around Korean letters in all proseWrap settings (#20143)
Internal ESLint Plugin Test / Test (push) Canceled after 0s
Lint / Lint (push) Canceled after 0s
Build / Build (push) Canceled after 0s
Prod / Lint (push) Canceled after 0s
Prod / Node.js 14 on MacOS (push) Canceled after 0s
Prod / Node.js 14 on Linux (push) Canceled after 0s
Prod / Node.js 14 on Windows (push) Canceled after 0s
Prod / Node.js 16 on Linux (push) Canceled after 0s
Prod / Node.js 18 on Linux (push) Canceled after 0s
Prod / Node.js 20 on Linux (push) Canceled after 0s
Prod / Node.js 22 on Linux (push) Canceled after 0s
Prod / Node.js 24 on Linux (push) Canceled after 0s
Prod / Node.js 26 on MacOS (push) Canceled after 0s
Prod / Node.js 26 on Windows (push) Canceled after 0s
Prod / [Full Test] Node.js 26 on Linux (push) Canceled after 0s
Prod / Browser(firefox) on Linux (push) Canceled after 0s
Prod / Browser(firefox) on Windows (push) Canceled after 0s
Prod / [Full Test] Browser(chrome) on Linux (push) Canceled after 0s
Prod / CLI (push) Canceled after 0s
Prod / Preview release (push) Canceled after 0s
Release Script Test / Test (push) Canceled after 0s
Dev / Node.js 22 on MacOS (push) Canceled after 0s
Dev / Node.js 22 on Linux (push) Canceled after 0s
Dev / Node.js 22 on Windows (push) Canceled after 0s
Dev / Node.js 26 on MacOS (push) Canceled after 0s
Dev / Node.js 26 on Windows (push) Canceled after 0s
Dev / [Full Test] Node.js 26 on Linux (push) Canceled after 0s
Prod / Build (push) Canceled after 0s
Internal ESLint Plugin Test / Test (push) Canceled after 0s
Lint / Lint (push) Canceled after 0s
Build / Build (push) Canceled after 0s
Prod / Lint (push) Canceled after 0s
Prod / Node.js 14 on MacOS (push) Canceled after 0s
Prod / Node.js 14 on Linux (push) Canceled after 0s
Prod / Node.js 14 on Windows (push) Canceled after 0s
Prod / Node.js 16 on Linux (push) Canceled after 0s
Prod / Node.js 18 on Linux (push) Canceled after 0s
Prod / Node.js 20 on Linux (push) Canceled after 0s
Prod / Node.js 22 on Linux (push) Canceled after 0s
Prod / Node.js 24 on Linux (push) Canceled after 0s
Prod / Node.js 26 on MacOS (push) Canceled after 0s
Prod / Node.js 26 on Windows (push) Canceled after 0s
Prod / [Full Test] Node.js 26 on Linux (push) Canceled after 0s
Prod / Browser(firefox) on Linux (push) Canceled after 0s
Prod / Browser(firefox) on Windows (push) Canceled after 0s
Prod / [Full Test] Browser(chrome) on Linux (push) Canceled after 0s
Prod / CLI (push) Canceled after 0s
Prod / Preview release (push) Canceled after 0s
Release Script Test / Test (push) Canceled after 0s
Dev / Node.js 22 on MacOS (push) Canceled after 0s
Dev / Node.js 22 on Linux (push) Canceled after 0s
Dev / Node.js 22 on Windows (push) Canceled after 0s
Dev / Node.js 26 on MacOS (push) Canceled after 0s
Dev / Node.js 26 on Windows (push) Canceled after 0s
Dev / [Full Test] Node.js 26 on Linux (push) Canceled after 0s
Prod / Build (push) Canceled after 0s
Co-authored-by: fisker Cheung <lionkay@gmail.com>
This commit is contained in:
1 parent
43432349d4
commit
5927216227
7 files changed
+181
-13
No files matched your search
@@ -43,7 +43,9 @@ This ia an english paragraph with a CJK quote “中文“.
|
||||
|
||||
扩展运算符(spread)是三个点(\`...\`)。
|
||||
|
||||
::: warning 注意该网站在国外无法访问,故以下演示无效 :::
|
||||
::: warning 注意
|
||||
该网站在国外无法访问,故以下演示无效
|
||||
:::
|
||||
|
||||
IVS 麻󠄁羽󠄀‼️
|
||||
|
||||
@@ -97,7 +99,9 @@ This ia an english paragraph with a CJK quote “中文“.
|
||||
|
||||
扩展运算符(spread)是三个点(\`...\`)。
|
||||
|
||||
::: warning 注意该网站在国外无法访问,故以下演示无效 :::
|
||||
::: warning 注意
|
||||
该网站在国外无法访问,故以下演示无效
|
||||
:::
|
||||
|
||||
IVS 麻󠄁羽󠄀‼️
|
||||
|
||||
|
||||
@@ -38,6 +38,36 @@ nasalカ゚キ゚ク゚ケ゚コ゚カ゚キ゚ク゚ケ゚コ゚カ゚キ゚ク
|
||||
================================================================================
|
||||
`;
|
||||
|
||||
exports[`cjkMixed.md - {"proseWrap":"always"} format 1`] = `
|
||||
====================================options=====================================
|
||||
parsers: ["markdown"]
|
||||
proseWrap: "always"
|
||||
printWidth: 80 (default) |
|
||||
=====================================input======================================
|
||||
English
|
||||
English
|
||||
日本語
|
||||
日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語
|
||||
日本語
|
||||
한국어
|
||||
한국어
|
||||
中文
|
||||
中文!
|
||||
한국어
|
||||
(中文)
|
||||
|
||||
=====================================output=====================================
|
||||
English English
|
||||
日本語
|
||||
日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語
|
||||
日本語 한국어 한국어 中文
|
||||
中文!
|
||||
한국어
|
||||
(中文)
|
||||
|
||||
================================================================================
|
||||
`;
|
||||
|
||||
exports[`han-kana-alnum.md - {"proseWrap":"always"} format 1`] = `
|
||||
====================================options=====================================
|
||||
parsers: ["markdown"]
|
||||
@@ -290,20 +320,71 @@ Go
|
||||
Rust
|
||||
|
||||
=====================================output=====================================
|
||||
日本語、にほんご。汉语, 中文. 日本語,にほんご.English
|
||||
words!? 漢字!汉字?「セリフ」(括弧) 文字(括弧)文字【括弧】日本語English
|
||||
日本語
|
||||
、
|
||||
にほんご
|
||||
。
|
||||
汉语,
|
||||
中文.
|
||||
日
|
||||
本
|
||||
語
|
||||
,
|
||||
に
|
||||
ほ
|
||||
ん
|
||||
ご
|
||||
.
|
||||
English words!?
|
||||
漢字
|
||||
!
|
||||
汉字
|
||||
?
|
||||
「セリフ」
|
||||
(括弧)
|
||||
文字
|
||||
(括弧)
|
||||
文字
|
||||
【括弧】
|
||||
日本語
|
||||
English
|
||||
|
||||
「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)」「禁則(きんそく)処理(しょり)」「禁則(きんそく)処理(しょり)!!!!」「禁則(きんそく)処理(しょり)!!!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)」
|
||||
「禁則(きんそく)処理(しょり)」
|
||||
「禁則(きんそく)処理(しょり)!!!!」
|
||||
「禁則(きんそく)処理(しょり)!!!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
「禁則(きんそく)処理(しょり)!」
|
||||
|
||||
中点・中点
|
||||
中点
|
||||
・
|
||||
中点
|
||||
|
||||
禁則処理にわざと違反した文章のテストを今から行います。準備はいいでしょうか?レディ、ゴー!
|
||||
禁則処理にわざと違反した文章のテストを今から行います。準備はいいでしょうか?レデ
|
||||
ィ、ゴー!
|
||||
|
||||
[ウ ィキペディア]
|
||||
|
||||
[ウ ィキペディア]: https://ja.wikipedia.org/
|
||||
|
||||
C言語・C++・Go・Rust
|
||||
C言
|
||||
語
|
||||
・
|
||||
C++
|
||||
・
|
||||
Go
|
||||
・
|
||||
Rust
|
||||
|
||||
================================================================================
|
||||
`;
|
||||
@@ -0,0 +1,11 @@
|
||||
English
|
||||
English
|
||||
日本語
|
||||
日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語日本語
|
||||
日本語
|
||||
한국어
|
||||
한국어
|
||||
中文
|
||||
中文!
|
||||
한국어
|
||||
(中文)
|
||||
@@ -18,7 +18,10 @@ const snippets = [
|
||||
// (39 + 40 + 41) * 2 === 40 * 3 * 2 === 40 * 6
|
||||
// lineWidth is 80 and "文" is double-width
|
||||
// This is being saved for after Chrome and Safari bug is fixed.
|
||||
output: /* `${"文".repeat(40)}\n`.repeat(6) */ `${"文".repeat(40 * 6)}\n`,
|
||||
get output() {
|
||||
/* `${"文".repeat(40)}\n`.repeat(6) */
|
||||
return this.code.replace(/ (?=\n)/g, "");
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
@@ -36,7 +39,13 @@ const snippets = [
|
||||
name: "Should remove newline around CJ(K) punctuation(-like)",
|
||||
code,
|
||||
// Note: replaceAll is not supported in Node 14.
|
||||
output: `${code.replace(/\n/g, "")}\n`,
|
||||
// In CSS, a line break between a CJK and a non-CJK character is always interchangeable
|
||||
// with a space, but Prettier v3 made a design mistake where, in some cases,
|
||||
// it was treated as equivalent to being deleted
|
||||
// (see https://github.com/prettier/prettier/issues/14936).
|
||||
// Therefore, .replace is disabled until it gets fixed in
|
||||
// https://github.com/prettier/prettier/pull/16805.
|
||||
output: code, // `${code.replace(/\n/g, "")}\n`,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
// This preamble is unnecessary after #16805
|
||||
const preamble = "a 字 a 字 a 字";
|
||||
const code = `${preamble}\n${"葛\u{e0100}\n".repeat(3)}${"𠮷\n".repeat(2)}終\n`;
|
||||
const output = `${preamble}${"葛\u{e0100}".repeat(3)}${"𠮷".repeat(2)}終\n`;
|
||||
// Once browser behavior is standardized across browsers, comment out output and switch to the output below.
|
||||
// const output = `${preamble}${"葛\u{e0100}".repeat(3)}${"𠮷".repeat(2)}終\n`;
|
||||
|
||||
runFormatTest(
|
||||
{
|
||||
@@ -10,7 +11,7 @@ runFormatTest(
|
||||
{
|
||||
code,
|
||||
name: "Make sure non-BMP CJK characters are treated as CJK",
|
||||
output,
|
||||
output: code,
|
||||
},
|
||||
],
|
||||
},
|
||||
|
||||
Reference in new issue
Block a user