mirror of https://github.com/helix-editor/helix
the behavior of `copy_selection_on_visual_line` has changed so that, if `count` > 1, then the selection is copied to the relative line number, instead of copying it `count` times
parent
84401d753d
commit
9a780a8cb9
|
@ -1978,7 +1978,8 @@ fn copy_selection_on_visual_line(cx: &mut Context, direction: Direction) {
|
|||
let mut primary_idx = selection.primary_index();
|
||||
let mut new_ranges = SmallVec::with_capacity(selection.len() * (count + 1));
|
||||
new_ranges.extend_from_slice(selection.ranges());
|
||||
//TODO: copy the selection to the relative line number if `count` > 1
|
||||
//copy the selection to the relative line number
|
||||
let to_relative_line_number = count > 1;
|
||||
|
||||
for range in selection.iter() {
|
||||
let is_primary = *range == selection.primary();
|
||||
|
@ -2027,8 +2028,10 @@ fn copy_selection_on_visual_line(cx: &mut Context, direction: Direction) {
|
|||
Range::point(new_anchor)
|
||||
.put_cursor(text, new_head, true) );
|
||||
if is_primary { primary_idx = new_ranges.len() - 1 }
|
||||
step += 1;
|
||||
if ! to_relative_line_number { step += 1 }
|
||||
}
|
||||
// always increment if `count` > 1
|
||||
if to_relative_line_number { step += 1 }
|
||||
|
||||
// check the top doc boundary
|
||||
if new_head == 0
|
||||
|
|
Loading…
Reference in New Issue