mirror of https://github.com/helix-editor/helix
Minor cleanup of the vertical movement code.
parent
84f8167fd1
commit
aead4e69a6
|
@ -57,17 +57,12 @@ pub fn move_vertically(
|
||||||
let horiz = range.horiz.unwrap_or(col as u32);
|
let horiz = range.horiz.unwrap_or(col as u32);
|
||||||
|
|
||||||
// Compute the new position.
|
// Compute the new position.
|
||||||
let (new_pos, new_row) = {
|
let new_row = match dir {
|
||||||
let new_row = match dir {
|
Direction::Forward => (row + count).min(slice.len_lines().saturating_sub(1)),
|
||||||
Direction::Forward => (row + count).min(slice.len_lines().saturating_sub(1)),
|
Direction::Backward => row.saturating_sub(count),
|
||||||
Direction::Backward => row.saturating_sub(count),
|
|
||||||
};
|
|
||||||
let new_col = col.max(horiz as usize);
|
|
||||||
(
|
|
||||||
pos_at_coords(slice, Position::new(new_row, new_col), true),
|
|
||||||
new_row,
|
|
||||||
)
|
|
||||||
};
|
};
|
||||||
|
let new_col = col.max(horiz as usize);
|
||||||
|
let new_pos = pos_at_coords(slice, Position::new(new_row, new_col), true);
|
||||||
|
|
||||||
// Special-case to avoid moving to the end of the last non-empty line.
|
// Special-case to avoid moving to the end of the last non-empty line.
|
||||||
if behaviour == Movement::Extend && slice.line(new_row).len_chars() == 0 {
|
if behaviour == Movement::Extend && slice.line(new_row).len_chars() == 0 {
|
||||||
|
|
Loading…
Reference in New Issue