neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit b0bbe25c4808158e8c806959e4d185244073647a
parent 36f44b3121fcdcb6532d77389b59c4e1b7382ac4
Author: Riley Bruins <ribru17@hotmail.com>
Date:   Sat, 15 Feb 2025 16:54:28 -0800

fix(treesitter): don't spam query errors in the highlighter

**Problem:** An erroneous query in the treesitter highlighter gives a
deluge of errors that makes the editor almost unusable.

**Solution:** Detach the highlighter after an error is detected, so that
it only gets displayed once (per highlighter instance).

Diffstat:
Mruntime/lua/vim/treesitter/highlighter.lua | 7++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/runtime/lua/vim/treesitter/highlighter.lua b/runtime/lua/vim/treesitter/highlighter.lua @@ -232,7 +232,12 @@ end ---@return vim.treesitter.highlighter.Query function TSHighlighter:get_query(lang) if not self._queries[lang] then - self._queries[lang] = TSHighlighterQuery.new(lang) + local success, result = pcall(TSHighlighterQuery.new, lang) + if not success then + self:destroy() + error(result) + end + self._queries[lang] = result end return self._queries[lang]