mirror of https://github.com/helix-editor/helix
ran cargo fmt
parent
ecb884db98
commit
97323dc2f9
|
@ -111,6 +111,7 @@ pub use diagnostic::Diagnostic;
|
||||||
pub use state::State;
|
pub use state::State;
|
||||||
|
|
||||||
pub use line_ending::{
|
pub use line_ending::{
|
||||||
auto_detect_line_ending, rope_slice_to_line_ending, LineEnding, DEFAULT_LINE_ENDING, get_line_ending
|
auto_detect_line_ending, get_line_ending, rope_slice_to_line_ending, LineEnding,
|
||||||
|
DEFAULT_LINE_ENDING,
|
||||||
};
|
};
|
||||||
pub use transaction::{Assoc, Change, ChangeSet, Operation, Transaction};
|
pub use transaction::{Assoc, Change, ChangeSet, Operation, Transaction};
|
||||||
|
|
|
@ -95,12 +95,18 @@ pub fn auto_detect_line_ending(doc: &Rope) -> Option<LineEnding> {
|
||||||
/// Returns the passed line's line ending, if any.
|
/// Returns the passed line's line ending, if any.
|
||||||
pub fn get_line_ending(line: &RopeSlice) -> Option<LineEnding> {
|
pub fn get_line_ending(line: &RopeSlice) -> Option<LineEnding> {
|
||||||
// Last character as str.
|
// Last character as str.
|
||||||
let g1 = line.slice(line.len_chars().saturating_sub(1)..).as_str().unwrap();
|
let g1 = line
|
||||||
|
.slice(line.len_chars().saturating_sub(1)..)
|
||||||
|
.as_str()
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
// Last two characters as str, or empty str if they're not contiguous.
|
// Last two characters as str, or empty str if they're not contiguous.
|
||||||
// It's fine to punt on the non-contiguous case, because Ropey guarantees
|
// It's fine to punt on the non-contiguous case, because Ropey guarantees
|
||||||
// that CRLF is always contiguous.
|
// that CRLF is always contiguous.
|
||||||
let g2 = line.slice(line.len_chars().saturating_sub(2)..).as_str().unwrap_or("");
|
let g2 = line
|
||||||
|
.slice(line.len_chars().saturating_sub(2)..)
|
||||||
|
.as_str()
|
||||||
|
.unwrap_or("");
|
||||||
|
|
||||||
// First check the two-character case for CRLF, then check the single-character case.
|
// First check the two-character case for CRLF, then check the single-character case.
|
||||||
str_to_line_ending(g2).or_else(|| str_to_line_ending(g1))
|
str_to_line_ending(g2).or_else(|| str_to_line_ending(g1))
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use helix_core::{
|
use helix_core::{
|
||||||
comment, coords_at_pos, find_first_non_whitespace_char, find_root, graphemes, indent,
|
comment, coords_at_pos, find_first_non_whitespace_char, find_root, get_line_ending, graphemes,
|
||||||
match_brackets,
|
indent, match_brackets,
|
||||||
movement::{self, Direction},
|
movement::{self, Direction},
|
||||||
object, pos_at_coords,
|
object, pos_at_coords,
|
||||||
regex::{self, Regex},
|
regex::{self, Regex},
|
||||||
register::{self, Register, Registers},
|
register::{self, Register, Registers},
|
||||||
search, selection, Change, ChangeSet, LineEnding, Position, Range, Rope, RopeSlice, Selection, get_line_ending,
|
search, selection, Change, ChangeSet, LineEnding, Position, Range, Rope, RopeSlice, Selection,
|
||||||
SmallVec, Tendril, Transaction,
|
SmallVec, Tendril, Transaction,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -183,9 +183,11 @@ pub fn move_line_end(cx: &mut Context) {
|
||||||
let text = doc.text();
|
let text = doc.text();
|
||||||
let line = text.char_to_line(range.head);
|
let line = text.char_to_line(range.head);
|
||||||
|
|
||||||
let pos = text
|
let pos = text.line_to_char(line + 1).saturating_sub(
|
||||||
.line_to_char(line + 1)
|
get_line_ending(&text.line(line))
|
||||||
.saturating_sub(get_line_ending(&text.line(line)).map(|le| le.len_chars()).unwrap_or(0));
|
.map(|le| le.len_chars())
|
||||||
|
.unwrap_or(0),
|
||||||
|
);
|
||||||
|
|
||||||
Range::new(pos, pos)
|
Range::new(pos, pos)
|
||||||
});
|
});
|
||||||
|
@ -606,9 +608,11 @@ pub fn extend_line_end(cx: &mut Context) {
|
||||||
let text = doc.text();
|
let text = doc.text();
|
||||||
let line = text.char_to_line(range.head);
|
let line = text.char_to_line(range.head);
|
||||||
|
|
||||||
let pos = text
|
let pos = text.line_to_char(line + 1).saturating_sub(
|
||||||
.line_to_char(line + 1)
|
get_line_ending(&text.line(line))
|
||||||
.saturating_sub(get_line_ending(&text.line(line)).map(|le| le.len_chars()).unwrap_or(0));
|
.map(|le| le.len_chars())
|
||||||
|
.unwrap_or(0),
|
||||||
|
);
|
||||||
|
|
||||||
Range::new(range.anchor, pos)
|
Range::new(range.anchor, pos)
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue