mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-03 12:06:55 -04:00
fix: expand tiers in ignore_install
This commit is contained in:
parent
49dd75859f
commit
ba05f949b8
1 changed files with 17 additions and 13 deletions
|
|
@ -91,14 +91,12 @@ end
|
|||
function M.norm_languages(languages, skip)
|
||||
if not languages then
|
||||
return {}
|
||||
end
|
||||
local parsers = require('nvim-treesitter.parsers')
|
||||
|
||||
-- Turn into table
|
||||
if type(languages) == 'string' then
|
||||
elseif type(languages) == 'string' then
|
||||
languages = { languages }
|
||||
end
|
||||
|
||||
local parsers = require('nvim-treesitter.parsers')
|
||||
|
||||
if vim.list_contains(languages, 'all') then
|
||||
if skip and skip.missing then
|
||||
return M.installed_parsers()
|
||||
|
|
@ -107,18 +105,24 @@ function M.norm_languages(languages, skip)
|
|||
end
|
||||
--TODO(clason): skip and warn on unavailable parser
|
||||
|
||||
for i, tier in ipairs(parsers.tiers) do
|
||||
if vim.list_contains(languages, tier) then
|
||||
languages = vim.iter.filter(function(l)
|
||||
return l ~= tier
|
||||
end, languages) --[[@as string[] ]]
|
||||
vim.list_extend(languages, parsers.get_available(i))
|
||||
-- keep local to avoid leaking parsers module
|
||||
local function expand_tiers(list)
|
||||
for i, tier in ipairs(parsers.tiers) do
|
||||
if vim.list_contains(list, tier) then
|
||||
list = vim.iter.filter(function(l)
|
||||
return l ~= tier
|
||||
end, list) --[[@as string[] ]]
|
||||
vim.list_extend(list, parsers.get_available(i))
|
||||
end
|
||||
end
|
||||
|
||||
return list
|
||||
end
|
||||
|
||||
--TODO(clason): support skipping tiers
|
||||
languages = expand_tiers(languages)
|
||||
|
||||
if skip and skip.ignored then
|
||||
local ignored = config.ignore_install
|
||||
local ignored = expand_tiers(config.ignore_install)
|
||||
languages = vim.iter.filter(function(v)
|
||||
return not vim.list_contains(ignored, v)
|
||||
end, languages) --[[@as string[] ]]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue