mirror of
https://github.com/zed-industries/zed.git
synced 2026-06-01 03:14:56 +07:00
editor: Preserve grapheme identity during rewrap (#39223)
Closes #39207 Release Notes: - N/A
This commit is contained in:
parent
e111acad33
commit
01dbc68f82
1 changed files with 19 additions and 1 deletions
|
|
@ -22400,7 +22400,14 @@ fn wrap_with_prefix(
|
|||
continue;
|
||||
}
|
||||
if !preserve_existing_whitespace {
|
||||
token = " ";
|
||||
// Keep a single whitespace grapheme as-is
|
||||
if let Some(first) =
|
||||
unicode_segmentation::UnicodeSegmentation::graphemes(token, true).next()
|
||||
{
|
||||
token = first;
|
||||
} else {
|
||||
token = " ";
|
||||
}
|
||||
grapheme_len = 1;
|
||||
}
|
||||
let current_prefix_len = if is_first_line {
|
||||
|
|
@ -22502,6 +22509,17 @@ fn test_wrap_with_prefix() {
|
|||
),
|
||||
"这是什\n么 钢\n笔"
|
||||
);
|
||||
assert_eq!(
|
||||
wrap_with_prefix(
|
||||
String::new(),
|
||||
String::new(),
|
||||
format!("foo{}bar", '\u{2009}'), // thin space
|
||||
80,
|
||||
NonZeroU32::new(4).unwrap(),
|
||||
false,
|
||||
),
|
||||
format!("foo{}bar", '\u{2009}')
|
||||
);
|
||||
}
|
||||
|
||||
pub trait CollaborationHub {
|
||||
|
|
|
|||
Loading…
Reference in a new issue