fix(nvim-treesitter): fix install on startup

This commit is contained in:
2026-02-28 10:09:20 +01:00
parent feee9b1f10
commit a5cd2265c4
+25 -17
View File
@@ -23,7 +23,7 @@ local languages = {
"markdown", "markdown",
"go", "go",
"svelte", "svelte",
"scss", { "scss", extra_ft = { "css" } },
"tsx", "tsx",
"typescript", "typescript",
} }
@@ -44,24 +44,32 @@ return {
}, },
config = function() config = function()
local ts = require("nvim-treesitter") local ts = require("nvim-treesitter")
ts.install(languages):wait(300000) ts.install(languages):await(function()
local filetypes = {}
local filetypes = {} for i, value in ipairs(languages) do
for _, lang in ipairs(languages) do local lang = value
for _, ft in ipairs(vim.treesitter.language.get_filetypes(lang)) do if type(value) == "table" then
if not vim.list_contains(filetypes, ft) then lang = value[1]
table.insert(filetypes, ft) for _, ft in ipairs(value.extra_ft) do
vim.treesitter.language.register(lang, ft)
end
filetypes[i] = lang
end
for _, ft in ipairs(vim.treesitter.language.get_filetypes(lang)) do
if not vim.list_contains(filetypes, ft) then
table.insert(filetypes, ft)
end
end end
end end
end
vim.api.nvim_create_autocmd("FileType", { vim.api.nvim_create_autocmd("FileType", {
pattern = filetypes, pattern = filetypes,
callback = function() callback = function()
vim.treesitter.start() vim.treesitter.start()
vim.wo.foldmethod = "expr" vim.wo.foldmethod = "expr"
vim.wo.foldexpr = "v:lua.vim.treesitter.foldexpr()" vim.wo.foldexpr = "v:lua.vim.treesitter.foldexpr()"
end, end,
}) })
end)
end, end,
} }