config.nvim/lua/plugins.lua
2025-10-06 14:43:17 +02:00

121 lines
2.8 KiB
Lua

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup({
{ "gruvbox-community/gruvbox" },
{ "lewis6991/gitsigns.nvim" },
{ "tpope/vim-commentary" },
{ "tpope/vim-surround" },
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
opts = {
-- bigfile = { enabled = true },
-- dashboard = { enabled = true },
-- explorer = { enabled = true },
-- animate = { enabled = true },
explorer = { enabled = true },
indent = { enabled = true },
input = { enabled = true },
picker = { enabled = true },
-- notifier = { enabled = true },
-- quickfile = { enabled = true },
-- scope = { enabled = true },
scroll = { enabled = true },
statuscolumn = { enabled = true },
-- words = { enabled = true },
lazygit = { enabled = true },
},
},
{
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
},
{ "neovim/nvim-lspconfig" }, -- Required
{ -- Optional
"williamboman/mason.nvim",
build = function()
pcall(vim.cmd, "MasonUpdate")
end,
},
{ "williamboman/mason-lspconfig.nvim" }, -- Optional
{
"stevearc/conform.nvim",
},
-- Autocompletion
{ "hrsh7th/nvim-cmp" }, -- Required
{ "hrsh7th/cmp-nvim-lsp" }, -- Required
{ "L3MON4D3/LuaSnip" }, -- Required
-- roslyn
{
"seblyng/roslyn.nvim",
ft = "cs",
opts = {
-- your configuration comes here; leave empty for default settings
},
},
{
"stevearc/oil.nvim",
opts = {},
dependencies = { { "echasnovski/mini.icons", opts = {} } },
lazy = false,
},
{
"ThePrimeagen/harpoon",
branch = "harpoon2",
dependencies = { "nvim-lua/plenary.nvim" },
},
{
"iamcco/markdown-preview.nvim",
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
ft = { "markdown" },
build = function()
vim.fn["mkdp#util#install"]()
end,
},
{ "mhinz/vim-startify" },
{
"kristijanhusak/vim-dadbod-ui",
dependencies = {
{ "tpope/vim-dadbod", lazy = true },
{ "kristijanhusak/vim-dadbod-completion", ft = { "sql", "mysql", "plsql" }, lazy = true },
},
cmd = {
"DBUI",
"DBUIToggle",
"DBUIAddConnection",
"DBUIFindBuffer",
},
init = function()
-- Your DBUI configuration
vim.g.db_ui_use_nerd_fonts = 1
end,
},
{
"olimorris/codecompanion.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
}
},
}, opts)
local files = vim.split(vim.fn.globpath(vim.fn.stdpath("config") .. "/lua/plugin", "*.lua", true), "\n")
for _, f in ipairs(files) do
local name = vim.fn.fnamemodify(f, ":t:r")
require("plugin." .. name)
end