diff --git a/crates/languages/src/javascript/outline.scm b/crates/languages/src/javascript/outline.scm index ca16c27a27be3e1e09ced16cd2eef7aa28345f9e..8a58b6dc1b04b0b36f6155055bd8439bc2ddeca2 100644 --- a/crates/languages/src/javascript/outline.scm +++ b/crates/languages/src/javascript/outline.scm @@ -116,4 +116,26 @@ ) ) @item +; Arrow functions in variable declarations (anywhere in the tree, including nested in functions) +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function)) @item) + +; Async arrow functions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function + "async" @context)) @item) + +; Named function expressions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (function_expression)) @item) + (comment) @annotation diff --git a/crates/languages/src/tsx/outline.scm b/crates/languages/src/tsx/outline.scm index f4261b9697d376f517b717bc942387190e0b6dde..72efff9ab74155c626bd7b91ad1cf8b580431492 100644 --- a/crates/languages/src/tsx/outline.scm +++ b/crates/languages/src/tsx/outline.scm @@ -124,4 +124,26 @@ ) ) @item +; Arrow functions in variable declarations (anywhere in the tree, including nested in functions) +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function)) @item) + +; Async arrow functions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function + "async" @context)) @item) + +; Named function expressions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (function_expression)) @item) + (comment) @annotation diff --git a/crates/languages/src/typescript/outline.scm b/crates/languages/src/typescript/outline.scm index f4261b9697d376f517b717bc942387190e0b6dde..72efff9ab74155c626bd7b91ad1cf8b580431492 100644 --- a/crates/languages/src/typescript/outline.scm +++ b/crates/languages/src/typescript/outline.scm @@ -124,4 +124,26 @@ ) ) @item +; Arrow functions in variable declarations (anywhere in the tree, including nested in functions) +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function)) @item) + +; Async arrow functions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (arrow_function + "async" @context)) @item) + +; Named function expressions in variable declarations +(lexical_declaration + ["let" "const"] @context + (variable_declarator + name: (_) @name + value: (function_expression)) @item) + (comment) @annotation