diff options
author | Christian Clason <c.clason@uni-graz.at> | 2024-04-28 16:27:47 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-28 16:27:47 +0200 |
commit | 26b5405d181e8c9e75c4b4ec9aae963cc25f285f (patch) | |
tree | 94526234bb67a08a6d2708f05a7579cc3301773f /runtime/lua/vim/treesitter/language.lua | |
parent | 4625394a767fab311f75ef40f4f15c661156e071 (diff) | |
download | rneovim-26b5405d181e8c9e75c4b4ec9aae963cc25f285f.tar.gz rneovim-26b5405d181e8c9e75c4b4ec9aae963cc25f285f.tar.bz2 rneovim-26b5405d181e8c9e75c4b4ec9aae963cc25f285f.zip |
fix(treesitter): enforce lowercase language names (#28546)
* fix(treesitter): enforce lowercase language names
Problem: On case-insensitive file systems (e.g., macOS), `has_parser`
will return `true` for uppercase aliases, which will then try to inject
the uppercase language unsuccessfully.
Solution: Enforce and assume parser names to be lowercase when
resolving language names.
Diffstat (limited to 'runtime/lua/vim/treesitter/language.lua')
-rw-r--r-- | runtime/lua/vim/treesitter/language.lua | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/runtime/lua/vim/treesitter/language.lua b/runtime/lua/vim/treesitter/language.lua index 47abf65332..d0a74daa6c 100644 --- a/runtime/lua/vim/treesitter/language.lua +++ b/runtime/lua/vim/treesitter/language.lua @@ -88,6 +88,9 @@ function M.add(lang, opts) filetype = { filetype, { 'string', 'table' }, true }, }) + -- parser names are assumed to be lowercase (consistent behavior on case-insensitive file systems) + lang = lang:lower() + if vim._ts_has_language(lang) then M.register(lang, filetype) return |