dotfiles/.config/nvim/lua/plugins/extras/lang/web/astro-extended.lua

51 lines
1.4 KiB
Lua

local inlay_hints_settings = {
parameterNames = { enabled = "all" },
parameterTypes = { enabled = true },
variableTypes = { enabled = true },
propertyDeclarationTypes = { enabled = true },
functionLikeReturnTypes = { enabled = true },
enumMemberValues = { enabled = true },
}
return {
{ import = "lazyvim.plugins.extras.lang.astro" },
{ import = "plugins.extras.lang.web.typescript-extended" },
{
"neovim/nvim-lspconfig",
opts = {
servers = {
astro = {
settings = {
typescript = {
updateImportsOnFileMove = { enabled = "always" },
inlayHints = inlay_hints_settings,
},
javascript = {
updateImportsOnFileMove = { enabled = "always" },
inlayHints = inlay_hints_settings,
},
},
handlers = {
["textDocument/publishDiagnostics"] = function(err, result, ctx, config)
require("ts-error-translator").translate_diagnostics(err, result, ctx, config)
vim.lsp.diagnostic.on_publish_diagnostics(err, result, ctx, config)
end,
},
},
},
},
},
{
"dmmulroy/ts-error-translator.nvim",
opts = {},
},
{
"luckasRanarison/nvim-devdocs",
optional = true,
opts = {
ensure_installed = {
"astro",
},
},
},
}