From 5273b1712b58f9387d93d495759969c28891c61a Mon Sep 17 00:00:00 2001 From: christianchiarulli Date: Fri, 9 Jul 2021 21:57:55 -0400 Subject: more config refactor --- lua/default-config.lua | 1 + lua/keymappings.lua | 2 + lua/lv-barbar/init.lua | 2 + lua/lv-which-key/config.lua | 127 ++++++++++++++++++++++++++++++++++++++++++ lua/lv-which-key/init.lua | 132 +------------------------------------------- 5 files changed, 134 insertions(+), 130 deletions(-) create mode 100644 lua/lv-which-key/config.lua (limited to 'lua') diff --git a/lua/default-config.lua b/lua/default-config.lua index f840be03..c7932590 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -239,3 +239,4 @@ require "lv-galaxyline.config" require "lv-gitsigns.config" require "lv-telescope.config" require "lv-dap.config" +require "lv-which-key.config" diff --git a/lua/keymappings.lua b/lua/keymappings.lua index f9669d13..f7f3fb76 100644 --- a/lua/keymappings.lua +++ b/lua/keymappings.lua @@ -78,6 +78,8 @@ vim.cmd 'vnoremap P "0P' -- map n (miniyank-cycle) -- map N (miniyank-cycleback) -- ]]) +-- no hl +vim.api.nvim_set_keymap("n", "h", ':let @/=""', { noremap = true, silent = true }) -- Toggle the QuickFix window vim.api.nvim_set_keymap("", "", ":call QuickFixToggle()", { noremap = true, silent = true }) diff --git a/lua/lv-barbar/init.lua b/lua/lv-barbar/init.lua index 3dcb5474..de0554b7 100644 --- a/lua/lv-barbar/init.lua +++ b/lua/lv-barbar/init.lua @@ -1,6 +1,8 @@ vim.api.nvim_set_keymap("n", "", ":BufferClose", { noremap = true, silent = true }) vim.api.nvim_set_keymap("n", "", ":BufferNext", { noremap = true, silent = true }) vim.api.nvim_set_keymap("n", "", ":BufferPrevious", { noremap = true, silent = true }) +-- close buffer +vim.api.nvim_set_keymap("n", "c", ":BufferClose", { noremap = true, silent = true }) O.user_which_key["b"] = { name = "Buffers", diff --git a/lua/lv-which-key/config.lua b/lua/lv-which-key/config.lua new file mode 100644 index 00000000..f16491c5 --- /dev/null +++ b/lua/lv-which-key/config.lua @@ -0,0 +1,127 @@ +O.plugin.which_key = { + active = false, + setup = { + plugins = { + marks = true, -- shows a list of your marks on ' and ` + registers = true, -- shows your registers on " in NORMAL or in INSERT mode + -- the presets plugin, adds help for a bunch of default keybindings in Neovim + -- No actual key bindings are created + presets = { + operators = false, -- adds help for operators like d, y, ... + motions = false, -- adds help for motions + text_objects = false, -- help for text objects triggered after entering an operator + windows = true, -- default bindings on + nav = true, -- misc bindings to work with windows + z = true, -- bindings for folds, spelling and others prefixed with z + g = true, -- bindings for prefixed with g + }, + spelling = { enabled = true, suggestions = 20 }, -- use which-key for spelling hints + }, + icons = { + breadcrumb = "»", -- symbol used in the command line area that shows your active key combo + separator = "➜", -- symbol used between a key and it's label + group = "+", -- symbol prepended to a group + }, + window = { + border = "single", -- none, single, double, shadow + position = "bottom", -- bottom, top + margin = { 1, 0, 1, 0 }, -- extra window margin [top, right, bottom, left] + padding = { 2, 2, 2, 2 }, -- extra window padding [top, right, bottom, left] + }, + layout = { + height = { min = 4, max = 25 }, -- min and max height of the columns + width = { min = 20, max = 50 }, -- min and max width of the columns + spacing = 3, -- spacing between columns + }, + hidden = { "", "", "", "", "call", "lua", "^:", "^ " }, -- hide mapping boilerplate + show_help = true, -- show help message on the command line when the popup is visible + }, + mappings = { + ["w"] = "Save", + ["q"] = "Quit", + ["."] = "LunarConfig", + ["/"] = "Comment", + ["c"] = "Close Buffer", + ["e"] = "Explorer", + ["f"] = "Find File", + ["h"] = "No Highlight", + [";"] = "Dashboard", + p = { + name = "Packer", + c = { "PackerCompile", "Compile" }, + i = { "PackerInstall", "Install" }, + r = { "lua require('lv-utils').reload_lv_config()", "Reload" }, + s = { "PackerSync", "Sync" }, + u = { "PackerUpdate", "Update" }, + }, + + -- " Available Debug Adapters: + -- " https://microsoft.github.io/debug-adapter-protocol/implementors/adapters/ + -- " Adapter configuration and installation instructions: + -- " https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation + -- " Debug Adapter protocol: + -- " https://microsoft.github.io/debug-adapter-protocol/ + -- " Debugging + g = { + name = "Git", + j = { "lua require 'gitsigns'.next_hunk()", "Next Hunk" }, + k = { "lua require 'gitsigns'.prev_hunk()", "Prev Hunk" }, + l = { "lua require 'gitsigns'.blame_line()", "Blame" }, + p = { "lua require 'gitsigns'.preview_hunk()", "Preview Hunk" }, + r = { "lua require 'gitsigns'.reset_hunk()", "Reset Hunk" }, + R = { "lua require 'gitsigns'.reset_buffer()", "Reset Buffer" }, + s = { "lua require 'gitsigns'.stage_hunk()", "Stage Hunk" }, + u = { + "lua require 'gitsigns'.undo_stage_hunk()", + "Undo Stage Hunk", + }, + o = { "Telescope git_status", "Open changed file" }, + b = { "Telescope git_branches", "Checkout branch" }, + c = { "Telescope git_commits", "Checkout commit" }, + C = { + "Telescope git_bcommits", + "Checkout commit(for current file)", + }, + }, + + l = { + name = "LSP", + a = { "lua vim.lsp.buf.code_action()", "Code Action" }, + d = { + "Telescope lsp_document_diagnostics", + "Document Diagnostics", + }, + w = { + "Telescope lsp_workspace_diagnostics", + "Workspace Diagnostics", + }, + f = { "Neoformat", "Format" }, + i = { "LspInfo", "Info" }, + j = { "lua vim.lsp.diagnostic.goto_next({popup_opts = {border = O.lsp.popup_border}})", "Next Diagnostic" }, + k = { "lua vim.lsp.diagnostic.goto_prev({popup_opts = {border = O.lsp.popup_border}})", "Prev Diagnostic" }, + q = { "Telescope quickfix", "Quickfix" }, + r = { "lua vim.lsp.buf.rename()", "Rename" }, + s = { " Telescope lsp_document_symbols", "Document Symbols" }, + S = { + "Telescope lsp_dynamic_workspace_symbols", + "Workspace Symbols", + }, + }, + + s = { + name = "Search", + b = { "Telescope git_branches", "Checkout branch" }, + c = { "Telescope colorscheme", "Colorscheme" }, + f = { "Telescope find_files", "Find File" }, + h = { "Telescope help_tags", "Find Help" }, + M = { "Telescope man_pages", "Man Pages" }, + r = { "Telescope oldfiles", "Open Recent File" }, + R = { "Telescope registers", "Registers" }, + t = { "Telescope live_grep", "Text" }, + }, + T = { + name = "Treesitter", + i = { ":TSConfigInfo", "Info" }, + }, + }, +} diff --git a/lua/lv-which-key/init.lua b/lua/lv-which-key/init.lua index 6189aa50..a799687f 100644 --- a/lua/lv-which-key/init.lua +++ b/lua/lv-which-key/init.lua @@ -6,42 +6,7 @@ if not status_ok then return end -which_key.setup { - plugins = { - marks = true, -- shows a list of your marks on ' and ` - registers = true, -- shows your registers on " in NORMAL or in INSERT mode - -- the presets plugin, adds help for a bunch of default keybindings in Neovim - -- No actual key bindings are created - presets = { - operators = false, -- adds help for operators like d, y, ... - motions = false, -- adds help for motions - text_objects = false, -- help for text objects triggered after entering an operator - windows = true, -- default bindings on - nav = true, -- misc bindings to work with windows - z = true, -- bindings for folds, spelling and others prefixed with z - g = true, -- bindings for prefixed with g - }, - spelling = { enabled = true, suggestions = 20 }, -- use which-key for spelling hints - }, - icons = { - breadcrumb = "»", -- symbol used in the command line area that shows your active key combo - separator = "➜", -- symbol used between a key and it's label - group = "+", -- symbol prepended to a group - }, - window = { - border = "single", -- none, single, double, shadow - position = "bottom", -- bottom, top - margin = { 1, 0, 1, 0 }, -- extra window margin [top, right, bottom, left] - padding = { 2, 2, 2, 2 }, -- extra window padding [top, right, bottom, left] - }, - layout = { - height = { min = 4, max = 25 }, -- min and max height of the columns - width = { min = 20, max = 50 }, -- min and max width of the columns - spacing = 3, -- spacing between columns - }, - hidden = { "", "", "", "", "call", "lua", "^:", "^ " }, -- hide mapping boilerplate - show_help = true, -- show help message on the command line when the popup is visible -} +which_key.setup(O.plugin.which_key.setup) -- Set leader if O.leader_key == " " or O.leader_key == "space" then @@ -61,9 +26,6 @@ local opts = { nowait = false, -- use `nowait` when creating keymaps } --- no hl -vim.api.nvim_set_keymap("n", "h", ':let @/=""', { noremap = true, silent = true }) - -- explorer vim.api.nvim_set_keymap( @@ -82,9 +44,6 @@ vim.api.nvim_set_keymap("n", ";", ":Dashboard", { noremap = true, si vim.api.nvim_set_keymap("n", "/", ":CommentToggle", { noremap = true, silent = true }) vim.api.nvim_set_keymap("v", "/", ":CommentToggle", { noremap = true, silent = true }) --- close buffer -vim.api.nvim_set_keymap("n", "c", ":BufferClose", { noremap = true, silent = true }) - -- Save vim.api.nvim_set_keymap("n", "w", ":w!", { noremap = true, silent = true }) @@ -99,94 +58,7 @@ vim.api.nvim_set_keymap( { noremap = true, silent = true } ) -local mappings = { - ["w"] = "Save", - ["q"] = "Quit", - ["."] = "LunarConfig", - ["/"] = "Comment", - ["c"] = "Close Buffer", - ["e"] = "Explorer", - ["f"] = "Find File", - ["h"] = "No Highlight", - [";"] = "Dashboard", - p = { - name = "Packer", - c = { "PackerCompile", "Compile" }, - i = { "PackerInstall", "Install" }, - r = { "lua require('lv-utils').reload_lv_config()", "Reload" }, - s = { "PackerSync", "Sync" }, - u = { "PackerUpdate", "Update" }, - }, - - -- " Available Debug Adapters: - -- " https://microsoft.github.io/debug-adapter-protocol/implementors/adapters/ - -- " Adapter configuration and installation instructions: - -- " https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation - -- " Debug Adapter protocol: - -- " https://microsoft.github.io/debug-adapter-protocol/ - -- " Debugging - g = { - name = "Git", - j = { "lua require 'gitsigns'.next_hunk()", "Next Hunk" }, - k = { "lua require 'gitsigns'.prev_hunk()", "Prev Hunk" }, - l = { "lua require 'gitsigns'.blame_line()", "Blame" }, - p = { "lua require 'gitsigns'.preview_hunk()", "Preview Hunk" }, - r = { "lua require 'gitsigns'.reset_hunk()", "Reset Hunk" }, - R = { "lua require 'gitsigns'.reset_buffer()", "Reset Buffer" }, - s = { "lua require 'gitsigns'.stage_hunk()", "Stage Hunk" }, - u = { - "lua require 'gitsigns'.undo_stage_hunk()", - "Undo Stage Hunk", - }, - o = { "Telescope git_status", "Open changed file" }, - b = { "Telescope git_branches", "Checkout branch" }, - c = { "Telescope git_commits", "Checkout commit" }, - C = { - "Telescope git_bcommits", - "Checkout commit(for current file)", - }, - }, - - l = { - name = "LSP", - a = { "lua vim.lsp.buf.code_action()", "Code Action" }, - d = { - "Telescope lsp_document_diagnostics", - "Document Diagnostics", - }, - w = { - "Telescope lsp_workspace_diagnostics", - "Workspace Diagnostics", - }, - f = { "Neoformat", "Format" }, - i = { "LspInfo", "Info" }, - j = { "lua vim.lsp.diagnostic.goto_next({popup_opts = {border = O.lsp.popup_border}})", "Next Diagnostic" }, - k = { "lua vim.lsp.diagnostic.goto_prev({popup_opts = {border = O.lsp.popup_border}})", "Prev Diagnostic" }, - q = { "Telescope quickfix", "Quickfix" }, - r = { "lua vim.lsp.buf.rename()", "Rename" }, - s = { " Telescope lsp_document_symbols", "Document Symbols" }, - S = { - "Telescope lsp_dynamic_workspace_symbols", - "Workspace Symbols", - }, - }, - - s = { - name = "Search", - b = { "Telescope git_branches", "Checkout branch" }, - c = { "Telescope colorscheme", "Colorscheme" }, - f = { "Telescope find_files", "Find File" }, - h = { "Telescope help_tags", "Find Help" }, - M = { "Telescope man_pages", "Man Pages" }, - r = { "Telescope oldfiles", "Open Recent File" }, - R = { "Telescope registers", "Registers" }, - t = { "Telescope live_grep", "Text" }, - }, - T = { - name = "Treesitter", - i = { ":TSConfigInfo", "Info" }, - }, -} +local mappings = O.plugin.which_key.mappings -- if O.plugin.ts_playground.active then -- vim.api.nvim_set_keymap("n", "Th", ":TSHighlightCapturesUnderCursor", { noremap = true, silent = true }) -- cgit v1.2.3