diff options
-rw-r--r-- | init.lua | 1 | ||||
-rw-r--r-- | lua/default-config.lua | 4 | ||||
-rw-r--r-- | lua/lv-which-key/init.lua | 529 | ||||
-rw-r--r-- | lua/plugins.lua | 83 | ||||
-rw-r--r-- | lv-config.lua | 8 |
5 files changed, 339 insertions, 286 deletions
@@ -10,7 +10,6 @@ require('lv-galaxyline') require('lv-telescope') require('lv-treesitter') require('lv-autopairs') -require('lv-which-key') -- LSP require('lsp') diff --git a/lua/default-config.lua b/lua/default-config.lua index ecd53b86..203d21c6 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -31,7 +31,9 @@ O = { hop = {active = false}, dial = {active = false}, dashboard = {active = false}, - matchup = {active = false} + matchup = {active = false}, + colorizer = {active = false}, + numb = {active = false} }, diff --git a/lua/lv-which-key/init.lua b/lua/lv-which-key/init.lua index ab3a8dca..1ead82d4 100644 --- a/lua/lv-which-key/init.lua +++ b/lua/lv-which-key/init.lua @@ -1,241 +1,304 @@ -require("which-key").setup { - plugins = { - marks = true, -- shows a list of your marks on ' and ` - registers = true, -- shows your registers on " in NORMAL or <C-r> 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 <c-w> - 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 +local M = {} + +M.config = function() + require("which-key").setup { + plugins = { + marks = true, -- shows a list of your marks on ' and ` + registers = true, -- shows your registers on " in NORMAL or <C-r> 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 <c-w> + 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 + } + }, + 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 = { + "<silent>", "<cmd>", "<Cmd>", "<CR>", "call", "lua", "^:", "^ " + }, -- hide mapping boilerplate + show_help = true -- show help message on the command line when the popup is visible + } + + -- Set leader + if O.leader_key == ' ' or O.leader_key == 'space' then + vim.api.nvim_set_keymap('n', '<Space>', '<NOP>', + {noremap = true, silent = true}) + vim.g.mapleader = ' ' + else + vim.api.nvim_set_keymap('n', O.leader_key, '<NOP>', + {noremap = true, silent = true}) + vim.g.mapleader = O.leader_key + end + + local opts = { + mode = "n", -- NORMAL mode + prefix = "<leader>", + buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings + silent = true, -- use `silent` when creating keymaps + noremap = true, -- use `noremap` when creating keymaps + nowait = false -- use `nowait` when creating keymaps + } + + -- no hl + vim.api.nvim_set_keymap('n', '<Leader>h', ':let @/=""<CR>', + {noremap = true, silent = true}) + + -- explorer + vim.api.nvim_set_keymap('n', '<Leader>e', ":NvimTreeToggle<CR>", + {noremap = true, silent = true}) + + -- telescope + vim.api.nvim_set_keymap('n', '<Leader>f', ':Telescope find_files<CR>', + {noremap = true, silent = true}) + + -- dashboard + vim.api.nvim_set_keymap('n', '<Leader>;', ':Dashboard<CR>', + {noremap = true, silent = true}) + + -- Comments + vim.api.nvim_set_keymap("n", "<leader>/", ":CommentToggle<CR>", + {noremap = true, silent = true}) + vim.api.nvim_set_keymap("v", "<leader>/", ":CommentToggle<CR>", + {noremap = true, silent = true}) + + -- close buffer + vim.api.nvim_set_keymap("n", "<leader>c", ":BufferClose<CR>", + {noremap = true, silent = true}) + + -- open projects + vim.api.nvim_set_keymap('n', '<leader>p', + ":lua require'telescope'.extensions.project.project{}<CR>", + {noremap = true, silent = true}) + + vim.api.nvim_set_keymap("n", "<leader>z", ":TZAtaraxis<CR>", + {noremap = true, silent = true}) + -- z = {"<cmd>TZAtaraxis<cr>", "toggle zen"} + + -- TODO create entire treesitter section + + local mappings = { + + ["/"] = "Comment", + ["c"] = "Close Buffer", + ["e"] = "Explorer", + ["f"] = "Find File", + ["h"] = "No Highlight", + ["p"] = "Projects", + ["z"] = "Zen", + [";"] = "Dashboard", + b = { + name = "+Buffers", + j = {"<cmd>BufferPick<cr>", "jump to buffer"}, + w = {"<cmd>BufferWipeout<cr>", "wipeout buffer"}, + e = { + "<cmd>BufferCloseAllButCurrent<cr>", + "close all but current buffer" + }, + h = { + "<cmd>BufferCloseBuffersLeft<cr>", + "close all buffers to the left" + }, + l = { + "<cmd>BufferCloseBuffersRight<cr>", + "close all BufferLines to the right" + }, + D = { + "<cmd>BufferOrderByDirectory<cr>", + "sort BufferLines automatically by directory" + }, + L = { + "<cmd>BufferOrderByLanguage<cr>", + "sort BufferLines automatically by language" + } + }, + + d = { + name = "Diagnostics", + t = {"<cmd>TroubleToggle<cr>", "trouble"}, + w = { + "<cmd>TroubleToggle lsp_workspace_diagnostics<cr>", "workspace" + }, + d = {"<cmd>TroubleToggle lsp_document_diagnostics<cr>", "document"}, + q = {"<cmd>TroubleToggle quickfix<cr>", "quickfix"}, + l = {"<cmd>TroubleToggle loclist<cr>", "loclist"}, + r = {"<cmd>TroubleToggle lsp_references<cr>", "references"} + }, + + -- " 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 + -- command! DebugToggleBreakpoint lua require'dap'.toggle_breakpoint() + -- command! DebugStart lua require'dap'.continue() + -- command! DebugContinue lua require'dap'.continue() + -- command! DebugStepOver lua require'dap'.step_over() + -- command! DebugStepOut lua require'dap'.step_out() + -- command! DebugStepInto lua require'dap'.step_into() + -- command! DebugToggleRepl lua require'dap'.repl.toggle() + -- command! DebugGetSession lua require'dap'.session() + D = { + name = "Debug", + b = {"<cmd>DebugToggleBreakpoint<cr>", "Toggle Breakpoint"}, + c = {"<cmd>DebugContinue<cr>", "Continue"}, + i = {"<cmd>DebugStepInto<cr>", "Step Into"}, + o = {"<cmd>DebugStepOver<cr>", "Step Over"}, + r = {"<cmd>DebugToggleRepl<cr>", "Toggle Repl"}, + s = {"<cmd>DebugStart<cr>", "Start"} + }, + g = { + name = "Git", + j = {"<cmd>lua require 'lv-utils'.next_hunk()<cr>", "Next Hunk"}, + k = {"<cmd>lua require 'lv-utils'.prev_hunk()<cr>", "Prev Hunk"}, + l = {"<cmd>lua require 'lv-utils'.blame_line()<cr>", "Blame"}, + p = { + "<cmd>lua require 'lv-utils'.preview_hunk()<cr>", "Preview Hunk" + }, + r = {"<cmd>lua require 'lv-utils'.reset_hunk()<cr>", "Reset Hunk"}, + R = { + "<cmd>lua require 'lv-utils'.reset_buffer()<cr>", "Reset Buffer" + }, + s = {"<cmd>lua require 'lv-utils'.stage_hunk()<cr>", "Stage Hunk"}, + u = { + "<cmd>lua require 'lv-utils'.undo_stage_hunk()<cr>", + "Undo Stage Hunk" + }, + o = {"<cmd>Telescope git_status<cr>", "Open changed file"}, + b = {"<cmd>Telescope git_branches<cr>", "Checkout branch"}, + c = {"<cmd>Telescope git_commits<cr>", "Checkout commit"}, + C = { + "<cmd>Telescope git_bcommits<cr>", + "Checkout commit(for current file)" + } + }, + l = { + name = "LSP", + a = {"<cmd>Lspsaga code_action<cr>", "Code Action"}, + A = {"<cmd>Lspsaga range_code_action<cr>", "Selected Action"}, + d = { + "<cmd>Telescope lsp_document_diagnostics<cr>", + "Document Diagnostics" + }, + D = { + "<cmd>Telescope lsp_workspace_diagnostics<cr>", + "Workspace Diagnostics" + }, + f = {"<cmd>lua require 'lv-utils'.formatting()<cr>", "Format"}, + h = {"<cmd>Lspsaga hover_doc<cr>", "Hover Doc"}, + i = {"<cmd>LspInfo<cr>", "Info"}, + l = {"<cmd>Lspsaga lsp_finder<cr>", "LSP Finder"}, + L = {"<cmd>Lspsaga show_line_diagnostics<cr>", "Line Diagnostics"}, + p = {"<cmd>Lspsaga preview_definition<cr>", "Preview Definition"}, + q = {"<cmd>Telescope quickfix<cr>", "Quickfix"}, + r = {"<cmd>Lspsaga rename<cr>", "Rename"}, + t = {"<cmd>LspTypeDefinition<cr>", "Type Definition"}, + x = {"<cmd>cclose<cr>", "Close Quickfix"}, + s = {"<cmd>Telescope lsp_document_symbols<cr>", "Document Symbols"}, + S = { + "<cmd>Telescope lsp_dynamic_workspace_symbols<cr>", + "Workspace Symbols" + } + }, + r = { + name = "Replace", + f = { + "<cmd>lua require('spectre').open_file_search()<cr>", + "Current File" + }, + p = {"<cmd>lua require('spectre').open()<cr>", "Project"} + }, + s = { + name = "Search", + b = {"<cmd>Telescope git_branches<cr>", "Checkout branch"}, + c = {"<cmd>Telescope colorscheme<cr>", "Colorscheme"}, + d = { + "<cmd>Telescope lsp_document_diagnostics<cr>", + "Document Diagnostics" + }, + D = { + "<cmd>Telescope lsp_workspace_diagnostics<cr>", + "Workspace Diagnostics" + }, + f = {"<cmd>Telescope find_files<cr>", "Find File"}, + h = {"<cmd>Telescope help_tags<cr>", "Find Help"}, + m = {"<cmd>Telescope marks<cr>", "Marks"}, + M = {"<cmd>Telescope man_pages<cr>", "Man Pages"}, + r = {"<cmd>Telescope oldfiles<cr>", "Open Recent File"}, + R = {"<cmd>Telescope registers<cr>", "Registers"}, + t = {"<cmd>Telescope live_grep<cr>", "Text"} + }, + S = { + name = "Session", + s = {"<cmd>SessionSave<cr>", "Save Session"}, + l = {"<cmd>SessionLoad<cr>", "Load Session"} } - }, - 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 = {"<silent>", "<cmd>", "<Cmd>", "<CR>", "call", "lua", "^:", "^ "}, -- hide mapping boilerplate - show_help = true -- show help message on the command line when the popup is visible -} - --- Set leader -if O.leader_key == ' ' or O.leader_key == 'space' then - vim.api.nvim_set_keymap('n', '<Space>', '<NOP>', {noremap = true, silent = true}) - vim.g.mapleader = ' ' -else - vim.api.nvim_set_keymap('n', O.leader_key, '<NOP>', {noremap = true, silent = true}) - vim.g.mapleader = O.leader_key -end + -- extras + -- z = { + -- name = "Zen", + -- s = {"<cmd>TZBottom<cr>", "toggle status line"}, + -- t = {"<cmd>TZTop<cr>", "toggle tab bar"}, + -- z = {"<cmd>TZAtaraxis<cr>", "toggle zen"} + -- } + } -local opts = { - mode = "n", -- NORMAL mode - prefix = "<leader>", - buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings - silent = true, -- use `silent` when creating keymaps - noremap = true, -- use `noremap` when creating keymaps - nowait = false -- use `nowait` when creating keymaps -} - --- no hl -vim.api.nvim_set_keymap('n', '<Leader>h', ':let @/=""<CR>', {noremap = true, silent = true}) - --- explorer -vim.api.nvim_set_keymap('n', '<Leader>e', ":NvimTreeToggle<CR>", {noremap = true, silent = true}) - --- telescope -vim.api.nvim_set_keymap('n', '<Leader>f', ':Telescope find_files<CR>', {noremap = true, silent = true}) - --- dashboard -vim.api.nvim_set_keymap('n', '<Leader>;', ':Dashboard<CR>', {noremap = true, silent = true}) - --- Comments -vim.api.nvim_set_keymap("n", "<leader>/", ":CommentToggle<CR>", {noremap = true, silent = true}) -vim.api.nvim_set_keymap("v", "<leader>/", ":CommentToggle<CR>", {noremap = true, silent = true}) - --- close buffer -vim.api.nvim_set_keymap("n", "<leader>c", ":BufferClose<CR>", {noremap = true, silent = true}) - --- open projects -vim.api.nvim_set_keymap('n', '<leader>p', ":lua require'telescope'.extensions.project.project{}<CR>", - {noremap = true, silent = true}) - -vim.api.nvim_set_keymap("n", "<leader>z", ":TZAtaraxis<CR>", {noremap = true, silent = true}) --- z = {"<cmd>TZAtaraxis<cr>", "toggle zen"} - --- TODO create entire treesitter section - -local mappings = { - - ["/"] = "Comment", - ["c"] = "Close Buffer", - ["e"] = "Explorer", - ["f"] = "Find File", - ["h"] = "No Highlight", - ["p"] = "Projects", - ["z"] = "Zen", - [";"] = "Dashboard", - b = { - name = "+Buffers", - j = {"<cmd>BufferPick<cr>", "jump to buffer"}, - w = {"<cmd>BufferWipeout<cr>", "wipeout buffer"}, - e = {"<cmd>BufferCloseAllButCurrent<cr>", "close all but current buffer"}, - h = {"<cmd>BufferCloseBuffersLeft<cr>", "close all buffers to the left"}, - l = {"<cmd>BufferCloseBuffersRight<cr>", "close all BufferLines to the right"}, - D = {"<cmd>BufferOrderByDirectory<cr>", "sort BufferLines automatically by directory"}, - L = {"<cmd>BufferOrderByLanguage<cr>", "sort BufferLines automatically by language"}, - }, - - - d = { - name = "Diagnostics", - t = {"<cmd>TroubleToggle<cr>", "trouble"}, - w = {"<cmd>TroubleToggle lsp_workspace_diagnostics<cr>", "workspace"}, - d = {"<cmd>TroubleToggle lsp_document_diagnostics<cr>", "document"}, - q = {"<cmd>TroubleToggle quickfix<cr>", "quickfix"}, - l = {"<cmd>TroubleToggle loclist<cr>", "loclist"}, - r = {"<cmd>TroubleToggle lsp_references<cr>", "references"} - }, - --- " 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 --- command! DebugToggleBreakpoint lua require'dap'.toggle_breakpoint() --- command! DebugStart lua require'dap'.continue() --- command! DebugContinue lua require'dap'.continue() --- command! DebugStepOver lua require'dap'.step_over() --- command! DebugStepOut lua require'dap'.step_out() --- command! DebugStepInto lua require'dap'.step_into() --- command! DebugToggleRepl lua require'dap'.repl.toggle() --- command! DebugGetSession lua require'dap'.session() - D = { - name = "Debug", - b = {"<cmd>DebugToggleBreakpoint<cr>", "Toggle Breakpoint"}, - c = {"<cmd>DebugContinue<cr>", "Continue"}, - i = {"<cmd>DebugStepInto<cr>", "Step Into"}, - o = {"<cmd>DebugStepOver<cr>", "Step Over"}, - r = {"<cmd>DebugToggleRepl<cr>", "Toggle Repl"}, - s = {"<cmd>DebugStart<cr>", "Start"} - }, - g = { - name = "Git", - j = {"<cmd>lua require 'lv-utils'.next_hunk()<cr>", "Next Hunk"}, - k = {"<cmd>lua require 'lv-utils'.prev_hunk()<cr>", "Prev Hunk"}, - l = {"<cmd>lua require 'lv-utils'.blame_line()<cr>", "Blame"}, - p = {"<cmd>lua require 'lv-utils'.preview_hunk()<cr>", "Preview Hunk"}, - r = {"<cmd>lua require 'lv-utils'.reset_hunk()<cr>", "Reset Hunk"}, - R = {"<cmd>lua require 'lv-utils'.reset_buffer()<cr>", "Reset Buffer"}, - s = {"<cmd>lua require 'lv-utils'.stage_hunk()<cr>", "Stage Hunk"}, - u = {"<cmd>lua require 'lv-utils'.undo_stage_hunk()<cr>", "Undo Stage Hunk"}, - o = {"<cmd>Telescope git_status<cr>", "Open changed file"}, - b = {"<cmd>Telescope git_branches<cr>", "Checkout branch"}, - c = {"<cmd>Telescope git_commits<cr>", "Checkout commit"}, - C = {"<cmd>Telescope git_bcommits<cr>", "Checkout commit(for current file)"} - }, - l = { - name = "LSP", - a = {"<cmd>Lspsaga code_action<cr>", "Code Action"}, - A = {"<cmd>Lspsaga range_code_action<cr>", "Selected Action"}, - d = {"<cmd>Telescope lsp_document_diagnostics<cr>", "Document Diagnostics"}, - D = {"<cmd>Telescope lsp_workspace_diagnostics<cr>", "Workspace Diagnostics"}, - f = {"<cmd>lua require 'lv-utils'.formatting()<cr>", "Format"}, - h = {"<cmd>Lspsaga hover_doc<cr>", "Hover Doc"}, - i = {"<cmd>LspInfo<cr>", "Info"}, - l = {"<cmd>Lspsaga lsp_finder<cr>", "LSP Finder"}, - L = {"<cmd>Lspsaga show_line_diagnostics<cr>", "Line Diagnostics"}, - p = {"<cmd>Lspsaga preview_definition<cr>", "Preview Definition"}, - q = {"<cmd>Telescope quickfix<cr>", "Quickfix"}, - r = {"<cmd>Lspsaga rename<cr>", "Rename"}, - t = {"<cmd>LspTypeDefinition<cr>", "Type Definition"}, - x = {"<cmd>cclose<cr>", "Close Quickfix"}, - s = {"<cmd>Telescope lsp_document_symbols<cr>", "Document Symbols"}, - S = {"<cmd>Telescope lsp_dynamic_workspace_symbols<cr>", "Workspace Symbols"} - }, - r = { - name = "Replace", - f = {"<cmd>lua require('spectre').open_file_search()<cr>", "Current File"}, - p = {"<cmd>lua require('spectre').open()<cr>", "Project"} - }, - s = { - name = "Search", - b = {"<cmd>Telescope git_branches<cr>", "Checkout branch"}, - c = {"<cmd>Telescope colorscheme<cr>", "Colorscheme"}, - d = {"<cmd>Telescope lsp_document_diagnostics<cr>", "Document Diagnostics"}, - D = {"<cmd>Telescope lsp_workspace_diagnostics<cr>", "Workspace Diagnostics"}, - f = {"<cmd>Telescope find_files<cr>", "Find File"}, - h = {"<cmd>Telescope help_tags<cr>", "Find Help"}, - m = {"<cmd>Telescope marks<cr>", "Marks"}, - M = {"<cmd>Telescope man_pages<cr>", "Man Pages"}, - r = {"<cmd>Telescope oldfiles<cr>", "Open Recent File"}, - R = {"<cmd>Telescope registers<cr>", "Registers"}, - t = {"<cmd>Telescope live_grep<cr>", "Text"} - }, - S = { - name = "Session", - s = {"<cmd>SessionSave<cr>", "Save Session"}, - l = {"<cmd>SessionLoad<cr>", "Load Session"} - }, - -- extras - -- z = { - -- name = "Zen", - -- s = {"<cmd>TZBottom<cr>", "toggle status line"}, - -- t = {"<cmd>TZTop<cr>", "toggle tab bar"}, - -- z = {"<cmd>TZAtaraxis<cr>", "toggle zen"} + if O.extras then + mappings["L"] = { + name = "+Latex", + c = {"<cmd>VimtexCompile<cr>", "Toggle Compilation Mode"}, + f = {"<cmd>call vimtex#fzf#run()<cr>", "Fzf Find"}, + i = {"<cmd>VimtexInfo<cr>", "Project Information"}, + s = {"<cmd>VimtexStop<cr>", "Stop Project Compilation"}, + t = {"<cmd>VimtexTocToggle<cr>", "Toggle Table Of Content"}, + v = {"<cmd>VimtexView<cr>", "View PDF"} + } + end + -- TODO come back and fix visual mappings + -- local visualOpts = { + -- mode = "v", -- Visual mode + -- prefix = "<leader>", + -- buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings + -- silent = true, -- use `silent` when creating keymaps + -- noremap = true, -- use `noremap` when creating keymaps + -- nowait = false -- use `nowait` when creating keymaps -- } -} - -if O.extras then - mappings["L"] = { - name = "+Latex", - c = {"<cmd>VimtexCompile<cr>", "Toggle Compilation Mode"}, - f = {"<cmd>call vimtex#fzf#run()<cr>", "Fzf Find"}, - i = {"<cmd>VimtexInfo<cr>", "Project Information"}, - s = {"<cmd>VimtexStop<cr>", "Stop Project Compilation"}, - t = {"<cmd>VimtexTocToggle<cr>", "Toggle Table Of Content"}, - v = {"<cmd>VimtexView<cr>", "View PDF"} - } -end --- TODO come back and fix visual mappings --- local visualOpts = { --- mode = "v", -- Visual mode --- prefix = "<leader>", --- buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings --- silent = true, -- use `silent` when creating keymaps --- noremap = true, -- use `noremap` when creating keymaps --- nowait = false -- use `nowait` when creating keymaps --- } - --- local visualMappings = { + + -- local visualMappings = { -- ["/"] = {"<cmd>CommentToggle<cr>", "Comment"}, -- r = { - -- name = "Replace", - -- f = {"<cmd>lua require('spectre').open_visual({path = vim.fn.expand('%')})<cr>", "File"}, - -- p = {"<cmd>lua require('spectre').open_visual()<cr>", "Project"} + -- name = "Replace", + -- f = {"<cmd>lua require('spectre').open_visual({path = vim.fn.expand('%')})<cr>", "File"}, + -- p = {"<cmd>lua require('spectre').open_visual()<cr>", "Project"} -- } --- } + -- } + + local wk = require("which-key") + wk.register(mappings, opts) + -- wk.register(visualMappings, visualOpts) +end -local wk = require("which-key") -wk.register(mappings, opts) --- wk.register(visualMappings, visualOpts) +return M diff --git a/lua/plugins.lua b/lua/plugins.lua index d33d13c2..952f8f92 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -9,24 +9,6 @@ if fn.empty(fn.glob(install_path)) > 0 then execute "packadd packer.nvim" end ---- Check if a file or directory exists in this path -local function require_plugin(plugin) - local plugin_prefix = fn.stdpath("data") .. "/site/pack/packer/opt/" - - local plugin_path = plugin_prefix .. plugin .. "/" - -- print('test '..plugin_path) - local ok, err, code = os.rename(plugin_path, plugin_path) - if not ok then - if code == 13 then - -- Permission denied, but it exists - return true - end - end - -- print(ok, err, code) - if ok then vim.cmd("packadd " .. plugin) end - return ok, err, code -end - vim.cmd "autocmd BufWritePost plugins.lua PackerCompile" -- Auto compile when there are changes in plugins.lua -- vim.cmd "autocmd BufWritePost lv-config.lua PackerCompile" -- Auto compile when there are changes in plugins.lua @@ -76,7 +58,16 @@ return require("packer").startup(function(use) event = "BufRead" } - use {"folke/which-key.nvim"} + -- whichkey + use { + "folke/which-key.nvim", + config = function() + require('lv-which-key').config() + end, + event = "BufRead" + } + + -- Autopairs use {"windwp/nvim-autopairs"} -- Comments @@ -107,13 +98,12 @@ return require("packer").startup(function(use) {noremap = true, silent = true}) vim.api.nvim_set_keymap('n', '<S-x>', ':BufferClose<CR>', {noremap = true, silent = true}) - end + end, + event = "BufRead" } - -- use {"hrsh7th/vim-vsnip"} - - -- extras, these do not load by default + -- Extras, these do not load by default -- Better motions use { @@ -147,7 +137,7 @@ return require("packer").startup(function(use) opt = true } - -- Zen Mode TODO this don't work with whichkey might gave to make this built in + -- Zen Mode TODO this don't work with whichkey might gave to make this built in, may have to replace with folke zen use { "Pocco81/TrueZen.nvim", -- event = 'BufEnter', @@ -170,57 +160,56 @@ return require("packer").startup(function(use) opt = true } - -- -- Colorizer - -- use {'norcalli/nvim-colorizer.lua', opt = true} + use { + "norcalli/nvim-colorizer.lua", + event = "BufRead", + config = function() + require("colorizer").setup() + vim.cmd("ColorizerReloadAllBuffers") + end, + disable = not O.plugin.colorizer.active + } + + use { + "nacro90/numb.nvim", + event = "BufRead", + config = function() + require('numb').setup { + show_numbers = true, -- Enable 'number' for the window while peeking + show_cursorline = true -- Enable 'cursorline' for the window while peeking + } + end, + disable = not O.plugin.numb.active + } - -- -- Peek lines - -- use {'nacro90/numb.nvim', opt = true} - -- -- -- Treesitter playground -- use {'nvim-treesitter/playground', opt = true} - -- - -- - -- -- -- Latex -- use {"lervag/vimtex", opt = true} - -- -- -- comments in context -- use {'JoosepAlviste/nvim-ts-context-commentstring', opt = true} - -- - -- -- -- Git extras -- use {'f-person/git-blame.nvim', opt = true} - -- - -- -- -- diagnostics -- use {"folke/trouble.nvim", opt = true} - -- -- -- Debugging -- use {"mfussenegger/nvim-dap", opt = true} - -- - -- -- -- Better quickfix -- use {"kevinhwang91/nvim-bqf", opt = true} - -- -- -- Search & Replace -- use {'windwp/nvim-spectre', opt = true} - -- -- -- Symbol Outline -- use {'simrat39/symbols-outline.nvim', opt = true} - -- -- -- Interactive scratchpad -- use {'metakirby5/codi.vim', opt = true} - -- -- -- Markdown preview -- use { -- 'iamcco/markdown-preview.nvim', -- run = 'cd app && npm install', -- opt = true -- } - -- -- -- Floating terminal -- use {'numToStr/FTerm.nvim', opt = true} - -- -- -- Sane gx for netrw_gx bug -- use {"felipec/vim-sanegx", opt = true} @@ -235,11 +224,9 @@ return require("packer").startup(function(use) run = 'npm install --prefix server', opt = true } - require_plugin('bracey.vim') use {"nvim-telescope/telescope-fzy-native.nvim", opt = true} use {"nvim-telescope/telescope-project.nvim", opt = true} - require_plugin('telescope-project.nvim') -- Autotag -- use {"windwp/nvim-ts-autotag", opt = true} diff --git a/lv-config.lua b/lv-config.lua index af9c7e47..92074f9b 100644 --- a/lv-config.lua +++ b/lv-config.lua @@ -17,10 +17,12 @@ O.extras = false O.leader_key = ' ' -- After changing plugin config it is recommended to run :PackerCompile -O.plugin.hop.active = false -O.plugin.dial.active = false +O.plugin.hop.active = true +O.plugin.dial.active = true O.plugin.dashboard.active = true -O.plugin.matchup.active = false +O.plugin.matchup.active = true +O.plugin.colorizer.active = true +O.plugin.numb.active = true -- dashboard -- O.dashboard.custom_header = {""} |