diff options
author | Ivan Tham | 2021-06-08 16:40:38 +0000 |
---|---|---|
committer | Ivan Tham | 2021-06-10 03:08:18 +0000 |
commit | 6b3c9d8ed37fd36f8be8c217ec2c71fb73de63e7 (patch) | |
tree | 808da950ea2dbbda4bd030f0dacc029d2816e921 /helix-term/src | |
parent | 4dbc23ff1ca0c3cc601c6ea011d4ec0a294dd7b2 (diff) |
Fix jump behavior, goto_implementation now jump
Better jump behavior since we override the first jump if it's on the
first document. At the same time, ctrl-i is now working with gd jumps.
Diffstat (limited to 'helix-term/src')
-rw-r--r-- | helix-term/src/commands.rs | 4 | ||||
-rw-r--r-- | helix-term/src/keymap.rs | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index 810c98c1..3358f9d2 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -1308,7 +1308,7 @@ pub fn normal_mode(cx: &mut Context) { // Store a jump on the jumplist. fn push_jump(editor: &mut Editor) { let (view, doc) = editor.current(); - let jump = { (doc.id(), doc.selection(view.id).clone()) }; + let jump = (doc.id(), doc.selection(view.id).clone()); view.jumps.push(jump); } @@ -2446,7 +2446,7 @@ pub fn jump_backward(cx: &mut Context) { let count = cx.count(); let (view, doc) = cx.current(); - if let Some((id, selection)) = view.jumps.backward(count) { + if let Some((id, selection)) = view.jumps.backward(view.id, doc, count) { view.doc = *id; let selection = selection.clone(); let (view, doc) = cx.current(); // refetch doc diff --git a/helix-term/src/keymap.rs b/helix-term/src/keymap.rs index a6417cfd..39bd5f3b 100644 --- a/helix-term/src/keymap.rs +++ b/helix-term/src/keymap.rs @@ -280,7 +280,10 @@ pub fn default() -> Keymaps { // z family for save/restore/combine from/to sels from register - ctrl!('i') => commands::jump_forward, // TODO: ctrl-i conflicts tab + KeyEvent { // supposedly ctrl!('i') but did not work + code: KeyCode::Tab, + modifiers: KeyModifiers::NONE, + } => commands::jump_forward, ctrl!('o') => commands::jump_backward, // ctrl!('s') => commands::save_selection, |