summaryrefslogtreecommitdiff
path: root/helix-core/src/commands.rs
diff options
context:
space:
mode:
authorBlaž Hrastnik2020-06-07 15:31:11 +0000
committerBlaž Hrastnik2020-06-07 15:41:37 +0000
commitf8fe273a2e52659f89c82f94fab4b2800518bbea (patch)
treea88825798d4db9fe3e4125eba3d554672da65d4b /helix-core/src/commands.rs
parent843c20a5504a110dd0bc726d84062851290f1afe (diff)
Fix build.
Diffstat (limited to 'helix-core/src/commands.rs')
-rw-r--r--helix-core/src/commands.rs25
1 files changed, 15 insertions, 10 deletions
diff --git a/helix-core/src/commands.rs b/helix-core/src/commands.rs
index 78a1481a..62e97686 100644
--- a/helix-core/src/commands.rs
+++ b/helix-core/src/commands.rs
@@ -2,42 +2,47 @@ use crate::state::{Direction, Granularity, State};
/// A command is a function that takes the current state and a count, and does a side-effect on the
/// state (usually by creating and applying a transaction).
-type Command = fn(state: &mut State, count: usize);
+pub type Command = fn(state: &mut State, count: usize);
-fn move_char_left(state: &mut State, count: usize) {
+pub fn move_char_left(state: &mut State, count: usize) {
// TODO: use a transaction
- state.selection = state.move_selection(
- state.selection,
+ let selection = state.move_selection(
+ // TODO: remove the clone here
+ state.selection.clone(),
Direction::Backward,
Granularity::Character,
count,
);
+ state.selection = selection;
}
-fn move_char_right(state: &mut State, count: usize) {
+pub fn move_char_right(state: &mut State, count: usize) {
// TODO: use a transaction
state.selection = state.move_selection(
- state.selection,
+ // TODO: remove the clone here
+ state.selection.clone(),
Direction::Forward,
Granularity::Character,
count,
);
}
-fn move_line_up(state: &mut State, count: usize) {
+pub fn move_line_up(state: &mut State, count: usize) {
// TODO: use a transaction
state.selection = state.move_selection(
- state.selection,
+ // TODO: remove the clone here
+ state.selection.clone(),
Direction::Backward,
Granularity::Line,
count,
);
}
-fn move_line_down(state: &mut State, count: usize) {
+pub fn move_line_down(state: &mut State, count: usize) {
// TODO: use a transaction
state.selection = state.move_selection(
- state.selection,
+ // TODO: remove the clone here
+ state.selection.clone(),
Direction::Forward,
Granularity::Line,
count,