2023-12-31 00:10:56 +02:00

98 lines
2.9 KiB
Lua

return {
"b0o/SchemaStore.nvim",
{
"folke/neodev.nvim",
opts = {
override = function(root_dir, library)
for _, astronvim_config in ipairs(astronvim.supported_configs) do
if root_dir:match(astronvim_config) then
library.plugins = true
break
end
end
vim.b.neodev_enabled = library.enabled
end,
},
},
{
"neovim/nvim-lspconfig",
dependencies = {
{
"folke/neoconf.nvim",
opts = function()
local global_settings, file_found
local _, depth = vim.fn.stdpath("config"):gsub("/", "")
for _, dir in ipairs(astronvim.supported_configs) do
dir = dir .. "/lua/user"
if vim.fn.isdirectory(dir) == 1 then
local path = dir .. "/neoconf.json"
if vim.fn.filereadable(path) == 1 then
file_found = true
global_settings = path
elseif not file_found then
global_settings = path
end
end
end
return { global_settings = global_settings and string.rep("../", depth):sub(1, -2) .. global_settings }
end,
},
{
"williamboman/mason-lspconfig.nvim",
cmd = { "LspInstall", "LspUninstall" },
opts = function(_, opts)
if not opts.handlers then opts.handlers = {} end
opts.handlers[1] = function(server) require("astronvim.utils.lsp").setup(server) end
end,
config = require "plugins.configs.mason-lspconfig",
},
},
cmd = function(_, cmds) -- HACK: lazy load lspconfig on `:Neoconf` if neoconf is available
if require("astronvim.utils").is_available "neoconf.nvim" then table.insert(cmds, "Neoconf") end
end,
event = "User AstroFile",
config = require "plugins.configs.lspconfig",
},
{
"jose-elias-alvarez/null-ls.nvim",
dependencies = {
{
"jay-babu/mason-null-ls.nvim",
cmd = { "NullLsInstall", "NullLsUninstall" },
opts = { handlers = {} },
},
},
event = "User AstroFile",
opts = function() return { on_attach = require("astronvim.utils.lsp").on_attach } end,
},
{
"stevearc/aerial.nvim",
event = "User AstroFile",
opts = {
attach_mode = "global",
backends = { "lsp", "treesitter", "markdown", "man" },
disable_max_lines = vim.g.max_file.lines,
disable_max_size = vim.g.max_file.size,
layout = { min_width = 28 },
show_guides = true,
filter_kind = false,
guides = {
mid_item = "",
last_item = "",
nested_top = "",
whitespace = " ",
},
keymaps = {
["[y"] = "actions.prev",
["]y"] = "actions.next",
["[Y"] = "actions.prev_up",
["]Y"] = "actions.next_up",
["{"] = false,
["}"] = false,
["[["] = false,
["]]"] = false,
},
},
},
}