feat(nvim): add nvm node to PATH in mason and configure ts_ls watchOptions

This commit is contained in:
Oliver
2026-03-13 15:11:34 +01:00
parent 3e8fbea56c
commit 768a1d8d43

View File

@@ -122,6 +122,12 @@ return {
init = function()
-- Do not crowd home directory with NPM cache folder
vim.env.npm_config_cache = vim.env.HOME .. "/.cache/npm"
-- Ensure nvm node is in PATH for LSP servers
local nvm_node = vim.env.HOME .. "/.nvm/versions/node/v22.14.0/bin"
if vim.fn.isdirectory(nvm_node) == 1 and not vim.env.PATH:find(nvm_node, 1, true) then
vim.env.PATH = nvm_node .. ":" .. vim.env.PATH
end
end,
opts = {
ui = {
@@ -202,6 +208,23 @@ return {
},
},
},
workspace_folders = {
{
name = "root",
uri = vim.uri_from_fname(vim.fn.getcwd()),
},
},
on_new_config = function(config, root_dir)
config.settings = config.settings or {}
config.settings.typescript = config.settings.typescript or {}
config.settings.typescript.tsserver = config.settings.typescript.tsserver or {}
config.settings.typescript.tsserver.watchOptions = {
excludeDirectories = {
"**/node_modules",
"**/.git",
},
}
end,
})
vim.lsp.enable("ts_ls")
@@ -219,6 +242,14 @@ return {
format = {
enable = true,
},
files = {
exclude = {
"**/.git/**",
"**/node_modules/**",
"**/vendor/**/{Tests,tests}/**",
"**/.history/**",
},
},
},
},
})