194 lines
4.4 KiB
Lua
194 lines
4.4 KiB
Lua
|
local cmp = require "cmp"
|
||
|
|
||
|
local plugins = {
|
||
|
{
|
||
|
'numToStr/Comment.nvim',
|
||
|
lazy = false,
|
||
|
},
|
||
|
{
|
||
|
"simrat39/rust-tools.nvim",
|
||
|
ft = "rust",
|
||
|
dependencies = "neovim/nvim-lspconfig",
|
||
|
opts = function ()
|
||
|
return require "custom.configs.rust-tools"
|
||
|
end,
|
||
|
config = function(_, opts)
|
||
|
require('rust-tools').setup(opts)
|
||
|
end
|
||
|
},
|
||
|
{
|
||
|
'saecki/crates.nvim',
|
||
|
ft = {"toml"},
|
||
|
config = function(_, opts)
|
||
|
local crates = require('crates')
|
||
|
crates.setup(opts)
|
||
|
require('cmp').setup.buffer({
|
||
|
sources = { { name = "crates" }}
|
||
|
})
|
||
|
crates.show()
|
||
|
require("core.utils").load_mappings("crates")
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"rust-lang/rust.vim",
|
||
|
ft = "rust",
|
||
|
init = function ()
|
||
|
vim.g.rustfmt_autosave = 1
|
||
|
end
|
||
|
},
|
||
|
{
|
||
|
"theHamsta/nvim-dap-virtual-text",
|
||
|
lazy = false,
|
||
|
config = function(_, opts)
|
||
|
require("nvim-dap-virtual-text").setup()
|
||
|
end
|
||
|
},
|
||
|
{
|
||
|
"hrsh7th/nvim-cmp",
|
||
|
opts = function()
|
||
|
local M = require "plugins.configs.cmp"
|
||
|
M.completion.completeopt = "menu,menuone,noselect"
|
||
|
M.mapping["<CR>"] = cmp.mapping.confirm {
|
||
|
behavior = cmp.ConfirmBehavior.Insert,
|
||
|
select = false,
|
||
|
}
|
||
|
table.insert(M.sources, {name = "crates"})
|
||
|
return M
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"m4xshen/hardtime.nvim",
|
||
|
dependencies = { "MunifTanjim/nui.nvim", "nvim-lua/plenary.nvim" },
|
||
|
cmd = { "Hardtime" },
|
||
|
opts = {}
|
||
|
},
|
||
|
{
|
||
|
"folke/todo-comments.nvim",
|
||
|
event = "BufReadPost",
|
||
|
dependencies = { "nvim-lua/plenary.nvim" },
|
||
|
config = function()
|
||
|
require "custom.configs.todo"
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"RRethy/vim-illuminate",
|
||
|
event = { "CursorHold", "CursorHoldI" },
|
||
|
config = function()
|
||
|
require "custom.configs.illuminate"
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"hiphish/rainbow-delimiters.nvim",
|
||
|
event = "BufReadPost",
|
||
|
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,
|
||
|
},
|
||
|
{
|
||
|
"rcarriga/nvim-dap-ui",
|
||
|
event = "VeryLazy",
|
||
|
dependencies = "mfussenegger/nvim-dap",
|
||
|
config = function()
|
||
|
local dap = require("dap")
|
||
|
local dapui = require("dapui")
|
||
|
dapui.setup()
|
||
|
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
|
||
|
},
|
||
|
{
|
||
|
"jay-babu/mason-nvim-dap.nvim",
|
||
|
event = "VeryLazy",
|
||
|
dependencies = {
|
||
|
"williamboman/mason.nvim",
|
||
|
"mfussenegger/nvim-dap",
|
||
|
},
|
||
|
opts = {
|
||
|
handlers = {}
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
"mfussenegger/nvim-dap",
|
||
|
config = function (_,opts)
|
||
|
require("core.utils").load_mappings("dap")
|
||
|
end
|
||
|
},
|
||
|
{
|
||
|
"mfussenegger/nvim-dap-python",
|
||
|
ft = "python",
|
||
|
dependencies = {
|
||
|
"mfussenegger/nvim-dap",
|
||
|
"rcarriga/nvim-dap-ui"
|
||
|
},
|
||
|
config = function (_,opts)
|
||
|
local path = "~/.local/share/nvim/mason/packages/debugpy/venv/bin/python"
|
||
|
require("dap-python").setup(path)
|
||
|
require("core.utils").load_mappings("dap_python")
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"jose-elias-alvarez/null-ls.nvim",
|
||
|
event = "VeryLazy",
|
||
|
opts = function()
|
||
|
return require "custom.configs.null-ls"
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"neovim/nvim-lspconfig",
|
||
|
config = function ()
|
||
|
require "plugins.configs.lspconfig"
|
||
|
require "custom.configs.lspconfig"
|
||
|
end
|
||
|
},
|
||
|
{
|
||
|
"nvim-treesitter",
|
||
|
opts = {
|
||
|
ensure_installed = {
|
||
|
"ocaml",
|
||
|
"python",
|
||
|
"rust",
|
||
|
"css",
|
||
|
"html",
|
||
|
"dockerfile",
|
||
|
"gitignore",
|
||
|
"typescript",
|
||
|
"nix",
|
||
|
"rust",
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"theRealCarneiro/hyprland-vim-syntax",
|
||
|
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
||
|
ft = "hypr",
|
||
|
},
|
||
|
}
|
||
|
return plugins
|