aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/doc/treesitter.txt4
-rw-r--r--runtime/lua/vim/treesitter/languagetree.lua2
2 files changed, 5 insertions, 1 deletions
diff --git a/runtime/doc/treesitter.txt b/runtime/doc/treesitter.txt
index 6286924f10..d87439a1e0 100644
--- a/runtime/doc/treesitter.txt
+++ b/runtime/doc/treesitter.txt
@@ -572,6 +572,10 @@ associated with patterns:
• `injection.parent` - indicates that the captured node’s text should
be parsed with the same language as the node's parent LanguageTree.
+Injection queries are currently run over the entire buffer, which can be slow
+for large buffers. To disable injections for, e.g., `c`, just place an
+empty `queries/c/injections.scm` file in your 'runtimepath'.
+
==============================================================================
VIM.TREESITTER *lua-treesitter*
diff --git a/runtime/lua/vim/treesitter/languagetree.lua b/runtime/lua/vim/treesitter/languagetree.lua
index ecace67419..5e1156fa68 100644
--- a/runtime/lua/vim/treesitter/languagetree.lua
+++ b/runtime/lua/vim/treesitter/languagetree.lua
@@ -953,7 +953,7 @@ end
--- @private
--- @return table<string, Range6[][]>
function LanguageTree:_get_injections()
- if not self._injection_query then
+ if not self._injection_query or #self._injection_query.captures == 0 then
return {}
end