aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-03-10 10:12:57 +0000
committerLewis Russell <lewis6991@gmail.com>2023-03-10 10:41:19 +0000
commitadfa9de8ebc4bce96d212280eccddc0306d1b013 (patch)
tree81ffaf3d96160e7779e23c895788046820c2c8cd
parent4f75960660f9065214f49ba6ed9176e0a72fa92a (diff)
downloadrneovim-adfa9de8ebc4bce96d212280eccddc0306d1b013.tar.gz
rneovim-adfa9de8ebc4bce96d212280eccddc0306d1b013.tar.bz2
rneovim-adfa9de8ebc4bce96d212280eccddc0306d1b013.zip
fix(treesitter): do not error on empty filetype
Ignore instead
-rw-r--r--runtime/lua/vim/treesitter/language.lua14
-rw-r--r--test/functional/treesitter/language_spec.lua5
2 files changed, 3 insertions, 16 deletions
diff --git a/runtime/lua/vim/treesitter/language.lua b/runtime/lua/vim/treesitter/language.lua
index 5f34d9cd56..47375fd5e6 100644
--- a/runtime/lua/vim/treesitter/language.lua
+++ b/runtime/lua/vim/treesitter/language.lua
@@ -60,16 +60,6 @@ function M.add(lang, opts)
filetype = { filetype, { 'string', 'table' }, true },
})
- if filetype == '' then
- error(string.format("'%s' is not a valid filetype", filetype))
- elseif type(filetype) == 'table' then
- for _, f in ipairs(filetype) do
- if f == '' then
- error(string.format("'%s' is not a valid filetype", filetype))
- end
- end
- end
-
M.register(lang, filetype or lang)
if vim._ts_has_language(lang) then
@@ -109,7 +99,9 @@ function M.register(lang, filetype)
end
for _, f in ipairs(filetypes) do
- ft_to_lang[f] = lang
+ if f ~= '' then
+ ft_to_lang[f] = lang
+ end
end
end
diff --git a/test/functional/treesitter/language_spec.lua b/test/functional/treesitter/language_spec.lua
index 747aea54b7..48e7b4b018 100644
--- a/test/functional/treesitter/language_spec.lua
+++ b/test/functional/treesitter/language_spec.lua
@@ -36,11 +36,6 @@ describe('treesitter language API', function()
pcall_err(exec_lua, 'vim.treesitter.add("/foo/")'))
end)
- it('shows error for invalid filetype', function()
- eq('.../language.lua:0: \'\' is not a valid filetype',
- pcall_err(exec_lua, [[vim.treesitter.add('foo', { filetype = '' })]]))
- end)
-
it('inspects language', function()
local keys, fields, symbols = unpack(exec_lua([[
local lang = vim.treesitter.inspect_language('c')