1

Neovim: Update neovim mappings

This commit is contained in:
2024-10-09 17:31:08 +02:00
parent 0efce72aa3
commit c8ffebe3e4

View File

@ -5,28 +5,28 @@
mode = "n";
key = "j";
action = "v:count == 0 ? 'gj' : 'j'";
options.desc = "Move cursor down";
options.desc = "Move Cursor Down";
options.expr = true;
}
{
mode = "n";
key = "<Down>";
action = "v:count == 0 ? 'gj' : 'j'";
options.desc = "Move cursor down";
options.desc = "Move Cursor Down";
options.expr = true;
}
{
mode = "n";
key = "k";
action = "v:count == 0 ? 'gk' : 'k'";
options.desc = "Move cursor up";
options.desc = "Move Cursor Up";
options.expr = true;
}
{
mode = "n";
key = "<Up>";
action = "v:count == 0 ? 'gk' : 'k'";
options.desc = "Move cursor up";
options.desc = "Move Cursor Up";
options.expr = true;
}
@ -35,25 +35,25 @@
mode = "n";
key = "<C-h>";
action = "<cmd>vertical resize -2<cr>";
options.desc = "Decrease window width";
options.desc = "Decrease Window Width";
}
{
mode = "n";
key = "<C-l>";
action = "<cmd>vertical resize +2<cr>";
options.desc = "Increase window width";
options.desc = "Increase Window Width";
}
{
mode = "n";
key = "<C-j>";
action = "<cmd>resize -2<cr>";
options.desc = "Decrease window height";
options.desc = "Decrease Window Height";
}
{
mode = "n";
key = "<C-k>";
action = "<cmd>resize +2<cr>";
options.desc = "Increase window height";
options.desc = "Increase Window Height";
}
# Move lines
@ -61,37 +61,37 @@
mode = "n";
key = "<M-j>";
action = "<cmd>m .+1<cr>==";
options.desc = "Move line down";
options.desc = "Move Line Down";
}
{
mode = "i";
key = "<M-j>";
action = "<Esc><cmd>m .+1<cr>==gi";
options.desc = "Move line down";
options.desc = "Move Line Down";
}
{
mode = "v";
key = "<M-j>";
action = ":m '>+1<cr>gv=gv";
options.desc = "Move line down";
options.desc = "Move Line Down";
}
{
mode = "n";
key = "<M-k>";
action = "<cmd>m .-2<cr>==";
options.desc = "Move line up";
options.desc = "Move Line Up";
}
{
mode = "i";
key = "<M-k>";
action = "<Esc><cmd>m .-2<cr>==gi";
options.desc = "Move line up";
options.desc = "Move Line Up";
}
{
mode = "v";
key = "<M-k>";
action = ":m '<-2<cr>gv=gv";
options.desc = "Move line up";
options.desc = "Move Line Up";
}
# Save buffers
@ -99,13 +99,13 @@
mode = ["n" "i" "v"];
key = "<C-s>";
action = "<cmd>w<cr>";
options.desc = "Save current buffer";
options.desc = "Save Buffer";
}
{
mode = ["n" "i" "v"];
key = "<C-S-s>";
action = "<cmd>wa<cr>";
options.desc = "Save all buffers";
options.desc = "Save All Buffers";
}
# Indentation
@ -145,25 +145,25 @@
mode = "n";
key = "<C-d>";
action = "<C-d>zz";
options.desc = "Jump down (centered)";
options.desc = "Jump Down (Centered)";
}
{
mode = "n";
key = "<C-u>";
action = "<C-u>zz";
options.desc = "Jump up (centered)";
options.desc = "Jump Up (Centered)";
}
{
mode = "n";
key = "n";
action = "nzzzv";
options.desc = "Next match (centered)";
options.desc = "Next Match (Centered)";
}
{
mode = "n";
key = "N";
action = "Nzzzv";
options.desc = "Previous match (centered)";
options.desc = "Previous Match (Centered)";
}
# Delete word
@ -171,13 +171,13 @@
mode = "i";
key = "<C-BS>";
action = "<C-w>";
options.desc = "Delete previous word"; # TODO: Breaks backspace <C-v><S-i> multiline cursor?
options.desc = "Delete Previous Word"; # TODO: Breaks backspace <C-v><S-i> multiline cursor?
}
{
mode = "i";
key = "<M-BS>";
action = "<C-w>";
options.desc = "Delete previous word"; # TODO: Breaks backspace <C-v><S-i> multiline cursor?
options.desc = "Delete Previous Word"; # TODO: Breaks backspace <C-v><S-i> multiline cursor?
}
# Clipboard
@ -185,63 +185,63 @@
mode = "i";
key = "<C-S-v>";
action = "<Esc>\"+pi";
options.desc = "Paste from clipboard";
options.desc = "Paste";
}
{
mode = "i";
key = "<C-v>";
action = "<Esc>\"+pi";
options.desc = "Paste from clipboard";
options.desc = "Paste";
}
{
mode = "v";
key = "<C-S-c>";
action = "\"+y";
options.desc = "Copy to clipboard";
options.desc = "Copy";
}
# Flash/Search
{
mode = "n";
key = "s";
action = "<cmd>lua require('flash').jump()<cr>";
options.desc = "Flash jump";
}
{
mode = "n";
key = "S";
action = "<cmd>lua require('flash').treesitter()<cr>";
options.desc = "Flash treesitter";
}
# {
# mode = "n";
# key = "s";
# action = "<cmd>lua require('flash').jump()<cr>";
# options.desc = "Flash jump";
# }
# {
# mode = "n";
# key = "S";
# action = "<cmd>lua require('flash').treesitter()<cr>";
# options.desc = "Flash Treesitter";
# }
# Various
{
mode = "n";
key = "<C-S-h>";
action = "<cmd>nohlsearch<cr>";
options.desc = "Clear search highlights";
options.desc = "Clear Search Highlights";
}
{
mode = "n";
key = "K";
action = "<cmd>lua vim.lsp.buf.hover()<cr>";
options.desc = "Show LSP hover";
options.desc = "LSP Hover";
}
{
mode = "n";
key = "/";
action = "<cmd>Telescope current_buffer_fuzzy_find<cr>";
options.desc = "Find in current buffer";
options.desc = "Grep Buffer";
}
{
mode = "v";
key = ";";
action = "<Esc>";
options.desc = "Exit visual mode";
}
# {
# mode = "v";
# key = ";";
# action = "<Esc>";
# options.desc = "Exit visual mode";
# }
];
leader = [
@ -249,9 +249,8 @@
mode = "n";
key = "<leader>L";
action = "<cmd>Lazy<cr>";
options.desc = "Show Lazy";
options.desc = "Lazy";
}
# Already have <C-s> and <C-S-s>
# {
# mode = "n";
@ -265,109 +264,110 @@
# action = "<cmd>wa<cr>";
# options.desc = "Save all buffers";
# }
{
mode = "n";
key = "<leader>R";
action = "<cmd>edit!<cr>";
options.desc = "Reload current buffer";
options.desc = "Reload Buffer";
}
{
mode = "n";
key = "<leader><Space>";
action = "<cmd>Telescope buffers<cr>";
options.desc = "Show open buffers";
options.desc = "List Buffers";
}
{
mode = "n";
key = "<leader>f";
action = "<cmd>Telescope find_files<cr>";
options.desc = "Find file";
}
{
mode = "n";
key = "<leader>p";
action = "<cmd>Telescope projects<cr>";
options.desc = "Open project";
}
{
mode = "n";
key = "<leader>o";
action = "<cmd>Telescope vim_options<cr>";
options.desc = "Show Vim options";
}
{
mode = "n";
key = "<leader>u";
action = "<cmd>Telescope undo<cr>";
options.desc = "Show undo history";
}
{
mode = "n";
key = "<leader>/";
action = "<cmd>Telescope live_grep<cr>";
options.desc = "Find in working directory";
}
{
mode = "v";
key = "<leader>n";
action = ":NR!<cr>";
options.desc = "Narrow region";
options.desc = "Find File";
}
# {
# mode = "v";
# key = "<leader>n";
# action = ":NR!<cr>";
# options.desc = "Narrow region";
# }
{
mode = "n";
key = "<leader>N";
action = "<cmd>Telescope notify<cr>";
options.desc = "Show notify history";
options.desc = "Notication History";
}
{
mode = "n";
key = "<leader>r";
action = "<cmd>Telescope resume<cr>";
options.desc = "Show last telescope picker";
}
{
mode = "n";
key = "<leader>?";
action = "<cmd>Telescope keymaps<cr>";
options.desc = "Show keymaps";
options.desc = "Last Telescope Picker";
}
{
mode = "n";
key = "<leader>:";
action = "<cmd>Telescope commands<cr>";
options.desc = "Execute command";
}
{
mode = "n";
key = "<leader>M";
action = "<cmd>Telescope marks<cr>";
options.desc = "Show marks";
}
{
mode = "n";
key = "<leader>J";
action = "<cmd>Telescope jumplist<cr>";
options.desc = "Show jumplist";
}
{
mode = "n";
key = "<leader>m";
action = "<cmd>Telescope man_pages<cr>";
options.desc = "Show manpages";
}
{
mode = "n";
key = "<leader>h";
action = "<cmd>Telescope help_tags<cr>";
options.desc = "Show help tags";
options.desc = "Find Command";
}
# {
# mode = "n";
# key = "<leader>M";
# action = "<cmd>Telescope marks<cr>";
# options.desc = "Show marks";
# }
# {
# mode = "n";
# key = "<leader>J";
# action = "<cmd>Telescope jumplist<cr>";
# options.desc = "Show jumplist";
# }
{
mode = "n";
key = "<leader>T";
action = "<cmd>TodoTelescope<cr>";
options.desc = "Show TODOs";
options.desc = "List TODOs";
}
{
mode = "n";
key = "<leader>u";
action = "<cmd>Telescope undo<cr>";
options.desc = "Undo History";
}
{
mode = "n";
key = "<leader>/";
action = "<cmd>Telescope live_grep<cr>";
options.desc = "Grep Directory";
}
];
leader-help = [
{
mode = "n";
key = "<leader>h";
action = "+help";
}
{
mode = "n";
key = "<leader>hv";
action = "<cmd>Telescope vim_options<cr>";
options.desc = "Vim Options";
}
{
mode = "n";
key = "<leader>hk";
action = "<cmd>Telescope keymaps<cr>";
options.desc = "Keymaps";
}
{
mode = "n";
key = "<leader>hm";
action = "<cmd>Telescope man_pages<cr>";
options.desc = "Manpages";
}
{
mode = "n";
key = "<leader>hh";
action = "<cmd>Telescope help_tags<cr>";
options.desc = "Vim Help";
}
];
@ -387,7 +387,7 @@
mode = "n";
key = "<leader>q!";
action = "<cmd>quitall!<cr>";
options.desc = "Quit forcefully";
options.desc = "Force Quit";
}
];
@ -401,19 +401,19 @@
mode = "n";
key = "<leader>sl";
action = "<cmd>Telescope persisted<cr>";
options.desc = "Restore session";
options.desc = "Restore";
}
{
mode = "n";
key = "<leader>ss";
action = "<cmd>SessionSave<cr>";
options.desc = "Save session";
options.desc = "Save";
}
{
mode = "n";
key = "<leader>sd";
action = "<cmd>SessionDelete<cr>";
options.desc = "Delete current session";
options.desc = "Delete";
}
];
@ -426,26 +426,26 @@
{
mode = "n";
key = "<leader>bb";
action = "<cmd>Telescope buffers<cr>";
options.desc = "Show open buffers";
action = "<cmd>Telescope buffers sort_mru=true<cr>"; # There is also sort_lastused=true
options.desc = "List Buffers";
}
{
mode = "n";
key = "<leader>bn";
action = "<cmd>bnext<cr>";
options.desc = "Goto next buffer";
options.desc = "Next Buffer";
}
{
mode = "n";
key = "<leader>bp";
action = "<cmd>bprevious<cr>";
options.desc = "Goto previous buffer";
options.desc = "Previous Buffer";
}
{
mode = "n";
key = "<leader>bd";
action = "<cmd>Bdelete<cr>";
options.desc = "Close current buffer";
options.desc = "Close Buffer";
}
];
@ -460,64 +460,64 @@
mode = "n";
key = "<leader>wd";
action = "<C-w>c";
options.desc = "Close current window";
options.desc = "Close Window";
}
{
mode = "n";
key = "<leader>ws";
action = "<C-w>s";
options.desc = "Split window horizontally";
options.desc = "Split Horizontally";
}
{
mode = "n";
key = "<leader>wv";
action = "<C-w>v";
options.desc = "Split window vertically";
options.desc = "Split Vertically";
}
{
mode = "n";
key = "<leader>w=";
action = "<C-w>=";
options.desc = "Balance windows";
options.desc = "Balance Windows";
}
{
mode = "n";
key = "<leader>wh";
action = "<C-w>h";
options.desc = "Goto left window";
options.desc = "Goto Left Window";
}
{
mode = "n";
key = "<leader>wl";
action = "<C-w>l";
options.desc = "Goto right window";
options.desc = "Goto Wight Window";
}
{
mode = "n";
key = "<leader>wj";
action = "<C-w>j";
options.desc = "Goto bottom window";
options.desc = "Goto Bottom Window";
}
{
mode = "n";
key = "<leader>wk";
action = "<C-w>k";
options.desc = "Goto top window";
options.desc = "Goto Top Window";
}
{
mode = "n";
key = "<leader>ww";
action = "<C-w>p";
options.desc = "Goto other window";
options.desc = "Goto Other Window";
}
{
mode = "n";
key = "<leader>wm";
action = "<cmd>WinShift<cr>";
options.desc = "Move window";
options.desc = "Move Window";
}
];
@ -531,7 +531,13 @@
mode = "n";
key = "<leader>tt";
action = "<cmd>Neotree action=show toggle=true<cr><C-w>=";
options.desc = "Toggle NeoTree";
options.desc = "NeoTree";
}
{
mode = "n";
key = "<leader>to";
action = "<cmd>Oil<cr>";
options.desc = "Oil";
}
# {
# mode = "n";
@ -543,59 +549,59 @@
mode = "n";
key = "<leader>tn";
action = "<cmd>Navbuddy<cr>";
options.desc = "Toggle NavBuddy";
options.desc = "NavBuddy";
}
{
mode = "n";
key = "<leader>td";
action = "<cmd>Trouble diagnostics toggle focus=false win.position=bottom<cr>";
options.desc = "Toggle Trouble diagnostics";
options.desc = "Trouble Diagnostics";
}
{
mode = "n";
key = "<leader>tT";
action = "<cmd>Trouble todo toggle focus=false win.position=right<cr>";
options.desc = "Toggle Trouble TODOs";
options.desc = "Trouble TODOs";
}
{
mode = "n";
key = "<leader>ts";
action = "<cmd>Trouble symbols toggle focus=false win.position=right<cr>";
options.desc = "Toggle Trouble symbols";
options.desc = "Trouble Symbols";
}
{
mode = "n";
key = "<leader>tf";
action = "<cmd>ToggleAutoformat<cr>";
options.desc = "Toggle autoformat-on-save";
options.desc = "Format on Save";
}
{
mode = "n";
key = "<leader>tl";
action = "<cmd>ToggleAutoLint<cr>";
options.desc = "Toggle autolint-on-save";
options.desc = "Lint on Save";
}
{
mode = "n";
key = "<leader>tD";
action = "<cmd>ToggleInlineDiagnostics<cr>";
options.desc = "Toggle inline diagnostics";
options.desc = "Inline Diagnostics";
}
{
mode = "n";
key = "<leader>tw";
action = "<cmd>:set wrap!<cr>";
options.desc = "Toggle word-wrap";
options.desc = "Word Wrapping";
}
{
mode = "n";
key = "<leader>tv";
action = "<cmd>VimtexTocToggle<cr>";
options.desc = "Toggle Vimtex ToC";
options.desc = "VimTex ToC";
}
];
@ -609,88 +615,44 @@
mode = "n";
key = "<leader>gg";
action = "<cmd>LazyGit<cr>";
options.desc = "Show LazyGit";
options.desc = "LazyGit";
}
{
mode = "n";
key = "<leader>gm";
action = "<cmd>GitMessenger<cr>";
options.desc = "Show GitMessenger";
options.desc = "GitMessenger";
}
{
mode = "n";
key = "<leader>gs";
action = "<cmd>Telescope git_status<cr>";
options.desc = "Show Git status";
options.desc = "Status";
}
{
mode = "n";
key = "<leader>gl";
action = "<cmd>Telescope git_commits<cr>";
options.desc = "Show Git log";
options.desc = "Log";
}
{
mode = "n";
key = "<leader>gb";
action = "<cmd>Telescope git_branches<cr>";
options.desc = "Show Git branches";
options.desc = "Branches";
}
{
mode = "n";
key = "<leader>gf";
action = "<cmd>Telescope git_bcommits<cr>";
options.desc = "Show Git log for current file";
options.desc = "File History";
}
{
mode = "n";
key = "<leader>gd";
action = "<cmd>DiffviewOpen<cr>";
options.desc = "Show Git diff for current worktree";
}
];
leader-lsp = [
{
mode = "n";
key = "<leader>l";
action = "+lsp";
}
{
mode = "n";
key = "<leader>lr";
action = "<cmd>Telescope lsp_references<cr>";
options.desc = "Goto references";
}
{
mode = "n";
key = "<leader>ld";
action = "<cmd>Telescope lsp_definitions<cr>";
options.desc = "Goto definition";
}
{
mode = "n";
key = "<leader>li";
action = "<cmd>Telescope lsp_implementations<cr>";
options.desc = "Goto implementation";
}
{
mode = "n";
key = "<leader>lt";
action = "<cmd>Telescope lsp_type_definitions<cr>";
options.desc = "Goto type definition";
}
{
mode = "n";
key = "<leader>lI";
action = "<cmd>Telescope lsp_incoming_calls<cr>";
options.desc = "Show incoming calls";
}
{
mode = "n";
key = "<leader>lO";
action = "<cmd>Telescope lsp_outgoing_calls<cr>";
options.desc = "Show outgoing calls";
options.desc = "DiffView";
}
];
@ -704,27 +666,33 @@
mode = "n";
key = "<leader>cf";
action = "<cmd>lua require('conform').format()<cr>";
options.desc = "Format current buffer";
options.desc = "Format Buffer";
}
{
mode = "n";
key = "<leader>cd";
action = "<cmd>lua vim.diagnostic.open_float()<cr>";
options.desc = "Show LSP line diagnostics";
options.desc = "Line Diagnostics";
}
{
mode = "n";
key = "<leader>cD";
action = "<cmd>Telescope diagnostics<cr>";
options.desc = "Show diagnostics";
options.desc = "List Diagnostics";
}
{
mode = "n";
key = "<leader>cr";
action = "<cmd>lua vim.lsp.buf.rename()<cr>";
options.desc = "Rename LSP symbol";
options.desc = "Rename Symbol";
}
{
mode = "n";
key = "<leader>ca";
action = "<cmd>lua vim.lsp.buf.code_action()<cr>";
options.desc = "Code Actions";
}
# {
# mode = "n";
@ -732,29 +700,65 @@
# action = ":IncRename ";
# options.desc = "Rename LSP symbol";
# }
{
mode = "n";
key = "<leader>ca";
action = "<cmd>lua vim.lsp.buf.code_action()<cr>";
options.desc = "Show LSP code actions";
key = "<leader>cg";
action = "+goto";
}
{
mode = "n";
key = "<leader>ch";
key = "<leader>cgh";
action = "<cmd>ClangdSwitchSourceHeader<cr>";
options.desc = "Switch C/C++ source/header";
options.desc = "Switch C/C++ Source/Header";
}
{
mode = "n";
key = "<leader>cgr";
action = "<cmd>Telescope lsp_references<cr>";
options.desc = "Symbol References";
}
{
mode = "n";
key = "<leader>cgd";
action = "<cmd>Telescope lsp_definitions<cr>";
options.desc = "Symbol Definition";
}
{
mode = "n";
key = "<leader>cgi";
action = "<cmd>Telescope lsp_implementations<cr>";
options.desc = "Symbol Implementation";
}
{
mode = "n";
key = "<leader>cgt";
action = "<cmd>Telescope lsp_type_definitions<cr>";
options.desc = "Type Definition";
}
{
mode = "n";
key = "<leader>cI";
action = "<cmd>Telescope lsp_incoming_calls<cr>";
options.desc = "Incoming Calls";
}
{
mode = "n";
key = "<leader>cO";
action = "<cmd>Telescope lsp_outgoing_calls<cr>";
options.desc = "Outgoing Calls";
}
];
in
builtins.concatLists [
no-leader
leader
leader-help
leader-quit
leader-session
leader-buffers
leader-windows
leader-toggles
leader-git
leader-lsp
leader-code
]