From f13a70f1fcf8ea6c9c2c9c8b781d80c910a999b3 Mon Sep 17 00:00:00 2001 From: veypi Date: Tue, 15 Oct 2024 18:59:13 +0800 Subject: [PATCH] vue lsp --- lua/plugins/lsp.lua | 54 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 lua/plugins/lsp.lua diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua new file mode 100644 index 0000000..4b113bc --- /dev/null +++ b/lua/plugins/lsp.lua @@ -0,0 +1,54 @@ +return { + { + "nvim-treesitter/nvim-treesitter", + opts = { ensure_installed = { "vue", "css" } }, + }, + { + "williamboman/mason.nvim", + opts = { + ensure_installed = { + "bash-language-server", + "css-lsp", + "html-lsp", + "typescript-language-server", + "vue-language-server", + "gopls", + "vtsls", + "helm-ls", + "json-lsp", + "marksman", + }, + }, + }, + { + "neovim/nvim-lspconfig", + opts = { + servers = { + volar = { + init_options = { + vue = { + hybridMode = true, + }, + }, + }, + vtsls = { + filetypes = { "vue" } + }, + }, + }, + }, + { + "neovim/nvim-lspconfig", + opts = function(_, opts) + LazyVim.extend(opts.servers.vtsls, "settings.vtsls.tsserver.globalPlugins", { + { + name = "@vue/typescript-plugin", + location = LazyVim.get_pkg_path("vue-language-server", "/node_modules/@vue/language-server"), + languages = { "vue" }, + configNamespace = "typescript", + enableForWorkspaceTypeScriptVersions = true, + }, + }) + end, + } +}