mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-07-14 03:14:43 +02:00
more lazyload
This commit is contained in:
parent
89c1ad5e2e
commit
2006460016
5 changed files with 339 additions and 286 deletions
1
init.lua
1
init.lua
|
@ -10,7 +10,6 @@ require('lv-galaxyline')
|
||||||
require('lv-telescope')
|
require('lv-telescope')
|
||||||
require('lv-treesitter')
|
require('lv-treesitter')
|
||||||
require('lv-autopairs')
|
require('lv-autopairs')
|
||||||
require('lv-which-key')
|
|
||||||
|
|
||||||
-- LSP
|
-- LSP
|
||||||
require('lsp')
|
require('lsp')
|
||||||
|
|
|
@ -31,7 +31,9 @@ O = {
|
||||||
hop = {active = false},
|
hop = {active = false},
|
||||||
dial = {active = false},
|
dial = {active = false},
|
||||||
dashboard = {active = false},
|
dashboard = {active = false},
|
||||||
matchup = {active = false}
|
matchup = {active = false},
|
||||||
|
colorizer = {active = false},
|
||||||
|
numb = {active = false}
|
||||||
|
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,241 +1,304 @@
|
||||||
require("which-key").setup {
|
local M = {}
|
||||||
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
|
M.config = function()
|
||||||
if O.leader_key == ' ' or O.leader_key == 'space' then
|
require("which-key").setup {
|
||||||
vim.api.nvim_set_keymap('n', '<Space>', '<NOP>', {noremap = true, silent = true})
|
plugins = {
|
||||||
vim.g.mapleader = ' '
|
marks = true, -- shows a list of your marks on ' and `
|
||||||
else
|
registers = true, -- shows your registers on " in NORMAL or <C-r> in INSERT mode
|
||||||
vim.api.nvim_set_keymap('n', O.leader_key, '<NOP>', {noremap = true, silent = true})
|
-- the presets plugin, adds help for a bunch of default keybindings in Neovim
|
||||||
vim.g.mapleader = O.leader_key
|
-- No actual key bindings are created
|
||||||
end
|
presets = {
|
||||||
|
operators = false, -- adds help for operators like d, y, ...
|
||||||
local opts = {
|
motions = false, -- adds help for motions
|
||||||
mode = "n", -- NORMAL mode
|
text_objects = false, -- help for text objects triggered after entering an operator
|
||||||
prefix = "<leader>",
|
windows = true, -- default bindings on <c-w>
|
||||||
buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings
|
nav = true, -- misc bindings to work with windows
|
||||||
silent = true, -- use `silent` when creating keymaps
|
z = true, -- bindings for folds, spelling and others prefixed with z
|
||||||
noremap = true, -- use `noremap` when creating keymaps
|
g = true -- bindings for prefixed with g
|
||||||
nowait = false -- use `nowait` when creating keymaps
|
}
|
||||||
}
|
},
|
||||||
|
icons = {
|
||||||
-- no hl
|
breadcrumb = "»", -- symbol used in the command line area that shows your active key combo
|
||||||
vim.api.nvim_set_keymap('n', '<Leader>h', ':let @/=""<CR>', {noremap = true, silent = true})
|
separator = "➜", -- symbol used between a key and it's label
|
||||||
|
group = "+" -- symbol prepended to a group
|
||||||
-- explorer
|
},
|
||||||
vim.api.nvim_set_keymap('n', '<Leader>e', ":NvimTreeToggle<CR>", {noremap = true, silent = true})
|
window = {
|
||||||
|
border = "single", -- none, single, double, shadow
|
||||||
-- telescope
|
position = "bottom", -- bottom, top
|
||||||
vim.api.nvim_set_keymap('n', '<Leader>f', ':Telescope find_files<CR>', {noremap = true, silent = true})
|
margin = {1, 0, 1, 0}, -- extra window margin [top, right, bottom, left]
|
||||||
|
padding = {2, 2, 2, 2} -- extra window padding [top, right, bottom, left]
|
||||||
-- dashboard
|
},
|
||||||
vim.api.nvim_set_keymap('n', '<Leader>;', ':Dashboard<CR>', {noremap = true, silent = true})
|
layout = {
|
||||||
|
height = {min = 4, max = 25}, -- min and max height of the columns
|
||||||
-- Comments
|
width = {min = 20, max = 50}, -- min and max width of the columns
|
||||||
vim.api.nvim_set_keymap("n", "<leader>/", ":CommentToggle<CR>", {noremap = true, silent = true})
|
spacing = 3 -- spacing between columns
|
||||||
vim.api.nvim_set_keymap("v", "<leader>/", ":CommentToggle<CR>", {noremap = true, silent = true})
|
},
|
||||||
|
hidden = {
|
||||||
-- close buffer
|
"<silent>", "<cmd>", "<Cmd>", "<CR>", "call", "lua", "^:", "^ "
|
||||||
vim.api.nvim_set_keymap("n", "<leader>c", ":BufferClose<CR>", {noremap = true, silent = true})
|
}, -- hide mapping boilerplate
|
||||||
|
show_help = true -- show help message on the command line when the popup is visible
|
||||||
-- 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
|
|
||||||
-- }
|
|
||||||
|
|
||||||
-- local visualMappings = {
|
-- 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"}
|
||||||
|
}
|
||||||
|
-- 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
|
||||||
|
-- }
|
||||||
|
|
||||||
|
-- local visualMappings = {
|
||||||
-- ["/"] = {"<cmd>CommentToggle<cr>", "Comment"},
|
-- ["/"] = {"<cmd>CommentToggle<cr>", "Comment"},
|
||||||
-- r = {
|
-- r = {
|
||||||
-- name = "Replace",
|
-- name = "Replace",
|
||||||
-- f = {"<cmd>lua require('spectre').open_visual({path = vim.fn.expand('%')})<cr>", "File"},
|
-- f = {"<cmd>lua require('spectre').open_visual({path = vim.fn.expand('%')})<cr>", "File"},
|
||||||
-- p = {"<cmd>lua require('spectre').open_visual()<cr>", "Project"}
|
-- p = {"<cmd>lua require('spectre').open_visual()<cr>", "Project"}
|
||||||
|
-- }
|
||||||
-- }
|
-- }
|
||||||
-- }
|
|
||||||
|
|
||||||
local wk = require("which-key")
|
local wk = require("which-key")
|
||||||
wk.register(mappings, opts)
|
wk.register(mappings, opts)
|
||||||
-- wk.register(visualMappings, visualOpts)
|
-- wk.register(visualMappings, visualOpts)
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
||||||
|
|
||||||
|
|
|
@ -9,24 +9,6 @@ if fn.empty(fn.glob(install_path)) > 0 then
|
||||||
execute "packadd packer.nvim"
|
execute "packadd packer.nvim"
|
||||||
end
|
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 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
|
-- 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"
|
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"}
|
use {"windwp/nvim-autopairs"}
|
||||||
|
|
||||||
-- Comments
|
-- Comments
|
||||||
|
@ -107,13 +98,12 @@ return require("packer").startup(function(use)
|
||||||
{noremap = true, silent = true})
|
{noremap = true, silent = true})
|
||||||
vim.api.nvim_set_keymap('n', '<S-x>', ':BufferClose<CR>',
|
vim.api.nvim_set_keymap('n', '<S-x>', ':BufferClose<CR>',
|
||||||
{noremap = true, silent = true})
|
{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
|
-- Better motions
|
||||||
use {
|
use {
|
||||||
|
@ -147,7 +137,7 @@ return require("packer").startup(function(use)
|
||||||
opt = true
|
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 {
|
use {
|
||||||
"Pocco81/TrueZen.nvim",
|
"Pocco81/TrueZen.nvim",
|
||||||
-- event = 'BufEnter',
|
-- event = 'BufEnter',
|
||||||
|
@ -170,57 +160,56 @@ return require("packer").startup(function(use)
|
||||||
opt = true
|
opt = true
|
||||||
}
|
}
|
||||||
|
|
||||||
-- -- Colorizer
|
use {
|
||||||
-- use {'norcalli/nvim-colorizer.lua', opt = true}
|
"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
|
-- -- Treesitter playground
|
||||||
-- use {'nvim-treesitter/playground', opt = true}
|
-- use {'nvim-treesitter/playground', opt = true}
|
||||||
--
|
|
||||||
--
|
|
||||||
--
|
|
||||||
-- -- Latex
|
-- -- Latex
|
||||||
-- use {"lervag/vimtex", opt = true}
|
-- use {"lervag/vimtex", opt = true}
|
||||||
--
|
|
||||||
-- -- comments in context
|
-- -- comments in context
|
||||||
-- use {'JoosepAlviste/nvim-ts-context-commentstring', opt = true}
|
-- use {'JoosepAlviste/nvim-ts-context-commentstring', opt = true}
|
||||||
--
|
|
||||||
--
|
|
||||||
-- -- Git extras
|
-- -- Git extras
|
||||||
-- use {'f-person/git-blame.nvim', opt = true}
|
-- use {'f-person/git-blame.nvim', opt = true}
|
||||||
--
|
|
||||||
--
|
|
||||||
-- -- diagnostics
|
-- -- diagnostics
|
||||||
-- use {"folke/trouble.nvim", opt = true}
|
-- use {"folke/trouble.nvim", opt = true}
|
||||||
--
|
|
||||||
-- -- Debugging
|
-- -- Debugging
|
||||||
-- use {"mfussenegger/nvim-dap", opt = true}
|
-- use {"mfussenegger/nvim-dap", opt = true}
|
||||||
--
|
|
||||||
--
|
|
||||||
-- -- Better quickfix
|
-- -- Better quickfix
|
||||||
-- use {"kevinhwang91/nvim-bqf", opt = true}
|
-- use {"kevinhwang91/nvim-bqf", opt = true}
|
||||||
--
|
|
||||||
-- -- Search & Replace
|
-- -- Search & Replace
|
||||||
-- use {'windwp/nvim-spectre', opt = true}
|
-- use {'windwp/nvim-spectre', opt = true}
|
||||||
--
|
|
||||||
-- -- Symbol Outline
|
-- -- Symbol Outline
|
||||||
-- use {'simrat39/symbols-outline.nvim', opt = true}
|
-- use {'simrat39/symbols-outline.nvim', opt = true}
|
||||||
--
|
|
||||||
-- -- Interactive scratchpad
|
-- -- Interactive scratchpad
|
||||||
-- use {'metakirby5/codi.vim', opt = true}
|
-- use {'metakirby5/codi.vim', opt = true}
|
||||||
--
|
|
||||||
-- -- Markdown preview
|
-- -- Markdown preview
|
||||||
-- use {
|
-- use {
|
||||||
-- 'iamcco/markdown-preview.nvim',
|
-- 'iamcco/markdown-preview.nvim',
|
||||||
-- run = 'cd app && npm install',
|
-- run = 'cd app && npm install',
|
||||||
-- opt = true
|
-- opt = true
|
||||||
-- }
|
-- }
|
||||||
--
|
|
||||||
-- -- Floating terminal
|
-- -- Floating terminal
|
||||||
-- use {'numToStr/FTerm.nvim', opt = true}
|
-- use {'numToStr/FTerm.nvim', opt = true}
|
||||||
--
|
|
||||||
-- -- Sane gx for netrw_gx bug
|
-- -- Sane gx for netrw_gx bug
|
||||||
-- use {"felipec/vim-sanegx", opt = true}
|
-- use {"felipec/vim-sanegx", opt = true}
|
||||||
|
|
||||||
|
@ -235,11 +224,9 @@ return require("packer").startup(function(use)
|
||||||
run = 'npm install --prefix server',
|
run = 'npm install --prefix server',
|
||||||
opt = true
|
opt = true
|
||||||
}
|
}
|
||||||
require_plugin('bracey.vim')
|
|
||||||
|
|
||||||
use {"nvim-telescope/telescope-fzy-native.nvim", opt = true}
|
use {"nvim-telescope/telescope-fzy-native.nvim", opt = true}
|
||||||
use {"nvim-telescope/telescope-project.nvim", opt = true}
|
use {"nvim-telescope/telescope-project.nvim", opt = true}
|
||||||
require_plugin('telescope-project.nvim')
|
|
||||||
|
|
||||||
-- Autotag
|
-- Autotag
|
||||||
-- use {"windwp/nvim-ts-autotag", opt = true}
|
-- use {"windwp/nvim-ts-autotag", opt = true}
|
||||||
|
|
|
@ -17,10 +17,12 @@ O.extras = false
|
||||||
O.leader_key = ' '
|
O.leader_key = ' '
|
||||||
|
|
||||||
-- After changing plugin config it is recommended to run :PackerCompile
|
-- After changing plugin config it is recommended to run :PackerCompile
|
||||||
O.plugin.hop.active = false
|
O.plugin.hop.active = true
|
||||||
O.plugin.dial.active = false
|
O.plugin.dial.active = true
|
||||||
O.plugin.dashboard.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
|
-- dashboard
|
||||||
-- O.dashboard.custom_header = {""}
|
-- O.dashboard.custom_header = {""}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue