feat(Neovim): Plugins Changes
New Plugins and also changed some existing ones
This commit is contained in:
parent
99b2c9ee92
commit
553978feef
18 changed files with 544 additions and 8 deletions
|
@ -238,3 +238,94 @@ vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-h>", goto_parent_node, keyopts)
|
||||||
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-l>", goto_child_node, keyopts)
|
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-l>", goto_child_node, keyopts)
|
||||||
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-j>", goto_next_node, keyopts)
|
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-j>", goto_next_node, keyopts)
|
||||||
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-k>", goto_prev_node, keyopts)
|
vim.keymap.set({ "n", "v", "o", "i" }, "<C-M-k>", goto_prev_node, keyopts)
|
||||||
|
|
||||||
|
-- DEFAULT_KEYMAPS:
|
||||||
|
|
||||||
|
-- Half-window movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "<C-u>", "<Cmd>lua Scroll('<C-u>', 1, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<C-d>", "<Cmd>lua Scroll('<C-d>', 1, 1)<CR>")
|
||||||
|
|
||||||
|
-- Page movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "<C-b>", "<Cmd>lua Scroll('<C-b>', 1, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<C-f>", "<Cmd>lua Scroll('<C-f>', 1, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<PageUp>", "<Cmd>lua Scroll('<C-b>', 1, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<PageDown>", "<Cmd>lua Scroll('<C-f>', 1, 1)<CR>")
|
||||||
|
|
||||||
|
-- EXTRA_KEYMAPS:
|
||||||
|
|
||||||
|
-- Start/end of file and line number movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "gg", "<Cmd>lua Scroll('gg')<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "G", "<Cmd>lua Scroll('G', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- Start/end of line:
|
||||||
|
vim.keymap.set({ "n", "x" }, "0", "<Cmd>lua Scroll('0')<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "^", "<Cmd>lua Scroll('^')<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "$", "<Cmd>lua Scroll('$', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- Paragraph movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "{", "<Cmd>lua Scroll('{')<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "}", "<Cmd>lua Scroll('}')<CR>")
|
||||||
|
|
||||||
|
-- Previous/next search result:
|
||||||
|
vim.keymap.set("n", "n", "<Cmd>lua Scroll('n', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "N", "<Cmd>lua Scroll('N', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "*", "<Cmd>lua Scroll('*', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "#", "<Cmd>lua Scroll('#', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "g*", "<Cmd>lua Scroll('g*', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "g#", "<Cmd>lua Scroll('g#', 1)<CR>")
|
||||||
|
|
||||||
|
-- Previous/next cursor location:
|
||||||
|
vim.keymap.set("n", "<C-o>", "<Cmd>lua Scroll('<C-o>', 1)<CR>")
|
||||||
|
vim.keymap.set("n", "<C-i>", "<Cmd>lua Scroll('1<C-i>', 1)<CR>")
|
||||||
|
|
||||||
|
-- Screen scrolling:
|
||||||
|
vim.keymap.set("n", "zz", "<Cmd>lua Scroll('zz', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "zt", "<Cmd>lua Scroll('zt', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "zb", "<Cmd>lua Scroll('zb', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "z.", "<Cmd>lua Scroll('z.', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "z<CR>", "<Cmd>lua Scroll('zt^', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "z-", "<Cmd>lua Scroll('z-', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "z^", "<Cmd>lua Scroll('z^', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "z+", "<Cmd>lua Scroll('z+', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "<C-y>", "<Cmd>lua Scroll('<C-y>', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "<C-e>", "<Cmd>lua Scroll('<C-e>', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- Horizontal screen scrolling:
|
||||||
|
vim.keymap.set("n", "zH", "<Cmd>lua Scroll('zH')<CR>")
|
||||||
|
vim.keymap.set("n", "zL", "<Cmd>lua Scroll('zL')<CR>")
|
||||||
|
vim.keymap.set("n", "zs", "<Cmd>lua Scroll('zs')<CR>")
|
||||||
|
vim.keymap.set("n", "ze", "<Cmd>lua Scroll('ze')<CR>")
|
||||||
|
vim.keymap.set("n", "zh", "<Cmd>lua Scroll('zh', 0, 1)<CR>")
|
||||||
|
vim.keymap.set("n", "zl", "<Cmd>lua Scroll('zl', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- EXTENDED_KEYMAPS:
|
||||||
|
|
||||||
|
-- Up/down movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "k", "<Cmd>lua Scroll('k', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "j", "<Cmd>lua Scroll('j', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<Up>", "<Cmd>lua Scroll('k', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<Down>", "<Cmd>lua Scroll('j', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- Left/right movements:
|
||||||
|
vim.keymap.set({ "n", "x" }, "h", "<Cmd>lua Scroll('h', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "l", "<Cmd>lua Scroll('l', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<Left>", "<Cmd>lua Scroll('h', 0, 1)<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<Right>", "<Cmd>lua Scroll('l', 0, 1)<CR>")
|
||||||
|
|
||||||
|
-- SCROLL_WHEEL_KEYMAPS:
|
||||||
|
|
||||||
|
vim.keymap.set({ "n", "x" }, "<ScrollWheelUp>", "<Cmd>lua Scroll('<ScrollWheelUp>')<CR>")
|
||||||
|
vim.keymap.set({ "n", "x" }, "<ScrollWheelDown>", "<Cmd>lua Scroll('<ScrollWheelDown>')<CR>")
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<M-BS>", "<Cmd>noh<CR>", { noremap = true, silent = true, desc = "Clear Search" })
|
||||||
|
|
||||||
|
vim.keymap.set("n", "]b", require("goto-breakpoints").next, { desc = "Next Breakpoint" })
|
||||||
|
vim.keymap.set("n", "[b", require("goto-breakpoints").prev, { desc = "Prev Breakpoint" })
|
||||||
|
vim.keymap.set("n", "<leader>dbn", require("goto-breakpoints").next, { desc = "Next Breakpoint" })
|
||||||
|
vim.keymap.set("n", "<leader>dbp", require("goto-breakpoints").prev, { desc = "Prev Breakpoint" })
|
||||||
|
vim.keymap.set("n", "<leader>dbs", require("goto-breakpoints").stopped, { desc = "Stopped Breakpoint" })
|
||||||
|
|
||||||
|
-- vim.keymap.set({ "n", "o", "x" }, "w", "<cmd>lua require('spider').motion('w')<CR>", { desc = "Spider-w" })
|
||||||
|
-- vim.keymap.set({ "n", "o", "x" }, "e", "<cmd>lua require('spider').motion('e')<CR>", { desc = "Spider-e" })
|
||||||
|
-- vim.keymap.set({ "n", "o", "x" }, "b", "<cmd>lua require('spider').motion('b')<CR>", { desc = "Spider-b" })
|
||||||
|
-- vim.keymap.set({ "n", "o", "x" }, "ge", "<cmd>lua require('spider').motion('ge')<CR>", { desc = "Spider-ge" })
|
||||||
|
|
29
.config/nvim/lua/plugins/actions-preview.lua
Normal file
29
.config/nvim/lua/plugins/actions-preview.lua
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"aznhe21/actions-preview.nvim",
|
||||||
|
event = "BufRead",
|
||||||
|
config = function()
|
||||||
|
vim.keymap.set(
|
||||||
|
{ "v", "n" },
|
||||||
|
"ga",
|
||||||
|
require("actions-preview").code_actions,
|
||||||
|
{ noremap = true, silent = true, desc = "Code Actions" }
|
||||||
|
)
|
||||||
|
require("actions-preview").setup({
|
||||||
|
telescope = {
|
||||||
|
sorting_strategy = "ascending",
|
||||||
|
layout_strategy = "vertical",
|
||||||
|
layout_config = {
|
||||||
|
width = 0.8,
|
||||||
|
height = 0.9,
|
||||||
|
prompt_position = "top",
|
||||||
|
preview_cutoff = 20,
|
||||||
|
preview_height = function(_, _, max_lines)
|
||||||
|
return max_lines - 15
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
|
@ -5,12 +5,15 @@ return {
|
||||||
optional = true,
|
optional = true,
|
||||||
opts = function(_, dashboard)
|
opts = function(_, dashboard)
|
||||||
local logo = [[
|
local logo = [[
|
||||||
███╗ ███╗ █████╗ ████████╗████████╗██╗ ██╗██╗███╗ ███╗
|
▄ ▄
|
||||||
████╗ ████║██╔══██╗╚══██╔══╝╚══██╔══╝██║ ██║██║████╗ ████║
|
▄ ▄▄▄ ▄ ▄▄▄ ▄ ▄
|
||||||
██╔████╔██║███████║ ██║ ██║ ██║ ██║██║██╔████╔██║
|
█ ▄ █▄█ ▄▄▄ █ █▄█ █ █
|
||||||
██║╚██╔╝██║██╔══██║ ██║ ██║ ╚██╗ ██╔╝██║██║╚██╔╝██║
|
▄▄ █▄█▄▄▄█ █▄█▄█▄▄█▄▄█ █
|
||||||
██║ ╚═╝ ██║██║ ██║ ██║ ██║ ╚████╔╝ ██║██║ ╚═╝ ██║
|
▄ █▄▄█ ▄ ▄▄ ▄█ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄
|
||||||
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═══╝ ╚═╝╚═╝ ╚═╝
|
█▄▄▄▄ ▄▄▄ █ ▄ ▄▄▄ ▄ ▄▄▄ ▄ ▄ █ ▄
|
||||||
|
▄ █ █▄█ █▄█ █ █ █▄█ █ █▄█ ▄▄▄ █ █
|
||||||
|
█▄█ ▄ █▄▄█▄▄█ █ ▄▄█ █ ▄ █ █▄█▄█ █
|
||||||
|
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ █▄█▄▄▄█
|
||||||
]]
|
]]
|
||||||
dashboard.section.header.val = vim.split(logo, "\n")
|
dashboard.section.header.val = vim.split(logo, "\n")
|
||||||
end,
|
end,
|
||||||
|
|
14
.config/nvim/lua/plugins/cinnamon.lua
Normal file
14
.config/nvim/lua/plugins/cinnamon.lua
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"declancm/cinnamon.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
config = function()
|
||||||
|
require("cinnamon").setup({
|
||||||
|
default_keymaps = true,
|
||||||
|
extra_keymaps = true,
|
||||||
|
extended_keymaps = true,
|
||||||
|
override_keymaps = true,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
|
@ -56,6 +56,10 @@ return {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
sorting = defaults.sorting,
|
sorting = defaults.sorting,
|
||||||
|
window = {
|
||||||
|
completion = cmp.config.window.bordered(),
|
||||||
|
documentation = cmp.config.window.bordered(),
|
||||||
|
},
|
||||||
}
|
}
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
104
.config/nvim/lua/plugins/dap.lua
Normal file
104
.config/nvim/lua/plugins/dap.lua
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"mfussenegger/nvim-dap",
|
||||||
|
|
||||||
|
dependencies = {
|
||||||
|
|
||||||
|
-- fancy UI for the debugger
|
||||||
|
{
|
||||||
|
"rcarriga/nvim-dap-ui",
|
||||||
|
-- stylua: ignore
|
||||||
|
keys = {
|
||||||
|
{ "<leader>du", function() require("dapui").toggle({ }) end, desc = "Dap UI" },
|
||||||
|
{ "<leader>de", function() require("dapui").eval() end, desc = "Eval", mode = {"n", "v"} },
|
||||||
|
},
|
||||||
|
opts = {},
|
||||||
|
config = function(_, opts)
|
||||||
|
local dap = require("dap")
|
||||||
|
local dapui = require("dapui")
|
||||||
|
dapui.setup(opts)
|
||||||
|
dap.listeners.after.event_initialized["dapui_config"] = function()
|
||||||
|
dapui.open({})
|
||||||
|
end
|
||||||
|
dap.listeners.before.event_terminated["dapui_config"] = function()
|
||||||
|
dapui.close({})
|
||||||
|
end
|
||||||
|
dap.listeners.before.event_exited["dapui_config"] = function()
|
||||||
|
dapui.close({})
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- virtual text for the debugger
|
||||||
|
{
|
||||||
|
"theHamsta/nvim-dap-virtual-text",
|
||||||
|
opts = {},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- which key integration
|
||||||
|
{
|
||||||
|
"folke/which-key.nvim",
|
||||||
|
optional = true,
|
||||||
|
opts = {
|
||||||
|
defaults = {
|
||||||
|
["<leader>d"] = { name = "+debug" },
|
||||||
|
["<leader>da"] = { name = "+adapters" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- mason.nvim integration
|
||||||
|
{
|
||||||
|
"jay-babu/mason-nvim-dap.nvim",
|
||||||
|
dependencies = "mason.nvim",
|
||||||
|
cmd = { "DapInstall", "DapUninstall" },
|
||||||
|
opts = {
|
||||||
|
-- Makes a best effort to setup the various debuggers with
|
||||||
|
-- reasonable debug configurations
|
||||||
|
automatic_installation = true,
|
||||||
|
|
||||||
|
-- You can provide additional configuration to the handlers,
|
||||||
|
-- see mason-nvim-dap README for more information
|
||||||
|
handlers = {},
|
||||||
|
|
||||||
|
-- You'll need to check that you have the required things installed
|
||||||
|
-- online, please don't ask me how to install them :)
|
||||||
|
ensure_installed = {
|
||||||
|
-- Update this to ensure that you have the debuggers for the langs you want
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- stylua: ignore
|
||||||
|
keys = {
|
||||||
|
{ "<leader>dc", function() require("dap").continue() end, desc = "Continue" },
|
||||||
|
{ "<leader>dC", function() require("dap").run_to_cursor() end, desc = "Run to Cursor" },
|
||||||
|
{ "<leader>dg", function() require("dap").goto_() end, desc = "Go to line (no execute)" },
|
||||||
|
{ "<leader>di", function() require("dap").step_into() end, desc = "Step Into" },
|
||||||
|
{ "<leader>dj", function() require("dap").down() end, desc = "Down" },
|
||||||
|
{ "<leader>dk", function() require("dap").up() end, desc = "Up" },
|
||||||
|
{ "<leader>dl", function() require("dap").run_last() end, desc = "Run Last" },
|
||||||
|
{ "<leader>do", function() require("dap").step_out() end, desc = "Step Out" },
|
||||||
|
{ "<leader>dO", function() require("dap").step_over() end, desc = "Step Over" },
|
||||||
|
{ "<leader>dp", function() require("dap").pause() end, desc = "Pause" },
|
||||||
|
{ "<leader>dr", function() require("dap").repl.toggle() end, desc = "Toggle REPL" },
|
||||||
|
{ "<leader>ds", function() require("dap").session() end, desc = "Session" },
|
||||||
|
{ "<leader>dt", function() require("dap").terminate() end, desc = "Terminate" },
|
||||||
|
{ "<leader>dw", function() require("dap.ui.widgets").hover() end, desc = "Widgets" },
|
||||||
|
},
|
||||||
|
|
||||||
|
config = function()
|
||||||
|
local Config = require("lazyvim.config")
|
||||||
|
vim.api.nvim_set_hl(0, "DapStoppedLine", { default = true, link = "Visual" })
|
||||||
|
|
||||||
|
for name, sign in pairs(Config.icons.dap) do
|
||||||
|
sign = type(sign) == "table" and sign or { sign }
|
||||||
|
vim.fn.sign_define(
|
||||||
|
"Dap" .. name,
|
||||||
|
{ text = sign[1], texthl = sign[2] or "DiagnosticInfo", linehl = sign[3], numhl = sign[3] }
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
57
.config/nvim/lua/plugins/flash.lua
Normal file
57
.config/nvim/lua/plugins/flash.lua
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"folke/flash.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
vscode = true,
|
||||||
|
---@type Flash.Config
|
||||||
|
opts = {},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"s",
|
||||||
|
mode = { "n", "x", "o" },
|
||||||
|
function()
|
||||||
|
require("flash").jump({
|
||||||
|
search = {
|
||||||
|
mode = function(str)
|
||||||
|
return "\\<" .. str
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
desc = "Flash",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"S",
|
||||||
|
mode = { "n", "o", "x" },
|
||||||
|
function()
|
||||||
|
require("flash").treesitter()
|
||||||
|
end,
|
||||||
|
desc = "Flash Treesitter",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"r",
|
||||||
|
mode = "o",
|
||||||
|
function()
|
||||||
|
require("flash").remote()
|
||||||
|
end,
|
||||||
|
desc = "Remote Flash",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"R",
|
||||||
|
mode = { "o", "x" },
|
||||||
|
function()
|
||||||
|
require("flash").treesitter_search()
|
||||||
|
end,
|
||||||
|
desc = "Treesitter Search",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<c-s>",
|
||||||
|
mode = { "c" },
|
||||||
|
function()
|
||||||
|
require("flash").toggle()
|
||||||
|
end,
|
||||||
|
desc = "Toggle Flash Search",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
6
.config/nvim/lua/plugins/goto-breakpoints.lua
Normal file
6
.config/nvim/lua/plugins/goto-breakpoints.lua
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"ofirgall/goto-breakpoints.nvim",
|
||||||
|
event = "BufRead",
|
||||||
|
},
|
||||||
|
}
|
|
@ -8,5 +8,87 @@ return {
|
||||||
keys[#keys + 1] = { "gy", "<CMD>Glance type_definitions<CR>", desc = "Goto t[y]pe definitions" }
|
keys[#keys + 1] = { "gy", "<CMD>Glance type_definitions<CR>", desc = "Goto t[y]pe definitions" }
|
||||||
keys[#keys + 1] = { "gI", "<CMD>Glance implementations<CR>", desc = "Goto implementations" }
|
keys[#keys + 1] = { "gI", "<CMD>Glance implementations<CR>", desc = "Goto implementations" }
|
||||||
end,
|
end,
|
||||||
|
opts = {
|
||||||
|
-- options for vim.diagnostic.config()
|
||||||
|
diagnostics = {
|
||||||
|
underline = true,
|
||||||
|
update_in_insert = false,
|
||||||
|
virtual_text = {
|
||||||
|
spacing = 4,
|
||||||
|
source = "if_many",
|
||||||
|
prefix = "●",
|
||||||
|
-- this will set set the prefix to a function that returns the diagnostics icon based on the severity
|
||||||
|
-- this only works on a recent 0.10.0 build. Will be set to "●" when not supported
|
||||||
|
-- prefix = "icons",
|
||||||
|
float = {
|
||||||
|
border = {
|
||||||
|
{ "┌", "FloatBorder" },
|
||||||
|
{ "─", "FloatBorder" },
|
||||||
|
{ "┐", "FloatBorder" },
|
||||||
|
{ "│", "FloatBorder" },
|
||||||
|
{ "┘", "FloatBorder" },
|
||||||
|
{ "─", "FloatBorder" },
|
||||||
|
{ "└", "FloatBorder" },
|
||||||
|
{ "│", "FloatBorder" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
severity_sort = true,
|
||||||
|
},
|
||||||
|
-- Enable this to enable the builtin LSP inlay hints on Neovim >= 0.10.0
|
||||||
|
-- Be aware that you also will need to properly configure your LSP server to
|
||||||
|
-- provide the inlay hints.
|
||||||
|
inlay_hints = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
-- add any global capabilities here
|
||||||
|
capabilities = {},
|
||||||
|
-- Automatically format on save
|
||||||
|
autoformat = true,
|
||||||
|
-- Enable this to show formatters used in a notification
|
||||||
|
-- Useful for debugging formatter issues
|
||||||
|
format_notify = false,
|
||||||
|
-- options for vim.lsp.buf.format
|
||||||
|
-- `bufnr` and `filter` is handled by the LazyVim formatter,
|
||||||
|
-- but can be also overridden when specified
|
||||||
|
format = {
|
||||||
|
formatting_options = nil,
|
||||||
|
timeout_ms = nil,
|
||||||
|
},
|
||||||
|
-- LSP Server Settings
|
||||||
|
---@type lspconfig.options
|
||||||
|
servers = {
|
||||||
|
jsonls = {},
|
||||||
|
lua_ls = {
|
||||||
|
-- mason = false, -- set to false if you don't want this server to be installed with mason
|
||||||
|
-- Use this to add any additional keymaps
|
||||||
|
-- for specific lsp servers
|
||||||
|
---@type LazyKeys[]
|
||||||
|
-- keys = {},
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = {
|
||||||
|
checkThirdParty = false,
|
||||||
|
},
|
||||||
|
completion = {
|
||||||
|
callSnippet = "Replace",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- you can do any additional lsp server setup here
|
||||||
|
-- return true if you don't want this server to be setup with lspconfig
|
||||||
|
---@type table<string, fun(server:string, opts:_.lspconfig.options):boolean?>
|
||||||
|
setup = {
|
||||||
|
-- example to setup with typescript.nvim
|
||||||
|
-- tsserver = function(_, opts)
|
||||||
|
-- require("typescript").setup({ server = opts })
|
||||||
|
-- return true
|
||||||
|
-- end,
|
||||||
|
-- Specify * to use this function as a fallback for any server
|
||||||
|
-- ["*"] = function(server, opts) end,
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
9
.config/nvim/lua/plugins/numb.lua
Normal file
9
.config/nvim/lua/plugins/numb.lua
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"nacro90/numb.nvim",
|
||||||
|
event = "BufRead",
|
||||||
|
config = function()
|
||||||
|
require("numb").setup({})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
|
@ -23,7 +23,7 @@ return {
|
||||||
-- The plugin will try to auto-detect the package manager based on
|
-- The plugin will try to auto-detect the package manager based on
|
||||||
-- `yarn.lock` or `package-lock.json`. If none are found it will use the
|
-- `yarn.lock` or `package-lock.json`. If none are found it will use the
|
||||||
-- provided one, if nothing is provided it will use `yarn`
|
-- provided one, if nothing is provided it will use `yarn`
|
||||||
package_manager = "yarn",
|
package_manager = "npm",
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
16
.config/nvim/lua/plugins/persistent-breakpoints.lua
Normal file
16
.config/nvim/lua/plugins/persistent-breakpoints.lua
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"Weissle/persistent-breakpoints.nvim",
|
||||||
|
event = "BufReadPost",
|
||||||
|
keys = {
|
||||||
|
{ "<leader>dbd", "<cmd>PBClearAllBreakpoints<cr>", desc = "Delete All Breakpoints" },
|
||||||
|
{ "<leader>dbc", "<cmd>PBSetConditionalBreakpoint<cr>", desc = "Set Conditional Breakpoint" },
|
||||||
|
{ "<leader>dbb", "<cmd>PBToggleBreakpoint<cr>", desc = "Toggle Breakpoint" },
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
require("persistent-breakpoints").setup({
|
||||||
|
load_breakpoints_event = { "BufReadPost" },
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
29
.config/nvim/lua/plugins/rainbow-delimeters.lua
Normal file
29
.config/nvim/lua/plugins/rainbow-delimeters.lua
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"HiPhish/rainbow-delimiters.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
config = function()
|
||||||
|
local rainbow_delimiters = require("rainbow-delimiters")
|
||||||
|
|
||||||
|
vim.g.rainbow_delimiters = {
|
||||||
|
strategy = {
|
||||||
|
[""] = rainbow_delimiters.strategy["global"],
|
||||||
|
vim = rainbow_delimiters.strategy["local"],
|
||||||
|
},
|
||||||
|
query = {
|
||||||
|
[""] = "rainbow-delimiters",
|
||||||
|
lua = "rainbow-blocks",
|
||||||
|
},
|
||||||
|
highlight = {
|
||||||
|
"RainbowDelimiterRed",
|
||||||
|
"RainbowDelimiterYellow",
|
||||||
|
"RainbowDelimiterBlue",
|
||||||
|
"RainbowDelimiterOrange",
|
||||||
|
"RainbowDelimiterGreen",
|
||||||
|
"RainbowDelimiterViolet",
|
||||||
|
"RainbowDelimiterCyan",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
79
.config/nvim/lua/plugins/sniprun.lua.bak
Normal file
79
.config/nvim/lua/plugins/sniprun.lua.bak
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"michaelb/sniprun",
|
||||||
|
run = "bash ./install.sh",
|
||||||
|
-- cmd = { "SnipRun", "SnipInfo", "SnipLive", "SnipClose", "SnipReset", "SnipReplMemoryClean" },
|
||||||
|
config = function()
|
||||||
|
require("sniprun").setup({
|
||||||
|
selected_interpreters = {}, --# use those instead of the default for the current filetype
|
||||||
|
repl_enable = { "javascript", "typescript" }, --# enable REPL-like behavior for the given interpreters
|
||||||
|
repl_disable = {}, --# disable REPL-like behavior for the given interpreters
|
||||||
|
|
||||||
|
interpreter_options = {
|
||||||
|
--# interpreter-specific options, see docs / :SnipInfo <name>
|
||||||
|
|
||||||
|
--# use the interpreter name as key
|
||||||
|
GFM_original = {
|
||||||
|
use_on_filetypes = { "markdown.pandoc" }, --# the 'use_on_filetypes' configuration key is
|
||||||
|
--# available for every interpreter
|
||||||
|
},
|
||||||
|
Python3_original = {
|
||||||
|
error_truncate = "auto", --# Truncate runtime errors 'long', 'short' or 'auto'
|
||||||
|
--# the hint is available for every interpreter
|
||||||
|
--# but may not be always respected
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
--# you can combo different display modes as desired and with the 'Ok' or 'Err' suffix
|
||||||
|
--# to filter only sucessful runs (or errored-out runs respectively)
|
||||||
|
display = {
|
||||||
|
-- "Classic", --# display results in the command-line area
|
||||||
|
-- "VirtualTextOk", --# display ok results as virtual text (multiline is shortened)
|
||||||
|
|
||||||
|
"VirtualText", --# display results as virtual text
|
||||||
|
-- "TempFloatingWindow", --# display results in a floating window
|
||||||
|
-- "LongTempFloatingWindow", --# same as above, but only long results. To use with VirtualText[Ok/Err]
|
||||||
|
-- "Terminal", --# display results in a vertical split
|
||||||
|
-- "TerminalWithCode", --# display results and code history in a vertical split
|
||||||
|
-- "NvimNotify", --# display with the nvim-notify plugin
|
||||||
|
-- "Api" --# return output to a programming interface
|
||||||
|
},
|
||||||
|
|
||||||
|
live_display = { "VirtualTextOk" }, --# display mode used in live_mode
|
||||||
|
|
||||||
|
display_options = {
|
||||||
|
terminal_scrollback = vim.o.scrollback, --# change terminal display scrollback lines
|
||||||
|
terminal_line_number = false, --# whether show line number in terminal window
|
||||||
|
terminal_signcolumn = false, --# whether show signcolumn in terminal window
|
||||||
|
terminal_persistence = true, --# always keep the terminal open (true) or close it at every occasion (false)
|
||||||
|
terminal_width = 45, --# change the terminal display option width
|
||||||
|
notification_timeout = 5, --# timeout for nvim_notify output
|
||||||
|
},
|
||||||
|
|
||||||
|
--# You can use the same keys to customize whether a sniprun producing
|
||||||
|
--# no output should display nothing or '(no output)'
|
||||||
|
show_no_output = {
|
||||||
|
"Classic",
|
||||||
|
"TempFloatingWindow", --# implies LongTempFloatingWindow, which has no effect on its own
|
||||||
|
},
|
||||||
|
|
||||||
|
--# customize highlight groups (setting this overrides colorscheme)
|
||||||
|
snipruncolors = {
|
||||||
|
SniprunVirtualTextOk = { bg = "#66eeff", fg = "#000000", ctermbg = "Cyan", cterfg = "Black" },
|
||||||
|
SniprunFloatingWinOk = { fg = "#66eeff", ctermfg = "Cyan" },
|
||||||
|
SniprunVirtualTextErr = { bg = "#881515", fg = "#000000", ctermbg = "DarkRed", cterfg = "Black" },
|
||||||
|
SniprunFloatingWinErr = { fg = "#881515", ctermfg = "DarkRed" },
|
||||||
|
},
|
||||||
|
|
||||||
|
live_mode_toggle = "off", --# live mode toggle, see Usage - Running for more info
|
||||||
|
|
||||||
|
--# miscellaneous compatibility/adjustement settings
|
||||||
|
inline_messages = false, --# inline_message (0/1) is a one-line way to display messages
|
||||||
|
--# to workaround sniprun not being able to display anything
|
||||||
|
|
||||||
|
borders = "single", --# display borders around floating windows
|
||||||
|
--# possible values are 'none', 'single', 'double', or 'shadow'
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
9
.config/nvim/lua/plugins/spider.lua.bak
Normal file
9
.config/nvim/lua/plugins/spider.lua.bak
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"chrisgrieser/nvim-spider",
|
||||||
|
lazy = true,
|
||||||
|
config = function()
|
||||||
|
require("spider").setup({})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
|
@ -327,7 +327,6 @@ return {
|
||||||
{
|
{
|
||||||
"<leader>sSF",
|
"<leader>sSF",
|
||||||
Util.telescope("lsp_dynamic_workspace_symbols", {
|
Util.telescope("lsp_dynamic_workspace_symbols", {
|
||||||
|
|
||||||
symbols = {
|
symbols = {
|
||||||
"Field",
|
"Field",
|
||||||
},
|
},
|
||||||
|
|
|
@ -6,6 +6,10 @@ return {
|
||||||
enable = true,
|
enable = true,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
opts.endwise = {
|
||||||
|
enable = true,
|
||||||
|
}
|
||||||
|
|
||||||
vim.list_extend(opts.ensure_installed, {
|
vim.list_extend(opts.ensure_installed, {
|
||||||
"arduino",
|
"arduino",
|
||||||
"diff",
|
"diff",
|
||||||
|
|
|
@ -30,6 +30,7 @@ return {
|
||||||
["<leader>D"] = { name = "+database" },
|
["<leader>D"] = { name = "+database" },
|
||||||
["<leader>sS"] = { name = "+Goto Symbols (Workspace)" },
|
["<leader>sS"] = { name = "+Goto Symbols (Workspace)" },
|
||||||
["<leader>ss"] = { name = "+Goto Symbols" },
|
["<leader>ss"] = { name = "+Goto Symbols" },
|
||||||
|
["<leader>db"] = { name = "+Breakpoints" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
|
|
Loading…
Add table
Reference in a new issue