New nvim plugins

This commit is contained in:
Sergio Laín 2023-09-16 13:34:12 +02:00
parent 9fb173cd6f
commit dfd0e00c05
No known key found for this signature in database
GPG key ID: 14C9B8080681777B
13 changed files with 233 additions and 6 deletions

View file

@ -68,7 +68,14 @@ map(
map("n", "<leader>T", ":Telescope floaterm<CR>", { desc = "Terminals" }) map("n", "<leader>T", ":Telescope floaterm<CR>", { desc = "Terminals" })
map("n", "<leader>sz", ":Telescope zoxide list<CR>", { desc = "Zoxide" })
map("n", "<leader>sL", ":Telescope luasnip<CR>", { desc = "Snippets (Luasnip)" })
map("n", "<leader>sp", ":Telescope lazy<CR>", { desc = "Plugins (Lazy)" })
map("n", "<leader>si", ":Telescope import<CR>", { desc = "Imports" }) map("n", "<leader>si", ":Telescope import<CR>", { desc = "Imports" })
map( map(
"n", "n",
"<leader>ft", "<leader>ft",
@ -142,10 +149,6 @@ vim.api.nvim_set_keymap(
{ silent = true, noremap = true, desc = "Install New Dependency" } { silent = true, noremap = true, desc = "Install New Dependency" }
) )
vim.keymap.set({ "n", "x" }, "<leader>cR", function()
require("telescope").extensions.refactoring.refactors()
end, { noremap = true, silent = true, desc = "Refactor" })
vim.keymap.set("n", "<C-d>", "<C-d>zz") vim.keymap.set("n", "<C-d>", "<C-d>zz")
vim.keymap.set("n", "<C-u>", "<C-u>zz") vim.keymap.set("n", "<C-u>", "<C-u>zz")

View file

@ -0,0 +1,41 @@
return {
{
"tpope/vim-dadbod",
dependencies = {
"kristijanhusak/vim-dadbod-ui",
"kristijanhusak/vim-dadbod-completion",
},
opts = {
db_competion = function()
require("cmp").setup.buffer({ sources = { { name = "vim-dadbod-completion" } } })
end,
},
config = function(_, opts)
vim.g.db_ui_save_location = vim.fn.stdpath("config") .. require("plenary.path").path.sep .. "db_ui"
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
},
command = [[setlocal omnifunc=vim_dadbod_completion#omni]],
})
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
"mysql",
"plsql",
},
callback = function()
vim.schedule(opts.db_completion)
end,
})
end,
keys = {
{ "<leader>Dt", "<cmd>DBUIToggle<cr>", desc = "Toggle UI" },
{ "<leader>Df", "<cmd>DBUIFindBuffer<cr>", desc = "Find Buffer" },
{ "<leader>Dr", "<cmd>DBUIRenameBuffer<cr>", desc = "Rename Buffer" },
{ "<leader>Dq", "<cmd>DBUILastQueryInfo<cr>", desc = "Last Query Info" },
},
},
}

View file

@ -0,0 +1,39 @@
return {
{
"luckasRanarison/nvim-devdocs",
cmd = {
"DevdocsFetch",
"DevdocsInstall",
"DevdocsUninstall",
"DevdocsOpen",
"DevdocsOpenFloat",
"DevdocsOpenCurrent",
"DevdocsOpenCurrentFloat",
"DevdocsUpdate",
"DevdocsUpdateAll",
},
opts = {
ensure_installed = {
"css",
"html",
"javascript",
"lua-5.4",
"python-3.11",
"react",
"typescript",
"angular",
"bash",
"fish-3.6",
"git",
"go",
"rust",
"sass",
"vue-3",
"docker",
"markdown",
"svelte",
"tailwindcss",
},
},
},
}

View file

@ -0,0 +1,17 @@
return {
{
"ThePrimeagen/git-worktree.nvim",
opts = {},
config = function()
require("telescope").load_extension("git_worktree")
end,
dependencies = {
"nvim-telescope/telescope.nvim",
},
--stylua: ignore
keys = {
{"<leader>gwm", function() require("telescope").extensions.git_worktree.git_worktrees() end, desc = "Manage Worktrees"},
{"<leader>gwc", function() require("telescope").extensions.git_worktree.create_git_worktree() end, desc = "Create Worktree"},
},
},
}

View file

@ -0,0 +1,25 @@
return {
{
"ThePrimeagen/harpoon",
--stylua: ignore
keys = {
{ "<leader>'", function() require("harpoon.mark").add_file() end, desc = "Add File" },
{ "<leader>0", "<cmd>Telescope harpoon marks<CR>", desc = "Harpoon" },
{ "<leader>1", function() require("harpoon.ui").nav_file(1) end, desc = "File 1" },
{ "<leader>2", function() require("harpoon.ui").nav_file(2) end, desc = "File 2" },
{ "<leader>3", function() require("harpoon.ui").nav_file(3) end, desc = "File 3" },
{ "<leader>4", function() require("harpoon.ui").nav_file(4) end, desc = "File 4" },
{ "<leader>5", function() require("harpoon.ui").nav_file(5) end, desc = "File 5" },
{ "<leader>6", function() require("harpoon.ui").nav_file(6) end, desc = "File 6" },
},
opts = {
globalsettings = {
save_on_toggle = true,
enter_on_sendcmd = true,
},
},
setup = function()
require("telescope").load_extension("harpoon")
end,
},
}

View file

@ -1,7 +1,6 @@
return { return {
{ {
"ThePrimeagen/refactoring.nvim", "ThePrimeagen/refactoring.nvim",
event = "BufRead",
requires = { requires = {
{ "nvim-lua/plenary.nvim" }, { "nvim-lua/plenary.nvim" },
{ "nvim-treesitter/nvim-treesitter" }, { "nvim-treesitter/nvim-treesitter" },
@ -9,5 +8,19 @@ return {
config = function() config = function()
require("refactoring").setup() require("refactoring").setup()
end, end,
-- stylua: ignore
keys = {
{ "<leader>Rs", function() require("telescope").extensions.refactoring.refactors() end, mode = { "v" }, desc = "Refactor Options", },
{ "<leader>cRi", function() require("refactoring").refactor("Inline Variable") end, mode = {"n","v"}, desc = "Inline Variable" },
{ "<leader>cRb", function() require('refactoring').refactor('Exract Block') end, mode = {"n"}, desc = "Extract Block" },
{ "<leader>cRf", function() require('refactoring').refactor('Exract Block To File') end, mode = {"n"}, desc = "Extract Block to File" },
{ "<leader>cRP", function() require('refactoring').debug.printf({below = false}) end, mode = {"n"}, desc = "Debug Print" },
{ "<leader>cRp", function() require('refactoring').debug.print_var({normal = true}) end, mode = {"n"}, desc = "Debug Print Variable" },
{ "<leader>cRc", function() require('refactoring').debug.cleanup({}) end, mode = {"n"}, desc = "Debug Cleanup" },
{ "<leader>cRf", function() require('refactoring').refactor('Extract Function') end, mode = {"v"}, desc = "Extract Function" },
{ "<leader>cRF", function() require('refactoring').refactor('Extract Function to File') end, mode = {"v"}, desc = "Extract Function to File" },
{ "<leader>cRx", function() require('refactoring').refactor('Extract Variable') end, mode = {"v"}, desc = "Extract Variable" },
{ "<leader>cRp", function() require('refactoring').debug.print_var({}) end, mode = {"v"}, desc = "Debug Print Variable" },
},
}, },
} }

View file

@ -0,0 +1,9 @@
return {
{
"tsakirist/telescope-lazy.nvim",
event = "VeryLazy",
config = function()
require("telescope").load_extension("lazy")
end,
},
}

View file

@ -0,0 +1,9 @@
return {
{
"benfowler/telescope-luasnip.nvim",
event = "VeryLazy",
config = function()
require("telescope").load_extension("luasnip")
end,
},
}

View file

@ -0,0 +1,9 @@
return {
{
"jvgrootveld/telescope-zoxide",
event = "VeryLazy",
config = function()
require("telescope").load_extension("zoxide")
end,
},
}

View file

@ -0,0 +1,47 @@
return {
{
"kevinhwang91/nvim-ufo",
dependencies = {
"kevinhwang91/promise-async",
{
"luukvbaal/statuscol.nvim",
config = function()
local builtin = require("statuscol.builtin")
require("statuscol").setup({
relculright = true,
segments = {
{ text = { builtin.foldfunc }, click = "v:lua.ScFa" },
{ text = { "%s" }, click = "v:lua.ScSa" },
{ text = { builtin.lnumfunc, " " }, click = "v:lua.ScLa" },
},
})
end,
},
},
--stylua: ignore
keys = {
{ "zc" },
{ "zo" },
{ "zC" },
{ "zO" },
{ "za" },
{ "zA" },
{ "zr", function() require("ufo").openFoldsExceptKinds() end, desc = "Open Folds Except Kinds", },
{ "zR", function() require("ufo").openAllFolds() end, desc = "Open All Folds", },
{ "zM", function() require("ufo").closeAllFolds() end, desc = "Close All Folds", },
{ "zm", function() require("ufo").closeFoldsWith() end, desc = "Close Folds With", },
{ "zp", function()
local winid = require('ufo').peekFoldedLinesUnderCursor()
if not winid then
vim.lsp.buf.hover()
end
end, desc = "Peek Fold", },
},
opts = {
fold_virt_text_handler = handler,
},
config = function(_, opts)
require("ufo").setup(opts)
end,
},
}

View file

@ -0,0 +1,12 @@
return {
{
"axieax/urlview.nvim",
cmd = { "UrlView" },
keys = { { "<leader>su", "<cmd>UrlView<cr>", desc = "Search Urls" } },
config = function()
require("urlview").setup({
default_picker = "telescope",
})
end,
},
}

View file

@ -25,6 +25,9 @@ return {
["<leader>cc"] = { name = "+compile" }, ["<leader>cc"] = { name = "+compile" },
["<leader>cp"] = { name = "+packages" }, ["<leader>cp"] = { name = "+packages" },
["<leader>gd"] = { name = "+diff" }, ["<leader>gd"] = { name = "+diff" },
["<leader>gw"] = { name = "+worktrees" },
["<leader>cR"] = { name = "+refactor" },
["<leader>D"] = { name = "+database" },
}, },
}, },
config = function(_, opts) config = function(_, opts)

2
.gitignore vendored
View file

@ -1 +1 @@
~/.config/nvim/lazy-lock.json .config/nvim/lazy-lock.json