diff --git a/lua/lazyvim/plugins/extras/lang/typescript.lua b/lua/lazyvim/plugins/extras/lang/typescript.lua index 74fa1a9e..d00443ad 100644 --- a/lua/lazyvim/plugins/extras/lang/typescript.lua +++ b/lua/lazyvim/plugins/extras/lang/typescript.lua @@ -108,18 +108,21 @@ return { -- disable tsserver return true end, + vtsls = function(_, opts) + -- copy typescript settings to javascript + opts.settings.javascript = + vim.tbl_deep_extend("force", {}, opts.settings.typescript, opts.settings.javascript or {}) + local plugins = vim.tbl_get(opts.settings, "vtsls", "tsserver", "globalPlugins") + -- allow plugins to have a key for proper merging + -- remove the key here + if plugins then + opts.settings.vtsls.tsserver.globalPlugins = vim.tbl_values(plugins) + end + end, }, }, }, - { - "neovim/nvim-lspconfig", - opts = function(_, opts) - -- copy typescript settings to javascript - opts.servers.vtsls.settings.javascript = vim.deepcopy(opts.servers.vtsls.settings.typescript) - end, - }, - { "mfussenegger/nvim-dap", optional = true, diff --git a/lua/lazyvim/plugins/extras/lang/vue.lua b/lua/lazyvim/plugins/extras/lang/vue.lua index 36bac9a2..dfc1d2f7 100644 --- a/lua/lazyvim/plugins/extras/lang/vue.lua +++ b/lua/lazyvim/plugins/extras/lang/vue.lua @@ -32,7 +32,7 @@ return { tsserver = { globalPlugins = { -- Use typescript language server along with vue typescript plugin - { + vue = { name = "@vue/typescript-plugin", location = vue_typescript_plugin, languages = { "vue" },