From 32870d2f207536bb7932beeb2e0ec9a4e0146560 Mon Sep 17 00:00:00 2001 From: Yuan Fu Date: Sun, 20 Nov 2022 16:56:33 -0800 Subject: Limit recursion level for tree-sitter imenu functions Generating imenu index doesn't require going down to the bottom of the tree (defun's are usually top-level). Add limit so we don't go too far down on very large buffers. * lisp/progmodes/c-ts-mode.el (c-ts-mode--imenu) * lisp/progmodes/java-ts-mode.el (java-ts-mode--imenu) * lisp/progmodes/js.el (js--treesit-imenu) * lisp/progmodes/json-ts-mode.el (json-ts-mode--imenu) * lisp/progmodes/python.el (python-imenu-treesit-create-index) * lisp/textmodes/css-mode.el (css--treesit-imenu): Add limit to treesit-induce-sparse-tree. --- lisp/progmodes/python.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lisp/progmodes/python.el') diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 2f967ebab24..c49af223c66 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -5492,7 +5492,8 @@ Similar to `python-imenu-create-index' but use tree-sitter." (rx (seq bol (or "function" "class") "_definition" - eol))))) + eol)) + nil 1000))) (python--imenu-treesit-create-index-1 tree))) (defun python-imenu-treesit-create-flat-index () -- cgit v1.2.1