diff --git a/home/user/.config/nvim/lua/core/mappings/mappings.lua b/home/user/.config/nvim/lua/core/mappings/mappings.lua index 2f72dba..bb7630d 100644 --- a/home/user/.config/nvim/lua/core/mappings/mappings.lua +++ b/home/user/.config/nvim/lua/core/mappings/mappings.lua @@ -4,6 +4,16 @@ local map = vim.keymap.set vim.g.mapleader = ',' + +-- Sections +map('n', 'h', '', {desc = "UI"}) +map('n', 'c', '', {desc = "Colorschemes"}) +map('n', 'f', '', {desc = "Telescope"}) +map('n', 'p', '', {desc = "Config manage"}) +map('n', 'q', '', {desc = "Exits"}) +map('n', 'r', '', {desc = "Run file"}) + + local function create_function_tabdo(command) return function() local curr_tab = vim.fn.tabpagenr() diff --git a/home/user/.config/nvim/lua/plugins/buffer_manager.lua b/home/user/.config/nvim/lua/plugins/buffer_manager.lua index cb65307..a830ba1 100644 --- a/home/user/.config/nvim/lua/plugins/buffer_manager.lua +++ b/home/user/.config/nvim/lua/plugins/buffer_manager.lua @@ -5,7 +5,7 @@ return { }, config = function() local map = vim.keymap.set - map("n", "", require("buffer_manager.ui").toggle_quick_menu) + map("n", "", require("buffer_manager.ui").toggle_quick_menu, {desc = "Buffer manager"}) vim.api.nvim_command([[ autocmd FileType buffer_manager vnoremap :m '>+1gv=gv autocmd FileType buffer_manager vnoremap :m '<-2gv=gv diff --git a/home/user/.config/nvim/lua/plugins/coding.lua b/home/user/.config/nvim/lua/plugins/coding.lua index 316a4ab..a5745ed 100644 --- a/home/user/.config/nvim/lua/plugins/coding.lua +++ b/home/user/.config/nvim/lua/plugins/coding.lua @@ -21,6 +21,7 @@ return { require("telescope").load_extension("refactoring") end, keys = { + { "r", "", desc = "Refactoring", mode = {"n", "v"} }, { "rr", ":lua require('refactoring').select_refactor()", @@ -75,6 +76,7 @@ return { { "fr", "lua require('telescope').extensions.refactoring.refactors()", + desc = "Telescope refactorings", mode = "n", } } @@ -104,18 +106,20 @@ return { config = function() require("trouble").setup() - local function set_trouble_keymap(key, cmd) + vim.keymap.set("n", "x", "", {desc = "Diagnostics"}) + local function set_trouble_keymap(key, cmd, opts) vim.keymap.set( "n", string.format("x%s", key), - string.format("Trouble %s", cmd) + string.format("Trouble %s", cmd), + opts ) end - set_trouble_keymap("x", "diagnostics toggle") - set_trouble_keymap("X", "diagnostics toggle filter.buf=0") - set_trouble_keymap("Q", "qflist toggle") - set_trouble_keymap("l", "lsp toggle focus=false win.position=right") + set_trouble_keymap("x", "diagnostics toggle", {desc = "Workspace diagnostics window"}) + set_trouble_keymap("X", "diagnostics toggle filter.buf=0", {desc = "Buffer diagnostics window"}) + set_trouble_keymap("Q", "qflist toggle", {desc = "Qflist"}) + set_trouble_keymap("l", "lsp toggle focus=false win.position=right", {desc = "Toggle LSP diagnostics"}) end }, @@ -135,20 +139,22 @@ return { } }) - local function set_gitsigns_keymap(key, cmd) + vim.keymap.set("n", "g", "", {desc = "Git actions"}) + local function set_gitsigns_keymap(key, cmd, opts) vim.keymap.set( "n", string.format("g%s", key), - string.format("Gitsigns %s", cmd) + string.format("Gitsigns %s", cmd), + opts ) end - set_gitsigns_keymap('p', 'preview_hunk') -- show diff - set_gitsigns_keymap('b', 'blame_line') -- show author, hash, date and message of current line commit - set_gitsigns_keymap('n', 'next_hunk') -- go to next unstaged changes - set_gitsigns_keymap('N', 'prev_hunk') -- go to prev unstaged changes - set_gitsigns_keymap('r', 'reset_hunk') -- reset hunk under cursor - set_gitsigns_keymap('h', 'toggle_linehl') -- line highlighting + set_gitsigns_keymap('p', 'preview_hunk', {desc = "Preview hunk"}) + set_gitsigns_keymap('b', 'blame_line', {desc = "Show line commit info"}) + set_gitsigns_keymap('n', 'next_hunk', {desc = "Next changes"}) + set_gitsigns_keymap('N', 'prev_hunk', {desc = "Previous changes"}) + set_gitsigns_keymap('r', 'reset_hunk', {desc = "Reset changes"}) + set_gitsigns_keymap('h', 'toggle_linehl', {desc = "Toggle changes highlight"}) end }, { @@ -173,7 +179,8 @@ return { }, }, } - vim.keymap.set("n", "ca", require("actions-preview").code_actions) + vim.keymap.set("n", "c", "", {desc = "Code action"}) + vim.keymap.set("n", "ca", require("actions-preview").code_actions, {desc = "Code action"}) end, }, } \ No newline at end of file diff --git a/home/user/.config/nvim/lua/plugins/lsp_manager.lua b/home/user/.config/nvim/lua/plugins/lsp_manager.lua index 8bbea59..5797f9d 100644 --- a/home/user/.config/nvim/lua/plugins/lsp_manager.lua +++ b/home/user/.config/nvim/lua/plugins/lsp_manager.lua @@ -7,25 +7,33 @@ local on_attach = function(_, bufnr) buf_set_option('omnifunc', 'v:lua.vim.lsp.omnifunc', {}) -- Mappings. + local opts = { noremap=true, silent=true } + local function desc(description) + return vim.tbl_extend("keep", opts, {desc = description}) + end + + -- Sections + buf_set_keymap('n', 'w', '', {desc = "Workspace manage"}) + -- See `:help vim.lsp.*` for documentation on any of the below functions - buf_set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) - buf_set_keymap('n', 'gd', 'lua vim.lsp.buf.definition()', opts) - buf_set_keymap('n', 'gi', 'lua vim.lsp.buf.implementation()', opts) - buf_set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', opts) - buf_set_keymap('n', 'k', 'lua vim.lsp.buf.hover()', opts) - buf_set_keymap('n', 'K', 'lua vim.lsp.buf.signature_help()', opts) - buf_set_keymap('n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', opts) - buf_set_keymap('n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) - buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) - buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) - buf_set_keymap('n', 'rn', 'lua vim.lsp.buf.rename()', opts) - buf_set_keymap('n', 'e', 'lua vim.diagnostic.open_float()', opts) - buf_set_keymap('n', 'p', 'lua vim.diagnostic.goto_prev()', opts) - buf_set_keymap('n', 'n', 'lua vim.diagnostic.goto_next()', opts) + buf_set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', desc("Go declaration")) + buf_set_keymap('n', 'gd', 'lua vim.lsp.buf.definition()', desc("Go definition")) + buf_set_keymap('n', 'gi', 'lua vim.lsp.buf.implementation()', desc("Go implementation")) + buf_set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', desc("Get references")) + buf_set_keymap('n', 'k', 'lua vim.lsp.buf.hover()', desc("Show help")) + buf_set_keymap('n', 'K', 'lua vim.lsp.buf.signature_help()', desc("Show signature")) + buf_set_keymap('n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', desc("Add workspace folder")) + buf_set_keymap('n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', desc("Remove workspace folder")) + buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', desc("Show workspace folders")) + buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', desc("Show type")) + buf_set_keymap('n', 'rn', 'lua vim.lsp.buf.rename()', desc("Rename object")) + buf_set_keymap('n', 'e', 'lua vim.diagnostic.open_float()', desc("Show diagnostic")) + buf_set_keymap('n', 'p', 'lua vim.diagnostic.goto_prev()', desc("Previous problem")) + buf_set_keymap('n', 'n', 'lua vim.diagnostic.goto_next()', desc("Next problem")) buf_set_keymap('n', 'q', 'lua vim.diagnostic.setloclist()', opts) - buf_set_keymap('n', 'f', 'lua vim.lsp.buf.format()', opts) + buf_set_keymap('n', 'f', 'lua vim.lsp.buf.format()', desc("Format file")) end return {