Convert clipboard line ending to document line ending when pasting (#716)
* convert a paste's line-ending to the current doc's line-ending * move paste regex into paste_impl
This commit is contained in:
parent
94abc52b3b
commit
987d8e6dd6
1 changed files with 8 additions and 1 deletions
|
@ -3462,7 +3462,14 @@ fn paste_impl(
|
||||||
.iter()
|
.iter()
|
||||||
.any(|value| get_line_ending_of_str(value).is_some());
|
.any(|value| get_line_ending_of_str(value).is_some());
|
||||||
|
|
||||||
let mut values = values.iter().cloned().map(Tendril::from).chain(repeat);
|
// Only compiled once.
|
||||||
|
#[allow(clippy::trivial_regex)]
|
||||||
|
static REGEX: Lazy<Regex> = Lazy::new(|| Regex::new(r"\r\n|\r|\n").unwrap());
|
||||||
|
let mut values = values
|
||||||
|
.iter()
|
||||||
|
.map(|value| REGEX.replace_all(value, doc.line_ending.as_str()))
|
||||||
|
.map(|value| Tendril::from(value.as_ref()))
|
||||||
|
.chain(repeat);
|
||||||
|
|
||||||
let text = doc.text();
|
let text = doc.text();
|
||||||
let selection = doc.selection(view.id);
|
let selection = doc.selection(view.id);
|
||||||
|
|
Loading…
Reference in a new issue