diff --git a/assets/keymaps/vim.json b/assets/keymaps/vim.json index cea64b6843..045beffece 100644 --- a/assets/keymaps/vim.json +++ b/assets/keymaps/vim.json @@ -155,6 +155,7 @@ "g shift-t": "pane::ActivatePrevItem", "g d": "editor::GoToDefinition", "g shift-d": "editor::GoToTypeDefinition", + "g cmd-d": "editor::GoToImplementation", "g x": "editor::OpenUrl", "g n": "vim::SelectNextMatch", "g shift-n": "vim::SelectPreviousMatch", @@ -384,7 +385,11 @@ "ctrl-pageup": "pane::ActivatePrevItem", // tree-sitter related commands "[ x": "editor::SelectLargerSyntaxNode", - "] x": "editor::SelectSmallerSyntaxNode" + "] x": "editor::SelectSmallerSyntaxNode", + "] d": "editor::GoToDiagnostic", + "[ d": "editor::GoToPrevDiagnostic", + "] c": "editor::GoToHunk", + "[ c": "editor::GoToPrevHunk" } }, { diff --git a/docs/src/vim.md b/docs/src/vim.md index 600317a838..b66178c381 100644 --- a/docs/src/vim.md +++ b/docs/src/vim.md @@ -16,10 +16,11 @@ Vim mode has several "core Zed" key bindings, that will help you make the most o ``` # Language server -g d Go to definition -g D Go to type definition -c d Rename (change definition) -g A Go to All references to the current word +g d Go to definition +g D Go to type definition +g cmd-d Go to implementation +c d Rename (change definition) +g A Go to All references to the current word g s Find symbol in current file g S Find symbol in entire project @@ -29,6 +30,10 @@ g [ Go to previous diagnostic g h Show inline error (hover) g . Open the code actions menu +# Git +] c Go to previous git change +[ c Go to next git change + # Treesitter ] x Select a smaller syntax node [ x Select a larger syntax node @@ -190,6 +195,9 @@ Currently supported vim-specific commands: As any Zed command is available, you may find that it's helpful to remember mnemonics that run the correct command. For example: ``` +:diff Toggle Hunk [Diff] +:diffs Toggle all Hunk [Diffs] +:revert Revert Selected Hunks :cpp [C]o[p]y [P]ath to file :crp [C]opy [r]elative [P]ath :reveal [Reveal] in finder