From 1ad3bf6807d8c822d284682b6c46013b1418fb0c Mon Sep 17 00:00:00 2001 From: Andreas Arvidsson Date: Mon, 21 Sep 2026 14:16:18 +0200 Subject: [PATCH] Implemented capture group syntax for Tree sitter queries --- .../contributing/tree-sitter-query-syntax.md | 17 ++-- .../TreeSitterQuery/TreeSitterQuery.ts | 2 +- .../TreeSitterQuery/captureAliases.test.ts | 47 +++++++++-- .../TreeSitterQuery/captureAliases.ts | 82 ------------------ .../languages/TreeSitterQuery/captureGroup.ts | 39 +++++++++ .../languages/TreeSitterQuery/captureNames.ts | 8 +- .../validateQueryCaptures.test.ts | 69 +++++++++++++-- resources/queries/c.scm | 48 +++++------ resources/queries/clojure.scm | 24 +++--- resources/queries/cpp.scm | 8 +- resources/queries/csharp.scm | 70 ++++++++-------- resources/queries/css.scm | 24 +++--- resources/queries/dart.scm | 44 +++++----- resources/queries/go.scm | 50 +++++------ resources/queries/html.scm | 35 +++----- resources/queries/java.scm | 70 ++++++++-------- resources/queries/javascript.core.scm | 78 ++++++++--------- resources/queries/javascript.jsx.scm | 31 +++---- resources/queries/javascript.scm | 2 +- resources/queries/json.scm | 4 +- resources/queries/kotlin.scm | 62 +++++++------- resources/queries/latex.scm | 17 ++-- resources/queries/lua.scm | 14 ++-- resources/queries/markdown.scm | 26 +++--- resources/queries/php.scm | 62 +++++++------- resources/queries/properties.scm | 2 +- resources/queries/python.scm | 82 +++++++++--------- resources/queries/r.scm | 26 +++--- resources/queries/ruby.scm | 80 +++++++++--------- resources/queries/rust.scm | 71 ++++++++-------- resources/queries/scala.scm | 56 ++++++------- resources/queries/scm.name.scm | 8 +- resources/queries/scm.scm | 14 ++-- resources/queries/scss.scm | 22 ++--- resources/queries/shellscript.scm | 63 ++++++-------- resources/queries/swift.scm | 83 +++++++------------ resources/queries/talon-list.scm | 6 +- resources/queries/talon.scm | 28 +++---- resources/queries/typescript.core.scm | 54 ++++++------ resources/queries/typescript.scm | 4 +- resources/queries/xml.scm | 14 ++-- 41 files changed, 760 insertions(+), 786 deletions(-) delete mode 100644 packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.ts create mode 100644 packages/lib-engine/src/languages/TreeSitterQuery/captureGroup.ts diff --git a/packages/app-web-docs/src/docs/contributing/tree-sitter-query-syntax.md b/packages/app-web-docs/src/docs/contributing/tree-sitter-query-syntax.md index 06e5f64824..6a84c5ae29 100644 --- a/packages/app-web-docs/src/docs/contributing/tree-sitter-query-syntax.md +++ b/packages/app-web-docs/src/docs/contributing/tree-sitter-query-syntax.md @@ -19,24 +19,21 @@ In addition to the above aspects, you can also use the following inline operator - `@foo.start` and `@foo.end` to construct the scope using a range between two nodes (inclusive). - `@foo.startOf` and `@foo.endOf` to refer to the start and end positions of a node. For example, you could use `@foo.start.endOf` to indicate that the scope should start at the end of the node. -## Iteration capture aliases +## Capture groups -Use these aliases when several scopes share an iteration range: +Use `@G_` followed by at least two underscore-separated scope names to give the same capture to multiple scopes. For example, `@G_value_name_namedFunction` expands to `@value`, `@name`, and `@namedFunction`. The `G_` prefix is discarded. Every scope name in the group must be valid. -- `@statementNameValue.iteration` expands to `@statement.iteration`, - `@name.iteration`, and `@value.iteration`. -- `@statementNameValueType.iteration` expands to the same captures plus - `@type.iteration`, for languages and contexts that need type iteration. - -Both aliases support `.domain`, `.start.endOf`, `.end.startOf`, and `.end.endOf`. For example, a Java block can share iteration boundaries without repeating the pattern for each scope: +A dot suffix applies to every scope in the group. For example, `@G_value_name_namedFunction.start` expands to `@value.start`, `@name.start`, and `@namedFunction.start`. This also works with relationships and inline operators. A Java block can share iteration boundaries without repeating the capture for each scope: ```scm (_ - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ``` +Predicates refer to the group capture and apply their changes to every expanded capture. + ## Query predicate operators We also support a number of query predicate operators for modifying the scope. See [`queryPredicateOperators.ts`](../../../../../packages/lib-engine/src/languages/TreeSitterQuery/queryPredicateOperators.ts) for a list of available operators. diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/TreeSitterQuery.ts b/packages/lib-engine/src/languages/TreeSitterQuery/TreeSitterQuery.ts index 821ec670f0..49d2510b21 100644 --- a/packages/lib-engine/src/languages/TreeSitterQuery/TreeSitterQuery.ts +++ b/packages/lib-engine/src/languages/TreeSitterQuery/TreeSitterQuery.ts @@ -6,7 +6,7 @@ import type { TextDocument, TreeSitter, } from "@cursorless/lib-common"; -import { expandCaptureName, expandCaptures } from "./captureAliases"; +import { expandCaptureName, expandCaptures } from "./captureGroup"; import type { ScopeCaptureName } from "./captureNames"; import { getNormalizedCaptureIndex, diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.test.ts b/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.test.ts index b983df92cf..4198a81480 100644 --- a/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.test.ts +++ b/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.test.ts @@ -6,22 +6,22 @@ import { Position, } from "@cursorless/lib-common"; import { TestTreeSitter } from "../../testUtil/TestTreeSitter"; -import { expandCaptureName } from "./captureAliases"; +import { expandCaptureName } from "./captureGroup"; import { TreeSitterQuery } from "./TreeSitterQuery"; import { treeSitterQueryCache } from "./TreeSitterQueryCache"; for (const alias of [ - "statementNameValue.iteration", - "statementNameValueType.iteration", + "G_statement_name_value.iteration", + "G_statement_name_value_type.iteration", ]) { - suite(`${alias} capture alias`, () => { + suite(`${alias} capture group`, () => { const ide = new FakeIDE(); const treeSitter = new TestTreeSitter(); const names = [ "statement.iteration", "name.iteration", "value.iteration", - ...(alias === "statementNameValueType.iteration" + ...(alias === "G_statement_name_value_type.iteration" ? ["type.iteration"] : []), ]; @@ -48,7 +48,19 @@ for (const alias of [ ); } assert.deepEqual(expandCaptureName("interior"), ["interior"]); - assert.deepEqual(expandCaptureName(`${alias}Other`), [`${alias}Other`]); + assert.deepEqual(expandCaptureName("Group_value_name"), [ + "Group_value_name", + ]); + assert.deepEqual(expandCaptureName("G_value_name_namedFunction.start"), [ + "value.start", + "name.start", + "namedFunction.start", + ]); + assert.deepEqual(expandCaptureName("G_value_name_namedFunction"), [ + "value", + "name", + "namedFunction", + ]); }); for (const withPredicates of [false, true]) { @@ -87,7 +99,7 @@ for (const alias of [ "statement", "name", "value", - ...(alias === "statementNameValueType.iteration" + ...(alias === "G_statement_name_value_type.iteration" ? ["type" as const] : []), ] as const) { @@ -126,6 +138,27 @@ for (const alias of [ } }); + test("expands an arbitrary group", () => { + const { query, document } = createQuery(` + (compound_statement) @G_value_name_namedFunction + `); + const matches = query.matches( + document, + new Position(0, 0), + new Position(0, 15), + ); + assert.deepEqual( + matches[0].captures.map((capture) => capture.name), + ["value", "name", "namedFunction"], + ); + assert.deepEqual( + query + .matchesForScopeTypes(document, ["name"])[0] + .captures.map((capture) => capture.name), + ["name"], + ); + }); + test("shares capture slots with ordinary captures", () => { const { query, document } = createQuery(` (compound_statement diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.ts b/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.ts deleted file mode 100644 index 4ff9a3613b..0000000000 --- a/packages/lib-engine/src/languages/TreeSitterQuery/captureAliases.ts +++ /dev/null @@ -1,82 +0,0 @@ -const statementNameValue = [ - "statement.iteration", - "name.iteration", - "value.iteration", -]; -const statementNameValueType = [...statementNameValue, "type.iteration"]; -const statementNameValueDomain = statementNameValue.map( - (name) => `${name}.domain`, -); -const statementNameValueTypeDomain = statementNameValueType.map( - (name) => `${name}.domain`, -); -const statementNameValueStart = statementNameValue.map( - (name) => `${name}.start.endOf`, -); -const statementNameValueEnd = statementNameValue.map( - (name) => `${name}.end.startOf`, -); -const statementNameValueTypeStartExclusive = statementNameValueType.map( - (name) => `${name}.start.endOf`, -); -const statementNameValueTypeEndExclusive = statementNameValueType.map( - (name) => `${name}.end.startOf`, -); -const statementNameValueEndInclusive = statementNameValue.map( - (name) => `${name}.end.endOf`, -); -const statementNameValueTypeEndInclusive = statementNameValueType.map( - (name) => `${name}.end.endOf`, -); - -/** Expand shared captures after Tree-sitter has matched the query. */ -export function expandCaptureName(name: string): string[] { - switch (name) { - case "statementNameValue.iteration": - return statementNameValue; - case "statementNameValueType.iteration": - return statementNameValueType; - case "statementNameValue.iteration.domain": - return statementNameValueDomain; - case "statementNameValueType.iteration.domain": - return statementNameValueTypeDomain; - case "statementNameValue.iteration.start.endOf": - return statementNameValueStart; - case "statementNameValue.iteration.end.startOf": - return statementNameValueEnd; - case "statementNameValueType.iteration.start.endOf": - return statementNameValueTypeStartExclusive; - case "statementNameValueType.iteration.end.startOf": - return statementNameValueTypeEndExclusive; - case "statementNameValue.iteration.end.endOf": - return statementNameValueEndInclusive; - case "statementNameValueType.iteration.end.endOf": - return statementNameValueTypeEndInclusive; - default: - return [name]; - } -} - -/** Preserve predicate changes while giving each expanded capture its own name. */ -export function expandCaptures( - captures: readonly T[], - aliases: ReadonlyMap, -): readonly T[] { - let result: T[] | undefined; - - for (let i = 0; i < captures.length; i++) { - const capture = captures[i]; - const names = aliases.get(capture.name); - - if (names == null) { - result?.push(capture); - } else { - result ??= captures.slice(0, i); - for (const name of names) { - result.push({ ...capture, name }); - } - } - } - - return result ?? captures; -} diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/captureGroup.ts b/packages/lib-engine/src/languages/TreeSitterQuery/captureGroup.ts new file mode 100644 index 0000000000..b71e068c06 --- /dev/null +++ b/packages/lib-engine/src/languages/TreeSitterQuery/captureGroup.ts @@ -0,0 +1,39 @@ +/** Expand shared captures after Tree-sitter has matched the query. */ +export function expandCaptureName(name: string): string[] { + if (!captureNameIsGroup(name)) { + return [name]; + } + + const dotIndex = name.indexOf("."); + const group = dotIndex === -1 ? name.slice(2) : name.slice(2, dotIndex); + const suffix = dotIndex === -1 ? "" : name.slice(dotIndex); + return group.split("_").map((member) => `${member}${suffix}`); +} + +/** Preserve predicate changes while giving each expanded capture its own name. */ +export function expandCaptures( + captures: readonly T[], + aliases: ReadonlyMap, +): readonly T[] { + let result: T[] | undefined; + + for (let i = 0; i < captures.length; i++) { + const capture = captures[i]; + const names = aliases.get(capture.name); + + if (names == null) { + result?.push(capture); + } else { + result ??= captures.slice(0, i); + for (const name of names) { + result.push({ ...capture, name }); + } + } + } + + return result ?? captures; +} + +export function captureNameIsGroup(name: string): boolean { + return name.startsWith("G_"); +} diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/captureNames.ts b/packages/lib-engine/src/languages/TreeSitterQuery/captureNames.ts index 1ff3b488c3..4b9e34648a 100644 --- a/packages/lib-engine/src/languages/TreeSitterQuery/captureNames.ts +++ b/packages/lib-engine/src/languages/TreeSitterQuery/captureNames.ts @@ -2,7 +2,7 @@ import { pseudoScopeTypeTypes, simpleScopeTypeTypes, } from "@cursorless/lib-common"; -import { expandCaptureName } from "./captureAliases"; +import { captureNameIsGroup, expandCaptureName } from "./captureGroup"; const scopeCaptureNames = simpleScopeTypeTypes.filter( (s) => !pseudoScopeTypeTypes.has(s), @@ -98,8 +98,10 @@ function getScopeName(captureName: string): string { } export function isCaptureAllowed(captureName: string): boolean { - return expandCaptureName(captureName).some((name) => - allowedCaptures.has(name), + const names = expandCaptureName(captureName); + return ( + (!captureNameIsGroup(captureName) || names.length > 1) && + names.every((name) => allowedCaptures.has(name)) ); } diff --git a/packages/lib-engine/src/languages/TreeSitterQuery/validateQueryCaptures.test.ts b/packages/lib-engine/src/languages/TreeSitterQuery/validateQueryCaptures.test.ts index 95437ed96a..177a093944 100644 --- a/packages/lib-engine/src/languages/TreeSitterQuery/validateQueryCaptures.test.ts +++ b/packages/lib-engine/src/languages/TreeSitterQuery/validateQueryCaptures.test.ts @@ -4,41 +4,92 @@ import { validateQueryCaptures } from "./validateQueryCaptures"; const testCases: { name: string; isOk: boolean; content: string }[] = [ { - name: "Statement/name/value iteration alias", + name: "Statement/name/value iteration group", isOk: true, - content: "(compound_statement) @statementNameValue.iteration", + content: "(compound_statement) @G_statement_name_value.iteration", }, { name: "Statement/name/value iteration boundaries", isOk: true, content: - '(compound_statement "{" @statementNameValue.iteration.start.endOf "}" @statementNameValue.iteration.end.startOf)', + '(compound_statement "{" @G_statement_name_value.iteration.start.endOf "}" @G_statement_name_value.iteration.end.startOf)', }, { name: "Statement/name/value iteration domain", isOk: true, - content: "(compound_statement) @statementNameValue.iteration.domain", + content: "(compound_statement) @G_statement_name_value.iteration.domain", }, { name: "Unknown iteration relationship", isOk: false, - content: "(compound_statement) @statementNameValue.iteration.unknown", + content: "(compound_statement) @G_statement_name_value.iteration.unknown", }, { name: "Statement/name/value/type iteration boundaries", isOk: true, content: - '(compound_statement "{" @statementNameValueType.iteration.start.endOf "}" @statementNameValueType.iteration.end.startOf)', + '(compound_statement "{" @G_statement_name_value_type.iteration.start.endOf "}" @G_statement_name_value_type.iteration.end.startOf)', }, { name: "Unknown type iteration relationship", isOk: false, - content: "(compound_statement) @statementNameValueType.iteration.unknown", + content: + "(compound_statement) @G_statement_name_value_type.iteration.unknown", + }, + { + name: "Old alias", + isOk: false, + content: "(compound_statement) @statementNameValue.iteration", + }, + { + name: "Old type alias", + isOk: false, + content: "(compound_statement) @statementNameValueType.iteration", + }, + { + name: "Group without suffix", + isOk: true, + content: "(compound_statement) @G_value_name_namedFunction", + }, + { + name: "Group with start suffix", + isOk: true, + content: "(compound_statement) @G_value_name_namedFunction.start", + }, + { + name: "Single member group", + isOk: false, + content: "(compound_statement) @G_value", + }, + { + name: "Single member group with suffix", + isOk: false, + content: "(compound_statement) @G_value.start", + }, + { + name: "Unknown first group member", + isOk: false, + content: "(compound_statement) @G_typo_name.iteration", + }, + { + name: "Unknown middle group member", + isOk: false, + content: "(compound_statement) @G_statement_typo_value.iteration", + }, + { + name: "Unknown last group member", + isOk: false, + content: "(compound_statement) @G_statement_name_typo.iteration", + }, + { + name: "Empty group", + isOk: false, + content: "(compound_statement) @G_", }, { - name: "Alias without iteration", + name: "Empty group member", isOk: false, - content: "(compound_statement) @statementNameValue", + content: "(compound_statement) @G_statement__value.iteration", }, { name: "Scope captures", diff --git a/resources/queries/c.scm b/resources/queries/c.scm index 3331ad60b1..d743183e57 100644 --- a/resources/queries/c.scm +++ b/resources/queries/c.scm @@ -37,8 +37,8 @@ ) ( - (translation_unit) @statementNameValueType.iteration @class.iteration @namedFunction.iteration - (#document-range! @statementNameValueType.iteration @class.iteration @namedFunction.iteration) + (translation_unit) @G_statement_name_value_type_class_namedFunction.iteration + (#document-range! @G_statement_name_value_type_class_namedFunction.iteration) ) ;;!! { } @@ -55,14 +55,14 @@ ;;!! union Foo { }; ;;! ^ (field_declaration_list - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ;; Body of statements (compound_statement - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ( @@ -114,8 +114,8 @@ ;;!! enum Foo {} (enumerator_list - "{" @name.iteration.start.endOf @value.iteration.start.endOf - "}" @name.iteration.end.startOf @value.iteration.end.startOf + "{" @G_name_value.iteration.start.endOf + "}" @G_name_value.iteration.end.startOf ) ;;!! bar = 0 @@ -197,7 +197,7 @@ declarator: (_ !declarator ) @name -) @_.domain @name.removal +) @name.domain @name.removal ;;!! aaa = 0; (_ @@ -212,8 +212,8 @@ ( (_ type: (_) @type - ) @_.domain - (#not-type? @_.domain type_definition type_descriptor cast_expression alias_declaration) + ) @type.domain + (#not-type? @type.domain type_definition type_descriptor cast_expression alias_declaration) ) ;;!! (int)5.5; @@ -222,23 +222,23 @@ "(" @type.removal.start type: (_) @type ")" @type.removal.end -) @_.domain +) @type.domain ;;!! void foo(int aaa) {} ;;! ^^^ (parameter_declaration declarator: (_) @name -) @_.domain +) @name.domain ;;!! void foo(int aaa, int bbb) {} ;;! ^^^^^^^ ^^^^^^^ ( (parameter_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (parameter_declaration) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -248,11 +248,11 @@ ;;! ^^^ ^^^ ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -272,8 +272,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (parameter_list - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! foo(aaa, bbb); @@ -356,8 +356,8 @@ ")" @value.end.startOf ) body: (_ - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ) @_.domain @@ -396,11 +396,11 @@ ( (declaration type: (_) - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -418,7 +418,7 @@ (return_statement "return" (_) @value -) @_.domain +) @value.domain (_ operator: [ diff --git a/resources/queries/clojure.scm b/resources/queries/clojure.scm index fe3baed6c1..b06aed06d4 100644 --- a/resources/queries/clojure.scm +++ b/resources/queries/clojure.scm @@ -56,11 +56,11 @@ ;;!! '(foo bar) ;;! ^^^ ^^^ (list_lit - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) (list_lit @@ -71,11 +71,11 @@ ;;!! [foo bar] ;;! ^^^ ^^^ (vec_lit - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) (vec_lit @@ -85,23 +85,23 @@ ;; Keyword follow by a value (map_lit - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (kwd_lit) @collectionItem.start . value: (_) @collectionItem.end . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) ;; Keyword followed by comment or closing brace (map_lit - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (kwd_lit) @collectionItem.start . [ - (comment) @_.trailing.startOf + (comment) @collectionItem.trailing.startOf "}" ] ) @@ -203,8 +203,8 @@ ;;! ^^^^ ^^^^ ;;! ^ ^ (map_lit - value: (_) @collectionKey @collectionKey.domain.start @value.domain.start - value: (_) @value @collectionKey.domain.end @value.domain.end + value: (_) @collectionKey @G_collectionKey_value.domain.start + value: (_) @value @G_collectionKey_value.domain.end (#even? @collectionKey value) (#odd? @value value) ) @@ -212,8 +212,8 @@ ;;!! {:foo 1, :bar 2} ;;! ^^^^^^^^^^^^^^ (map_lit - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) ( diff --git a/resources/queries/cpp.scm b/resources/queries/cpp.scm index 6d4d925cad..df43c39d77 100644 --- a/resources/queries/cpp.scm +++ b/resources/queries/cpp.scm @@ -42,7 +42,7 @@ ;;!! namespace NS { } (namespace_definition name: (_) @name -) @_.domain +) @name.domain ;;!! using Foo = Bar; ;;! ^^^ @@ -55,7 +55,7 @@ (field_declaration_list "{" @namedFunction.iteration.start.endOf "}" @namedFunction.iteration.end.startOf -) @_.domain +) @namedFunction.domain ;;!! int aaa = 0; ;;! ^^^ @@ -125,11 +125,11 @@ ;;! ^^^^^^ ^^^ ( (template_argument_list - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (type_descriptor) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) diff --git a/resources/queries/csharp.scm b/resources/queries/csharp.scm index 9cf6bfcb5f..7d81c8a541 100644 --- a/resources/queries/csharp.scm +++ b/resources/queries/csharp.scm @@ -53,15 +53,15 @@ ] @statement ( - (compilation_unit) @statementNameValueType.iteration @class.iteration @namedFunction.iteration - (#document-range! @statementNameValueType.iteration @class.iteration @namedFunction.iteration) + (compilation_unit) @G_statement_name_value_type_class_namedFunction.iteration + (#document-range! @G_statement_name_value_type_class_namedFunction.iteration) ) ;;!! { } ;;! ^ (block - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ;;!! { } @@ -154,8 +154,8 @@ (class_declaration body: (_ - "{" @class.iteration.start.endOf @statementNameValueType.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @class.iteration.end.startOf @statementNameValueType.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_class_statement_name_value_type_namedFunction.iteration.start.endOf + "}" @G_class_statement_name_value_type_namedFunction.iteration.end.startOf ) ) @@ -165,8 +165,8 @@ (interface_declaration body: (_ - "{" @statement.iteration.start.endOf @name.iteration.start.endOf @type.iteration.start.endOf - "}" @statement.iteration.end.startOf @name.iteration.end.startOf @type.iteration.end.startOf + "{" @G_statement_name_type.iteration.start.endOf + "}" @G_statement_name_type.iteration.end.startOf ) ) @@ -194,19 +194,19 @@ (lambda_expression body: (_) @value (#not-type? @value block initializer_expression) -) @_.domain +) @value.domain ;;!! return 0; ;;! ^ (return_statement (_) @value -) @_.domain +) @value.domain ;;!! yield return 0; ;;! ^ (yield_statement (_) @value -) @_.domain +) @value.domain ;;!! throw foo; ;;! ^^^ @@ -255,8 +255,8 @@ (switch_statement value: (_) @value body: (switch_body - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ) @value.domain @@ -323,8 +323,8 @@ ) (initializer_expression - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) ;;!! String foo = 0 @@ -365,19 +365,19 @@ (assignment_expression left: (_) @collectionKey right: (_) @collectionKey.trailing.startOf - ) @_.domain + ) @collectionKey.domain ) (_ name: (_) @name (#not-parent-type? @name catch_declaration enum_member_declaration) -) @_.domain +) @name.domain ( (_ type: (_) @type - ) @_.domain - (#not-type? @_.domain catch_declaration cast_expression variable_declaration) + ) @type.domain + (#not-type? @type.domain catch_declaration cast_expression variable_declaration) ) ;;!! (int)5.5; @@ -386,13 +386,13 @@ "(" @type.removal.start type: (_) @type ")" @type.removal.end -) @_.domain +) @type.domain ;;!! enum Foo {} (enum_declaration body: (_ - "{" @name.iteration.start.endOf @value.iteration.start.endOf - "}" @name.iteration.end.startOf @value.iteration.end.startOf + "{" @G_name_value.iteration.start.endOf + "}" @G_name_value.iteration.end.startOf ) ) @type @@ -406,11 +406,11 @@ ;; Dictionary values; ;;! ^^^^^^ ^^^ (type_argument_list - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf (#insertion-delimiter! @type ", ") ) @@ -426,17 +426,17 @@ (equals_value_clause (_) @value ) -) @_.domain +) @value.domain ;; !! foo(aaa, bbb) ;; ! ^^^ ^^^ ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -456,8 +456,8 @@ ;;!! foo(aaa: 0, bbb: 1); ;;! ^^^^^^^^^^^^^^ (argument_list - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! foo(aaa: 0, bbb: 1); @@ -474,11 +474,11 @@ ;; ! ^^^^^ ^^^^^ ( (parameter_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -496,8 +496,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (parameter_list - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! using Foo = Bar; @@ -531,11 +531,11 @@ ( (variable_declaration type: (_) - (variable_declarator)? @_.leading.endOf + (variable_declarator)? @collectionItem.leading.endOf . (variable_declarator) @collectionItem . - (variable_declarator)? @_.trailing.startOf + (variable_declarator)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) diff --git a/resources/queries/css.scm b/resources/queries/css.scm index 8acb5be7b2..00490c1e2a 100644 --- a/resources/queries/css.scm +++ b/resources/queries/css.scm @@ -32,7 +32,7 @@ ;;! ^^^ (rule_set (selectors) @selector -) @_.domain +) @selector.domain ;;!! width: 100px; (declaration @@ -54,13 +54,13 @@ ;;! ^^^^^^^^^^ (import_statement (_) @value -) @_.domain +) @value.domain ;;!! translate(-50%, -50%) ;;! ^^^^ ^^^^ ( (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . [ "(" @@ -81,7 +81,7 @@ ) ] . - (_) @_.trailing.startOf + (_) @argumentOrParameter.trailing.startOf )? ) @_dummyList (#grow-to-named-siblings! @argumentOrParameter "at") @@ -101,14 +101,14 @@ ;; Entire file ( - (stylesheet) @statementNameValue.iteration @collectionKey.iteration - (#document-range! @statementNameValue.iteration @collectionKey.iteration) + (stylesheet) @G_statement_name_value_collectionKey.iteration + (#document-range! @G_statement_name_value_collectionKey.iteration) ) ;; { } (block - "{" @name.iteration.start.endOf @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @name.iteration.end.startOf @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_name_collectionKey_value.iteration.start.endOf + "}" @G_name_collectionKey_value.iteration.end.startOf ) @map ;;!! width: 100px; @@ -118,24 +118,24 @@ (unit) @unit ) (#allow-multiple! @unit) -) @_.domain +) @unit.domain (integer_value (unit) @unit -) @_.domain +) @unit.domain ;;!! @namespace prefix "XML-namespace-URL"; ;;! ^^^^^^^^^^^^^^^^^^^^^^^^^^ (namespace_statement (namespace_name) @value.start (string_value) @value.end -) @_.domain +) @value.domain ;;!! @namespace url(http://www.w3.org/1999/xhtml); ;;! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (namespace_statement (call_expression) @value -) @_.domain +) @value.domain ;;!! div > a ;;! ^ diff --git a/resources/queries/dart.scm b/resources/queries/dart.scm index 1e4d9b5491..30137fe758 100644 --- a/resources/queries/dart.scm +++ b/resources/queries/dart.scm @@ -23,8 +23,8 @@ ) ( - (program) @class.iteration @statementNameValueType.iteration @namedFunction.iteration - (#document-range! @class.iteration @statementNameValueType.iteration @namedFunction.iteration) + (program) @G_class_statement_name_value_type_namedFunction.iteration + (#document-range! @G_class_statement_name_value_type_namedFunction.iteration) ) ;;!! { } @@ -39,8 +39,8 @@ ;;!! { } ;;! ^ (block - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ;;!! int foo = 0; @@ -86,11 +86,11 @@ ;;! ^^^ ^^^ ( (initialized_identifier_list - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) @_dummy (#not-type? @collectionItem comment) (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") @@ -216,16 +216,16 @@ ;;! ^^^^^^^^^^^^^^^^^^^^ ;;! ^^^^^^^^^^^^^^^^^^ (set_or_map_literal - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) @map ;;!! final {"aaa": 0, "bbb": 1} = foo; ;;! ^^^^^^^^^^^^^^^^^^^^ ;;! ^^^^^^^^^^^^^^^^^^ (map_pattern - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) @map ;;!! {"aaa": 0, "bbb": 1} @@ -256,8 +256,8 @@ ;;!! class Foo { } ;;! ^ (class_body - "{" @namedFunction.iteration.start.endOf @statementNameValueType.iteration.start.endOf - "}" @namedFunction.iteration.end.startOf @statementNameValueType.iteration.end.startOf + "{" @G_namedFunction_statement_name_value_type.iteration.start.endOf + "}" @G_namedFunction_statement_name_value_type.iteration.end.startOf ) ;;!! var foo = 0; @@ -426,11 +426,11 @@ ;;! ^^^ ^^^ ( (formal_parameter_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -439,8 +439,8 @@ ;;!! void foo(aaa, bbb) {} ;;! ^^^^^^^^ (formal_parameter_list - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! int aaa = 0 @@ -499,11 +499,11 @@ ;;! ^^^ ^^^ ( (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -512,8 +512,8 @@ ;;!! foo(aaa, bbb); ;;! ^^^^^^^^ (arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! foo(aaa: 0, bbb: 1); @@ -652,8 +652,8 @@ ;;!! switch () { } ;;! ^ (switch_block - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ;;!! true ? 0 : 1; diff --git a/resources/queries/go.scm b/resources/queries/go.scm index f48137f794..a601ca89f9 100644 --- a/resources/queries/go.scm +++ b/resources/queries/go.scm @@ -52,13 +52,13 @@ ) ( - (source_file) @statementNameValueType.iteration @class.iteration @namedFunction.iteration - (#document-range! @statementNameValueType.iteration @class.iteration @namedFunction.iteration) + (source_file) @G_statement_name_value_type_class_namedFunction.iteration + (#document-range! @G_statement_name_value_type_class_namedFunction.iteration) ) (block - "{" @class.iteration.start.endOf @statementNameValueType.iteration.start.endOf - "}" @class.iteration.end.startOf @statementNameValueType.iteration.end.startOf + "{" @G_class_statement_name_value_type.iteration.start.endOf + "}" @G_class_statement_name_value_type.iteration.end.startOf ) ;;!! { } @@ -89,8 +89,8 @@ name: (_) @name type: (struct_type (field_declaration_list - "{" @statement.iteration.start.endOf @name.iteration.start.endOf @type.iteration.start.endOf - "}" @statement.iteration.end.startOf @name.iteration.end.startOf @type.iteration.end.startOf + "{" @G_statement_name_type.iteration.start.endOf + "}" @G_statement_name_type.iteration.end.startOf ) ) ) @@ -108,8 +108,8 @@ (type_spec name: (_) @name type: (interface_type - "{" @statement.iteration.start.endOf @name.iteration.start.endOf - "}" @statement.iteration.end.startOf @name.iteration.end.startOf + "{" @G_statement_name.iteration.start.endOf + "}" @G_statement_name.iteration.end.startOf ) ) ) @type @name.domain @@ -243,8 +243,8 @@ ;;!! switch foo {} (expression_switch_statement value: (_) @value - "{" @interior.start.endOf @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @interior.end.startOf @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @interior.start.endOf @G_branch_condition.iteration.start.endOf + "}" @interior.end.startOf @G_branch_condition.iteration.end.startOf ) @value.domain ;;!! switch v := x.(type) {} @@ -254,8 +254,8 @@ _ @value.start _ @value.end . - "{" @interior.start.endOf @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @interior.end.startOf @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @interior.start.endOf @G_branch_condition.iteration.start.endOf + "}" @interior.end.startOf @G_branch_condition.iteration.end.startOf ) @value.domain ;;!! if () {} else {} @@ -304,15 +304,15 @@ (call_expression function: (_) @functionCallee -) @_.domain +) @functionCallee.domain (composite_literal type: (_) @functionCallee -) @_.domain +) @functionCallee.domain (return_statement (expression_list) @value -) @_.domain +) @value.domain ;;!! map[string]int{"aaa": 1, "bbb": 2} ;;! ^^^^^ ^^^^^ @@ -327,8 +327,8 @@ ;;!! map[string]int{"aaa": 1, "bbb": 2} ;;! ^^^^^^^^^^^^^^^^^^ (literal_value - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) [ @@ -363,11 +363,11 @@ (function_declaration result: (_) @type -) @_.domain +) @type.domain (method_declaration result: (_) @type -) @_.domain +) @type.domain ;;!! for i := 0; i < size; i++ {} ;;! ^^^^^^^^ @@ -405,11 +405,11 @@ ;;!! func add(x int, y int) int {} ( (parameter_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -418,11 +418,11 @@ ;;!! add(1, 2) ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -441,8 +441,8 @@ (_ parameters: (parameter_list - "(" @name.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_type.iteration.start.endOf + ")" @G_name_type.iteration.end.startOf ) ) diff --git a/resources/queries/html.scm b/resources/queries/html.scm index d9bb38df44..4e8d4856a3 100644 --- a/resources/queries/html.scm +++ b/resources/queries/html.scm @@ -5,14 +5,14 @@ ;;! ----- (start_tag (tag_name) @name -) @_.domain +) @name.domain ;;!! ;;! ^^^ ;;! ------ (end_tag (tag_name) @name -) @_.domain +) @name.domain ;;!! ;;! ^^^^^^^ @@ -26,7 +26,7 @@ (quoted_attribute_value) (attribute_value) ] ? @collectionKey.trailing.startOf -) @_.domain +) @collectionKey.domain ;;!! ;;! ^ @@ -62,23 +62,14 @@ ;;! ^^^^^ (raw_text) @textFragment -;; Use parent wildcard to get all three kinds of elements: element, script_element, style_element - ;;!! text ;;! ^^^^^^^^^^^^^^^ -;;! ^^^^ -(_ - (start_tag) @interior.start.endOf - (end_tag) @interior.end.startOf -) @xmlElement - -;;!! text ;;! ^^^^^ ^^^^^^ -;;! --------------- +;;! ^^^^ (_ - (start_tag) @xmlStartTag - (end_tag) @xmlEndTag -) @_.domain + (start_tag) @xmlStartTag @interior.start.endOf + (end_tag) @xmlEndTag @interior.end.startOf +) @xmlElement @xmlStartTag.domain @xmlEndTag.domain (_ [ @@ -86,16 +77,10 @@ (end_tag) ] @xmlBothTags (#allow-multiple! @xmlBothTags) -) @_.domain - -(_ - (start_tag) @xmlElement.iteration.start.endOf @xmlBothTags.iteration.start.endOf - (element) - (end_tag) @xmlElement.iteration.end.startOf @xmlBothTags.iteration.end.startOf -) +) @xmlBothTags.domain (_ - (start_tag) @xmlStartTag.iteration.start.endOf @xmlEndTag.iteration.start.endOf + (start_tag) @G_xmlElement_xmlBothTags_xmlStartTag_xmlEndTag.iteration.start.endOf (element) - (end_tag) @xmlStartTag.iteration.end.startOf @xmlEndTag.iteration.end.startOf + (end_tag) @G_xmlElement_xmlBothTags_xmlStartTag_xmlEndTag.iteration.end.startOf ) diff --git a/resources/queries/java.scm b/resources/queries/java.scm index df21527f47..a3a78095ce 100644 --- a/resources/queries/java.scm +++ b/resources/queries/java.scm @@ -74,7 +74,7 @@ ;;! ^^^ ^^^ (enum_constant name: (_) @name -) @_.domain +) @name.domain ;;!! class Foo {} ;;! ^^^^^^^^^^^^ @@ -98,23 +98,23 @@ ) @type @_.domain ( - (program) @class.iteration @statementNameValueType.iteration - (#document-range! @class.iteration @statementNameValueType.iteration) + (program) @G_class_statement_name_value_type.iteration + (#document-range! @G_class_statement_name_value_type.iteration) ) ;;!! class MyClass { } ;;! ^ (class_body - "{" @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @class.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_class_namedFunction.iteration.start.endOf + "}" @G_class_namedFunction.iteration.end.startOf ) ;;!! { } ;;! ^ ( (_ - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) @_dummy (#type? @_dummy block class_body interface_body constructor_body) ) @@ -237,8 +237,8 @@ condition: (_) @value (#child-range! @value 0 -1 true true) body: (_ - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @condition.iteration.end.startOf @branch.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_condition_branch.iteration.end.startOf ) ) @value.domain @@ -333,13 +333,13 @@ ;;! ------------------------- (formal_parameter (identifier) @name -) @_.domain +) @name.domain ;;!! void myFunk(int value) {} ;;! ^^^^^^^^^ (formal_parameters - "(" @type.iteration.start.endOf @name.iteration.start.endOf - ")" @type.iteration.end.startOf @name.iteration.end.startOf + "(" @G_type_name.iteration.start.endOf + ")" @G_type_name.iteration.end.startOf ) ;;!! name = new ArrayList(); @@ -347,28 +347,28 @@ ;;! ----------------------- (object_creation_expression type: (_) @type -) @_.domain +) @type.domain ;;!! name = new int[5]; ;;! ^^^ ;;! ---------- (array_creation_expression type: (_) @type -) @_.domain +) @type.domain ;;!! void myFunk(int value) {} ;;! ^^^ ;;! --------- (formal_parameter type: (_) @type -) @_.domain +) @type.domain ;;!! int size() {} ;;! ^^^ ;;! ------------- (method_declaration type: (_) @type -) @_.domain +) @type.domain ;;!! (int)5 ;;! ^^^ @@ -376,7 +376,7 @@ "(" @type.removal.start type: (_) @type ")" @type.removal.end -) @_.domain +) @type.domain ;;!! new test(); ;;! ^^^^^^^^ @@ -384,7 +384,7 @@ (_ (object_creation_expression (argument_list) @functionCallee.end.startOf - ) @functionCallee.start.startOf @_.domain + ) @functionCallee.start.startOf @functionCallee.domain ) ;;!! new test().bar(); @@ -393,7 +393,7 @@ (_ (method_invocation (argument_list) @functionCallee.end.startOf - ) @functionCallee.start.startOf @_.domain + ) @functionCallee.start.startOf @functionCallee.domain ) ;;!! super(); @@ -401,14 +401,14 @@ ;;! -------- (explicit_constructor_invocation (argument_list) @functionCallee.end.startOf -) @functionCallee.start.startOf @_.domain +) @functionCallee.start.startOf @functionCallee.domain ;;!! Foo(); ;;! ^^^ ;;! ----- (enum_constant (argument_list) @functionCallee.end.startOf -) @functionCallee.start.startOf @_.domain +) @functionCallee.start.startOf @functionCallee.domain ;;!! for (int value : values) {} ;;! ^^^^^^ @@ -461,11 +461,11 @@ ( (local_variable_declaration type: (_) - (variable_declarator)? @_.leading.endOf + (variable_declarator)? @collectionItem.leading.endOf . (variable_declarator) @collectionItem . - (variable_declarator)? @_.trailing.startOf + (variable_declarator)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -473,11 +473,11 @@ ( (field_declaration type: (_) - (variable_declarator)? @_.leading.endOf + (variable_declarator)? @collectionItem.leading.endOf . (variable_declarator) @collectionItem . - (variable_declarator)? @_.trailing.startOf + (variable_declarator)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -503,11 +503,11 @@ ;;! ^^^^^^^^^ ^^^^^^^^^^^ ( (throws - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -527,11 +527,11 @@ ;;! ^^^ ^^^ (_ (type_list - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -590,11 +590,11 @@ ;;! ^^^ ^^^ ( (type_arguments - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) @@ -610,11 +610,11 @@ ;;! ^^^^^^^ ^^^^^^^ (_ parameters: (_ - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter block_comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -624,11 +624,11 @@ ;;! ^^^ ^^^ ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter block_comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") diff --git a/resources/queries/javascript.core.scm b/resources/queries/javascript.core.scm index de670b7665..d3860eb150 100644 --- a/resources/queries/javascript.core.scm +++ b/resources/queries/javascript.core.scm @@ -48,8 +48,8 @@ ) ( - (program) @statementNameValueType.iteration @class.iteration - (#document-range! @statementNameValueType.iteration @class.iteration) + (program) @G_statement_name_value_type_class.iteration + (#document-range! @G_statement_name_value_type_class.iteration) ) ;;!! { } @@ -68,12 +68,12 @@ ( (_ name: (_) @name - ) @_.domain - (#not-parent-type? @_.domain export_statement) + ) @name.domain + (#not-parent-type? @name.domain export_statement) ;; We have special cases for these defined elsewhere (#not-type? - @_.domain + @name.domain enum_body enum_assignment variable_declarator @@ -97,7 +97,7 @@ ;; We have a special case for this one. Note we don't need to list the other ;; special cases from above because they can't be exported (#not-type? @_dummy variable_declarator type_alias_declaration) -) @_.domain +) @name.domain ;; Special cases for `(let | const | var) foo = ...;` because the full statement ;; is actually a grandparent of the `name` node, so we want the domain to include @@ -153,8 +153,8 @@ ) @name.removal.end.endOf ] ) - ] @_.domain @name.removal.start.startOf - (#not-parent-type? @_.domain export_statement) + ] @name.domain @name.removal.start.startOf + (#not-parent-type? @name.domain export_statement) ;; Handle multiple variable declarators in one statement, eg ;;!! (let | const | var) aaa = ..., ccc = ...; @@ -205,8 +205,8 @@ value: (_)? @name.trailing.startOf ) ) - ] @_.domain - (#not-parent-type? @_.domain export_statement) + ] @name.domain + (#not-parent-type? @name.domain export_statement) ;; Handle multiple variable declarators in one statement, eg ;;!! (let | const | var) aaa = ..., ccc = ...; @@ -232,7 +232,7 @@ value: (_)? @name.trailing.startOf ) ) - ) @_.domain + ) @name.domain ;; Handle multiple variable declarators in one statement, eg ;;!! var foo = ..., bar = ...; @@ -255,7 +255,7 @@ (variable_declarator name: (_) @name @name.removal.end.endOf value: (_)? @name.removal.end.startOf - ) @_.domain + ) @name.domain . (variable_declarator) ) @name.removal.start.startOf @@ -270,7 +270,7 @@ (variable_declarator name: (_) @name value: (_)? @name.trailing.startOf - ) @_.domain + ) @name.domain ) ;; Special cases for `(let | const | var) foo = ...;` because the full statement @@ -303,8 +303,8 @@ value: (_)? @value ) ) - ] @_.domain - (#not-parent-type? @_.domain export_statement) + ] @value.domain + (#not-parent-type? @value.domain export_statement) ;; Handle multiple variable declarators in one statement, eg ;;!! (let | const | var) aaa: Bbb = ..., ccc: Ddd = ...; @@ -325,7 +325,7 @@ value: (_)? @value ) ) - ) @_.domain + ) @value.domain ;; Handle multiple variable declarators in one statement, eg ;;!! export (let | const | var) aaa: Bbb = ..., ccc: Ddd = ...; @@ -346,7 +346,7 @@ (_) @value.leading.endOf . value: (_)? @value - ) @_.domain + ) @value.domain ) @_dummy (#has-multiple-children-of-type? @_dummy variable_declarator) ) @@ -355,11 +355,11 @@ ;;! ^^^ ^^^ ( (lexical_declaration - (variable_declarator)? @_.leading.endOf + (variable_declarator)? @collectionItem.leading.endOf . (variable_declarator) @collectionItem . - (variable_declarator)? @_.trailing.startOf + (variable_declarator)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -470,7 +470,7 @@ ;;! --------- (return_statement (_) @value -) @_.domain +) @value.domain ;;!! yield 0; ;;! ^ @@ -478,9 +478,9 @@ (_ (yield_expression (_) @value - ) @_.domain.start + ) @value.domain.start . - ";"? @_.domain.end + ";"? @value.domain.end ) ;;!! throw foo; @@ -495,7 +495,7 @@ (arrow_function body: (_) @value (#not-type? @value statement_block) -) @_.domain +) @value.domain ;; name: ;;!! for (const aaa of bbb) {} @@ -514,8 +514,8 @@ ;;! ^ ( (_ - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) @_dummy (#type? @_dummy statement_block class_body interface_body) ) @@ -523,15 +523,15 @@ ;;!! const aaa = {bbb: 0, ccc: 0}; ;;! ************** (object - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) ;;!! const {aaa: bbb} = ccc; ;;! ^^^^^^^^ (object_pattern - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) @_.domain ;;!! const {aaa: bbb} = ccc; @@ -613,14 +613,14 @@ function: (_) @functionCallee.start (_)? @functionCallee.end arguments: (_) -) @_.domain +) @functionCallee.domain ;;!! new Foo() ;;! ^^^^^^^ ;;! --------- (new_expression (arguments) @functionCallee.end.startOf -) @functionCallee.start.startOf @_.domain +) @functionCallee.start.startOf @functionCallee.domain ;;!! class Foo {} ;;! ^^^^^^^^^^^^ @@ -680,8 +680,8 @@ (switch_statement value: (_) @value body: (_ - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) (#child-range! @value 0 -1 true true) ) @value.domain @@ -793,11 +793,11 @@ ;;! ^^^ ^^^ ( (formal_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -807,19 +807,19 @@ ;;! ^^^ ^^^ ( (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) (formal_parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! foo(aaa, bbb) diff --git a/resources/queries/javascript.jsx.scm b/resources/queries/javascript.jsx.scm index d673455c01..36cf28d40e 100644 --- a/resources/queries/javascript.jsx.scm +++ b/resources/queries/javascript.jsx.scm @@ -5,15 +5,8 @@ ;;!! bar ;;! ^^^ (jsx_element - (jsx_opening_element) @interior.start.endOf @xmlElement.iteration.start.endOf - (jsx_closing_element) @interior.end.startOf @xmlElement.iteration.end.startOf -) - -;;!! bar -;;! ^^^ -(jsx_element - (jsx_opening_element) @xmlStartTag.iteration.start.endOf @xmlEndTag.iteration.start.endOf @xmlBothTags.iteration.start.endOf - (jsx_closing_element) @xmlStartTag.iteration.end.startOf @xmlEndTag.iteration.end.startOf @xmlBothTags.iteration.end.startOf + (jsx_opening_element) @interior.start.endOf @G_xmlElement_xmlStartTag_xmlEndTag_xmlBothTags.iteration.start.endOf + (jsx_closing_element) @interior.end.startOf @G_xmlElement_xmlStartTag_xmlEndTag_xmlBothTags.iteration.end.startOf ) ;;!! bar @@ -38,7 +31,7 @@ "<" @name.start.endOf . ">" @name.end.startOf -) @_.domain +) @name.domain ;; Defines `name` scope for JSX fragment closing element ;;!! <> @@ -48,7 +41,7 @@ "" @name.end.startOf -) @_.domain +) @name.domain ;;!! (jsx_self_closing_element) @xmlElement @@ -61,30 +54,30 @@ ;;! ^^^ (jsx_attribute (property_identifier) @collectionKey - (_)? @_.trailing.startOf -) @_.domain + (_)? @collectionKey.trailing.startOf +) @collectionKey.domain ;;!! ;;! ^^^^^ ;;! xxxxxx ;;! --------- (jsx_attribute - (_) @_.leading.endOf + (_) @value.leading.endOf (_) @value -) @_.domain +) @value.domain ;;!! ;;! ^^^^ (jsx_self_closing_element - "<" @attribute.iteration.start.endOf @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "/>" @attribute.iteration.end.startOf @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "<" @G_attribute_collectionKey_value.iteration.start.endOf + "/>" @G_attribute_collectionKey_value.iteration.end.startOf ) ;;!! ;;! ^^^ (jsx_opening_element - "<" @attribute.iteration.start.endOf @collectionKey.iteration.start.endOf @value.iteration.start.endOf - ">" @attribute.iteration.end.startOf @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "<" @G_attribute_collectionKey_value.iteration.start.endOf + ">" @G_attribute_collectionKey_value.iteration.end.startOf ) ;;!!
text
diff --git a/resources/queries/javascript.scm b/resources/queries/javascript.scm index cbc4109b8a..18e4ae36ca 100644 --- a/resources/queries/javascript.scm +++ b/resources/queries/javascript.scm @@ -108,7 +108,7 @@ ;;! ^^^ (rest_pattern (identifier) @name -) @_.domain +) @name.domain ;;!! catch(error) {} ;;! ^^^^^ diff --git a/resources/queries/json.scm b/resources/queries/json.scm index a63ed7a8dd..0e04d0ce17 100644 --- a/resources/queries/json.scm +++ b/resources/queries/json.scm @@ -33,6 +33,6 @@ ;;!! {"bbb": 0, "ccc": 0} ;;! ****************** (object - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) diff --git a/resources/queries/kotlin.scm b/resources/queries/kotlin.scm index 3a75a183b0..7e8f8032bd 100644 --- a/resources/queries/kotlin.scm +++ b/resources/queries/kotlin.scm @@ -36,16 +36,16 @@ ;; Entire document, including leading and trailing whitespace ( - (source_file) @class.iteration @statementNameValueType.iteration @namedFunction.iteration - (#document-range! @class.iteration @statementNameValueType.iteration @namedFunction.iteration) + (source_file) @G_class_statement_name_value_type_namedFunction.iteration + (#document-range! @G_class_statement_name_value_type_namedFunction.iteration) ) ;;!! { } ;;! ^ ( (_ - "{" @statementNameValueType.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_statement_name_value_type_namedFunction.iteration.start.endOf + "}" @G_statement_name_value_type_namedFunction.iteration.end.startOf ) @_dummy (#not-type? @_dummy lambda_literal) ) @@ -167,20 +167,14 @@ ) @branch.iteration ;;!! catch (e: Exception) {} +;;! ^^^^^^^^^^^^^^^^^^^^^^^ ;;! ^^^^^^^^^^^^ -(catch_block - (simple_identifier) @argumentOrParameter.start - ":" - (user_type) @argumentOrParameter.end -) @branch - -;;!! catch (e: Exception) {} ;;! ^ (catch_block - (simple_identifier) @name @name.domain.start + (simple_identifier) @argumentOrParameter.start @name @name.domain.start ":" - (user_type) @name.domain.end -) + (user_type) @argumentOrParameter.end @name.domain.end +) @branch ;;!! catch (e: Exception) {} ;;! ^^^^^^^^^ @@ -196,8 +190,8 @@ ;;!! when (foo) { } ;;! ^ (when_expression - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ;;!! when (foo) {} @@ -402,15 +396,15 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (function_value_parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! foo: Int ;;!! vararg foo: Int ( (function_value_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . [ "," @@ -436,7 +430,7 @@ ")" ] . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter.end @_dummy ", " ",\n") ) @@ -468,7 +462,7 @@ ;; !! vararg foo: Int = 0 ( (function_value_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . [ "," @@ -497,7 +491,7 @@ ")" ] . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter.end @_dummy ", " ",\n") ) @@ -566,11 +560,11 @@ ( (lambda_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -587,17 +581,17 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (primary_constructor - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ( (primary_constructor - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -630,17 +624,17 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (value_arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ( (value_arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -665,11 +659,11 @@ ;;! ^^^ ^^^ ( (type_arguments - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) diff --git a/resources/queries/latex.scm b/resources/queries/latex.scm index 363193dae8..17c67968ed 100644 --- a/resources/queries/latex.scm +++ b/resources/queries/latex.scm @@ -19,27 +19,22 @@ (paragraph) @namedParagraph (subparagraph) @subParagraph -(_ - (begin) @xmlStartTag - (end) @xmlEndTag -) @environment @xmlElement @_.domain - ;;!! \begin{quote} Hello \end{quote} ;;! ^^^^^^^ (_ - (begin) @interior.start.endOf @textFragment.start.endOf - (end) @interior.end.startOf @textFragment.end.startOf -) + (begin) @xmlStartTag @G_interior_textFragment.start.endOf + (end) @xmlEndTag @G_interior_textFragment.end.startOf +) @environment @xmlElement @G_xmlStartTag_xmlEndTag.domain (_ (begin) @xmlBothTags (#allow-multiple! @xmlBothTags) -) @_.domain +) @xmlBothTags.domain (_ (end) @xmlBothTags (#allow-multiple! @xmlBothTags) -) @_.domain +) @xmlBothTags.domain (operator [ @@ -167,7 +162,7 @@ (brack_group_text) (brack_group_argc) (brack_group_key_value) - ] @argumentOrParameter @_.removal + ] @argumentOrParameter @argumentOrParameter.removal ) @_dummy (#character-range! @argumentOrParameter 1 -1) (#type? diff --git a/resources/queries/lua.scm b/resources/queries/lua.scm index e486701a4b..e6a4255d40 100644 --- a/resources/queries/lua.scm +++ b/resources/queries/lua.scm @@ -31,13 +31,13 @@ ;; Document iteration scopes ( - (chunk) @statementNameValue.iteration @namedFunction.iteration - (#document-range! @statementNameValue.iteration @namedFunction.iteration) + (chunk) @G_statement_name_value_namedFunction.iteration + (#document-range! @G_statement_name_value_namedFunction.iteration) ) ;; Block iteration scopes -(block) @statementNameValue.iteration @namedFunction.iteration +(block) @G_statement_name_value_namedFunction.iteration ;; Conditionals @@ -154,11 +154,11 @@ ) @map (table_constructor - "{" @value.iteration.start.endOf @collectionKey.iteration.start.endOf + "{" @G_value_collectionKey.iteration.start.endOf (field name: (_) ) - "}" @value.iteration.end.startOf @collectionKey.iteration.end.startOf + "}" @G_value_collectionKey.iteration.end.startOf ) ;;!! a = { foo = "bar" } @@ -243,8 +243,8 @@ ;;! **** (_ (parameters - "(" @argumentList.removal.start.endOf @argumentOrParameter.iteration.start.endOf @name.iteration.start.endOf - ")" @argumentList.removal.end.startOf @argumentOrParameter.iteration.end.startOf @name.iteration.end.startOf + "(" @argumentList.removal.start.endOf @G_argumentOrParameter_name.iteration.start.endOf + ")" @argumentList.removal.end.startOf @G_argumentOrParameter_name.iteration.end.startOf ) @argumentList (#empty-single-multi-delimiter! @argumentList @argumentList "" ", " ",\n") (#child-range! @argumentList 1 -2) diff --git a/resources/queries/markdown.scm b/resources/queries/markdown.scm index afb93bd165..daa5b46a84 100644 --- a/resources/queries/markdown.scm +++ b/resources/queries/markdown.scm @@ -1,12 +1,12 @@ ;; https://github.com/tree-sitter-grammars/tree-sitter-markdown/blob/main/src/grammar.json -(document) @textFragment +(document) @textFragment @section.iteration (html_block) @comment ;;!! * hello * stuff ;;! ^^^^^^^^^^^^^^^ -(list) @list +(list) @list @collectionItem.iteration ;;!! # Title ;;! ^^^^^ @@ -16,9 +16,9 @@ (atx_heading (_) heading_content: (_) @name - ) @_.removal + ) @name.removal (#shrink-to-match! @name "^\\s*(?.*)$") -) @_.domain +) @name.domain ;;!! - 0 ;;! ^ @@ -37,8 +37,6 @@ (#insertion-delimiter! @collectionItem.start.startOf "\n") ) -(list) @collectionItem.iteration - ;;!! ``` ;;! ^^^ ;;!! hello @@ -76,7 +74,7 @@ ;;!! # H1 ;;!! ## H2 ( - (section) @section @_.removal + (section) @section @section.removal (#trim-end! @section) ) @@ -86,7 +84,7 @@ (atx_heading (atx_h1_marker) ) - ) @sectionLevelOne @_.removal + ) @sectionLevelOne @sectionLevelOne.removal (#trim-end! @sectionLevelOne) ) ;;!! ## H2 @@ -95,7 +93,7 @@ (atx_heading (atx_h2_marker) ) - ) @sectionLevelTwo @_.removal + ) @sectionLevelTwo @sectionLevelTwo.removal (#trim-end! @sectionLevelTwo) ) ( @@ -103,7 +101,7 @@ (atx_heading (atx_h3_marker) ) - ) @sectionLevelThree @_.removal + ) @sectionLevelThree @sectionLevelThree.removal (#trim-end! @sectionLevelThree) ) ( @@ -111,7 +109,7 @@ (atx_heading (atx_h4_marker) ) - ) @sectionLevelFour @_.removal + ) @sectionLevelFour @sectionLevelFour.removal (#trim-end! @sectionLevelFour) ) ( @@ -119,7 +117,7 @@ (atx_heading (atx_h5_marker) ) - ) @sectionLevelFive @_.removal + ) @sectionLevelFive @sectionLevelFive.removal (#trim-end! @sectionLevelFive) ) ( @@ -127,12 +125,10 @@ (atx_heading (atx_h6_marker) ) - ) @sectionLevelSix @_.removal + ) @sectionLevelSix @sectionLevelSix.removal (#trim-end! @sectionLevelSix) ) -(document) @section.iteration - ( (section (atx_heading) @section.iteration.start.endOf diff --git a/resources/queries/php.scm b/resources/queries/php.scm index 4cbe5607b1..e64d51b13e 100644 --- a/resources/queries/php.scm +++ b/resources/queries/php.scm @@ -40,8 +40,8 @@ ] @statement ( - (program) @class.iteration @statementNameValueType.iteration @namedFunction.iteration - (#document-range! @class.iteration @statementNameValueType.iteration @namedFunction.iteration) + (program) @G_class_statement_name_value_type_namedFunction.iteration + (#document-range! @G_class_statement_name_value_type_namedFunction.iteration) ) ;;!! { } @@ -56,8 +56,8 @@ ;;!! { } ;;! ^ (compound_statement - "{" @statementNameValue.iteration.start.endOf - "}" @statementNameValue.iteration.end.startOf + "{" @G_statement_name_value.iteration.start.endOf + "}" @G_statement_name_value.iteration.end.startOf ) [ @@ -134,11 +134,11 @@ ;;!! ["aaa" => 0, "bbb" => 1]; (array_creation_expression - "[" @collectionKey.iteration.start.endOf @value.iteration.start.endOf + "[" @G_collectionKey_value.iteration.start.endOf (array_element_initializer "=>" ) - "]" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "]" @G_collectionKey_value.iteration.end.startOf ) @map ;;!! ['num' => 1]; @@ -162,8 +162,8 @@ ;;!! class Foo { } ;;!! interface Foo { } (declaration_list - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ;;!! interface Foo {} @@ -175,8 +175,8 @@ (enum_declaration name: (_) @name body: (_ - "{" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - "}" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "{" @G_name_value_type.iteration.start.endOf + "}" @G_name_value_type.iteration.end.startOf ) ) @type @name.domain @@ -278,8 +278,8 @@ (_) @value ) body: (_ - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ) @value.domain @@ -385,23 +385,25 @@ (class_declaration name: (_) @name -) @_.domain +) @name.domain + (function_definition name: (_) @name -) @_.domain +) @name.domain + (method_declaration name: (_) @name -) @_.domain +) @name.domain ;;!! function foo($aaa, $bbb) {} ;;! ^^^^ ^^^^ ( (formal_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -411,11 +413,11 @@ ;;! ^^^^^ ( (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -460,8 +462,8 @@ ) (arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! foo(aaa: 0, bbb: 1); @@ -485,19 +487,19 @@ ;;!! return 0; ;;! ^ (return_statement - "return" @_.leading.endOf + "return" @value.leading.endOf (_) @value -) @_.domain +) @value.domain ;;!! yield 0; ;;! ^ (_ (yield_expression - "yield" @_.leading.endOf + "yield" @value.leading.endOf (_) @value - ) @_.domain.start + ) @value.domain.start . - ";"? @_.domain.end + ";"? @value.domain.end ) ;;!! (array ...$nums) @@ -518,16 +520,16 @@ ) (formal_parameters - "(" @type.iteration.start.endOf @name.iteration.start.endOf @value.iteration.start.endOf - ")" @type.iteration.end.startOf @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_type_name_value.iteration.start.endOf + ")" @G_type_name_value.iteration.end.startOf ) @_.domain ;;!! (int) $str; ;;! ^^^ (cast_expression type: (_) @type - value: (_) @_.removal.end.startOf -) @_.removal.start.startOf @_.domain + value: (_) @type.removal.end.startOf +) @type.removal.start.startOf @type.domain ;;!! public int $foo; ;;! ^^^ diff --git a/resources/queries/properties.scm b/resources/queries/properties.scm index f0162d75c7..86bc12fbe0 100644 --- a/resources/queries/properties.scm +++ b/resources/queries/properties.scm @@ -1,4 +1,4 @@ -(file) @statementNameValue.iteration @comment.iteration @collectionKey.iteration +(file) @G_statement_name_value.iteration @comment.iteration @collectionKey.iteration (comment) @comment @textFragment diff --git a/resources/queries/python.scm b/resources/queries/python.scm index 8cbd7ae835..c389b08936 100644 --- a/resources/queries/python.scm +++ b/resources/queries/python.scm @@ -99,7 +99,7 @@ (typed_parameter . (_) @name -) @_.domain +) @name.domain ;; Matches any node at field `type` of its parent, with leading delimiter until ;; previous named node. For example: @@ -108,20 +108,20 @@ ;;! ----------------- ;;! xxxxx (_ - (_) @_.leading.endOf + (_) @type.leading.endOf . type: (_) @type -) @_.domain +) @type.domain ;;!! map[int, str] ;;! ^^^ ^^^ (generic_type (type_parameter - (type)? @_.leading.endOf + (type)? @type.leading.endOf . (type) @type . - (type)? @_.trailing.startOf + (type)? @type.trailing.startOf ) (#insertion-delimiter! @type ", ") ) @@ -163,7 +163,7 @@ ;;! -------- (return_statement (_) @value -) @_.domain +) @value.domain ;;!! yield 1 ;;! ^ @@ -171,7 +171,7 @@ ;;! ------- (yield (_) @value -) @_.domain +) @value.domain ;;!! raise foo; ;;! ^^^ @@ -247,10 +247,10 @@ ;;!! pass ;;! --------] (function_definition - (_) @_.leading.endOf + (_) @type.leading.endOf . return_type: (_) @type -) @_.domain +) @type.domain ;;!! class Foo: ( @@ -285,8 +285,8 @@ ) ( - (module) @statement.iteration @class.iteration @namedFunction.iteration - (#document-range! @statement.iteration @class.iteration @namedFunction.iteration) + (module) @G_statement_class_namedFunction.iteration + (#document-range! @G_statement_class_namedFunction.iteration) ) ;; This is a hack to handle the case where the entire document is a `with` statement @@ -309,20 +309,20 @@ ;;! ***** ;;!! c = 2 ;;! *****> -(block) @statementNameValueType.iteration +(block) @G_statement_name_value_type.iteration ;;!! {"a": 1, "b": 2, "c": 3} ;;! ********************** (dictionary - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) ;;!! def func(a=0, b=1): ;;! ******** (parameters - "(" @value.iteration.start.endOf @name.iteration.start.endOf @type.iteration.start.endOf - ")" @value.iteration.end.startOf @name.iteration.end.startOf @type.iteration.end.startOf + "(" @G_value_name_type.iteration.start.endOf + ")" @G_value_name_type.iteration.end.startOf ) ;;!! foo() @@ -333,15 +333,15 @@ ;;! ^^^^^ (call function: (_) @functionCallee -) @_.domain +) @functionCallee.domain ;;!! { "value": 0 } ;;! ^^^^^^^ ;;! xxxxxxxxx (pair key: (_) @collectionKey - value: (_) @_.trailing.startOf -) @_.domain + value: (_) @collectionKey.trailing.startOf +) @collectionKey.domain ;;!! if True: ;;! ^^^^ @@ -351,7 +351,7 @@ ;;! ^^^^ (_ condition: (_) @condition -) @_.domain +) @condition.domain ;;!! match foo: pass ;;! ^^^ @@ -366,7 +366,7 @@ (case_clause (case_pattern) @condition.start guard: (_)? @condition.end -) @_.domain +) @condition.domain ;;!! case 0: pass ;;! ^^^^^^^^^^^^ @@ -402,9 +402,9 @@ (if_clause "if" (_) @condition - ) @_.removal - (#not-parent-type? @_.removal case_clause) -) @_.domain + ) @condition.removal + (#not-parent-type? @condition.removal case_clause) +) @condition.domain ;;!! if true: pass else: pass ;;! ^^^^^^^^^^^^^^^^^^^^^^^^ @@ -495,11 +495,11 @@ ;;! ^^^ ^^^ ( (import_statement - name: (_)? @_.leading.endOf + name: (_)? @collectionItem.leading.endOf . name: (_) @collectionItem . - name: (_)? @_.trailing.startOf + name: (_)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem ", ") ) @@ -509,13 +509,13 @@ ( (import_from_statement [ - name: (_)? @_.leading.endOf - "import" @_.leading.endOf + name: (_)? @collectionItem.leading.endOf + "import" @collectionItem.leading.endOf ] . name: (_) @collectionItem . - name: (_)? @_.trailing.startOf + name: (_)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem ", ") ) @@ -524,11 +524,11 @@ ;;! ^^^ ^^^ ( (global_statement - (identifier)? @_.leading.endOf + (identifier)? @collectionItem.leading.endOf . (identifier) @collectionItem . - (identifier)? @_.trailing.startOf + (identifier)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem ", ") ) @@ -537,11 +537,11 @@ ;;! ^^^ ^^^^^ ( (pattern_list - (identifier)? @_.leading.endOf + (identifier)? @collectionItem.leading.endOf . (identifier) @collectionItem . - (identifier)? @_.trailing.startOf + (identifier)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem ", ") ) @@ -568,13 +568,13 @@ ;;! ^^^ ^^^ (_ parameters: (_ - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - ","? @_.trailing.start.endOf + ","? @argumentOrParameter.trailing.start.endOf . - (_)? @_.trailing.end.startOf + (_)? @argumentOrParameter.trailing.end.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -584,13 +584,13 @@ ;;! ^^^ ^^^ ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - ","? @_.trailing.start.endOf + ","? @argumentOrParameter.trailing.start.endOf . - (_)? @_.trailing.end.startOf + (_)? @argumentOrParameter.trailing.end.startOf ) @_dummy (#not-type? @argumentOrParameter "comment") (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -674,8 +674,8 @@ ;;!! foo (aaa=1, bbb=2) ;;! ^^^^^^^^^^^^ (argument_list - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) (_ diff --git a/resources/queries/r.scm b/resources/queries/r.scm index 170158a36d..38577daa38 100644 --- a/resources/queries/r.scm +++ b/resources/queries/r.scm @@ -29,14 +29,14 @@ ] @statement ) -(program) @statementNameValue.iteration @namedFunction.iteration +(program) @G_statement_name_value.iteration @namedFunction.iteration ;;!! { } ;;! ^ (_ . - "{" @interior.start.endOf @statementNameValue.iteration.start.endOf - "}" @interior.end.startOf @statementNameValue.iteration.end.startOf + "{" @interior.start.endOf @G_statement_name_value.iteration.start.endOf + "}" @interior.end.startOf @G_statement_name_value.iteration.end.startOf . ) @@ -104,7 +104,7 @@ ( (arguments ( - (argument) @_.leading.endOf + (argument) @argumentOrParameter.leading.endOf . (comma) )? @@ -114,7 +114,7 @@ ( (comma) . - (argument) @_.trailing.startOf + (argument) @argumentOrParameter.trailing.startOf )? ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -125,7 +125,7 @@ ( (parameters ( - (parameter) @_.leading.endOf + (parameter) @argumentOrParameter.leading.endOf . (comma) )? @@ -135,7 +135,7 @@ ( (comma) . - (parameter) @_.trailing.startOf + (parameter) @argumentOrParameter.trailing.startOf )? ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -144,15 +144,15 @@ ;;!! foo(aaa = 0) ;;! ^^^^^^^ (arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! function(aaa, bbb){} ;;! ^^^^^^^^ (parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! foo(aaa = 0) @@ -230,10 +230,10 @@ (call function: (_) @_dummy (arguments - "(" @branch.iteration.start.endOf @condition.iteration.start.endOf + "(" @G_branch_condition.iteration.start.endOf . (argument)? @value - ")" @branch.iteration.end.startOf @condition.iteration.end.startOf + ")" @G_branch_condition.iteration.end.startOf ) (#eq? @_dummy switch) ) @value.domain diff --git a/resources/queries/ruby.scm b/resources/queries/ruby.scm index 1636ff852e..456eaeb311 100644 --- a/resources/queries/ruby.scm +++ b/resources/queries/ruby.scm @@ -103,8 +103,8 @@ ) ( - (program) @class.iteration @statementNameValue.iteration @namedFunction.iteration - (#document-range! @class.iteration @statementNameValue.iteration @namedFunction.iteration) + (program) @G_class_statement_name_value_namedFunction.iteration + (#document-range! @G_class_statement_name_value_namedFunction.iteration) ) ;;!! { } @@ -115,18 +115,18 @@ ) (_ - _ @statementNameValue.iteration.start.endOf @interior.start.endOf + _ @G_statement_name_value.iteration.start.endOf @interior.start.endOf . body: (_) . - "end" @statementNameValue.iteration.end.startOf @interior.end.startOf + "end" @G_statement_name_value.iteration.end.startOf @interior.end.startOf ) (_ - _ @statementNameValue.iteration.start.endOf @interior.start.endOf + _ @G_statement_name_value.iteration.start.endOf @interior.start.endOf . body: (_ - "end" @statementNameValue.iteration.end.startOf @interior.end.startOf + "end" @G_statement_name_value.iteration.end.startOf @interior.end.startOf ) ) @@ -157,8 +157,8 @@ receiver: (_)? @functionCallee.start method: (_) @functionCallee.end arguments: (_ - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf )? ) @functionCall @functionCallee.domain @@ -183,10 +183,10 @@ ;;!! if true end ;;! ^ (if - condition: (_) @interior.start.endOf @statementNameValue.iteration.start.endOf + condition: (_) @interior.start.endOf @G_statement_name_value.iteration.start.endOf consequence: (_) . - _ @interior.end.startOf @statementNameValue.iteration.end.startOf + _ @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) ;;!! if true elsif false end @@ -219,21 +219,21 @@ ;;!! elsif true else end ;;! ^ (elsif - condition: (_) @interior.start.endOf @statementNameValue.iteration.start.endOf - alternative: (_) @interior.end.startOf @statementNameValue.iteration.end.startOf + condition: (_) @interior.start.endOf @G_statement_name_value.iteration.start.endOf + alternative: (_) @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) ;;!! elsif true end ;;! ^ (elsif - condition: (_) @interior.start.endOf @statementNameValue.iteration.start.endOf + condition: (_) @interior.start.endOf @G_statement_name_value.iteration.start.endOf !alternative -) @interior.end.endOf @statementNameValue.iteration.end.endOf +) @interior.end.endOf @G_statement_name_value.iteration.end.endOf ;;!! else end (else - "else" @interior.start.endOf @statementNameValue.iteration.start.endOf -) @branch @interior.end.endOf @statementNameValue.iteration.end.endOf + "else" @interior.start.endOf @G_statement_name_value.iteration.start.endOf +) @branch @interior.end.endOf @G_statement_name_value.iteration.end.endOf ;;!! begin rescue end ;;!! begin end @@ -286,8 +286,8 @@ ;;! ^^^ ;;! ^ (class - name: (_) @name @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "end" @class.iteration.end.startOf @namedFunction.iteration.end.startOf + name: (_) @name @G_class_namedFunction.iteration.start.endOf + "end" @G_class_namedFunction.iteration.end.startOf ) @class @name.domain ;;!! def foo() end @@ -337,8 +337,8 @@ ;;!! case foo when 0 end ;;! ^^^^^^^^ (case - value: (_) @interior.start.endOf @condition.iteration.start.endOf @branch.iteration.start.endOf - "end" @interior.end.startOf @condition.iteration.end.startOf @branch.iteration.end.startOf + value: (_) @interior.start.endOf @G_condition_branch.iteration.start.endOf + "end" @interior.end.startOf @G_condition_branch.iteration.end.startOf ) ;;!! case foo in 0 end @@ -350,8 +350,8 @@ ;;!! case foo in 0 end ;;! ^^^^^^ (case_match - value: (_) @interior.start.endOf @condition.iteration.start.endOf @branch.iteration.start.endOf - "end" @interior.end.startOf @condition.iteration.end.startOf @branch.iteration.end.startOf + value: (_) @interior.start.endOf @G_condition_branch.iteration.start.endOf + "end" @interior.end.startOf @G_condition_branch.iteration.end.startOf ) ;;!! when 0 @@ -372,11 +372,11 @@ ;;! ^^^ ^^^ ( (string_array - (bare_string)? @_.leading.endOf + (bare_string)? @collectionItem.leading.endOf . (bare_string) @collectionItem . - (bare_string)? @_.trailing.startOf + (bare_string)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem " ") ) @@ -385,11 +385,11 @@ ;;! ^^^ ^^^ ( (symbol_array - (bare_symbol)? @_.leading.endOf + (bare_symbol)? @collectionItem.leading.endOf . (bare_symbol) @collectionItem . - (bare_symbol)? @_.trailing.startOf + (bare_symbol)? @collectionItem.trailing.startOf ) (#insertion-delimiter! @collectionItem " ") ) @@ -458,8 +458,8 @@ ;;!! {"1" => "one", "2" => "two"} ;;! ^^^^^^^^^^^^^^^^^^^^^^^^^^ (hash - "{" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @G_collectionKey_value.iteration.start.endOf + "}" @G_collectionKey_value.iteration.end.startOf ) ;;!! return 0 @@ -486,11 +486,11 @@ ;;! ^^^ ^^^ ( (method_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -499,11 +499,11 @@ ;;! ^^^ ^^^ ( (lambda_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -512,11 +512,11 @@ ;;! ^^^ ^^^ ( (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -525,11 +525,11 @@ ;;! ^^^ ^^^ ( (block_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -546,8 +546,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (method_parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! def foo(aaa, bbb = 0) @@ -575,8 +575,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (lambda_parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! ->(aaa, bbb = 0) diff --git a/resources/queries/rust.scm b/resources/queries/rust.scm index 0df928e9af..4d6e81fa87 100644 --- a/resources/queries/rust.scm +++ b/resources/queries/rust.scm @@ -33,16 +33,16 @@ ) ( - (source_file) @statementNameValueType.iteration @class.iteration @namedFunction.iteration - (#document-range! @statementNameValueType.iteration @class.iteration @namedFunction.iteration) + (source_file) @G_statement_name_value_type_class_namedFunction.iteration + (#document-range! @G_statement_name_value_type_class_namedFunction.iteration) ) ;;!! { } ;;! ^ (_ . - "{" @interior.start.endOf @statementNameValueType.iteration.start.endOf - "}" @interior.end.startOf @statementNameValueType.iteration.end.startOf + "{" @interior.start.endOf @G_statement_name_value_type.iteration.start.endOf + "}" @interior.end.startOf @G_statement_name_value_type.iteration.end.startOf . ) @@ -172,7 +172,7 @@ ;;!! fn foo() -> int {} ;;! ^^^ (function_item - parameters: (_) @_.leading.endOf + parameters: (_) @type.leading.endOf return_type: (_)? @type ) @type.domain @@ -221,7 +221,7 @@ (call_expression function: (_) @functionCallee -) @_.domain +) @functionCallee.domain ;;!! || -> i32 {} ;;! ^^^^^^^^^^^^ @@ -241,16 +241,16 @@ ;;!! let Foo {bar: baz} = bongo; ;;! ^^^^^^^^ (struct_pattern - "{" @map.start @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "}" @map.end @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "{" @map.start @G_collectionKey_value.iteration.start.endOf + "}" @map.end @G_collectionKey_value.iteration.end.startOf ) ;;!! match value {} (match_expression value: (_) @value body: (_ - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ) @value.domain @@ -263,8 +263,8 @@ (_ (mutable_specifier) @attribute . - (_) @_.trailing.startOf -) @_.domain + (_) @attribute.trailing.startOf +) @attribute.domain ;;!! let Foo {aaa: 0, bbb: 1} ;;! ^^^ ^^^ @@ -333,7 +333,7 @@ (return_expression (_) @value ) -) @_.domain +) @value.domain ;; Implicit return value at end of function body (function_item @@ -382,14 +382,14 @@ ;;! ^^^^^ (while_expression condition: (_) @condition -) @_.domain +) @condition.domain ;;!! while let Some(i) = number {} ;;! ^^^^^^^^^^^^^^^^^^^^ (while_let_expression "let" @condition.start value: (_) @condition.end -) @_.domain +) @condition.domain ;;!! match value { 5 => {} } ;;! ^^^^^^^ @@ -399,11 +399,11 @@ ;;! ^^^^^^^^^^^ (match_arm (match_pattern - (_) @_.leading.endOf + (_) @condition.leading.endOf . condition: (_) @condition ) -) @_.domain +) @condition.domain ;;!! match value { 5 => {} } ;;! ^^^^^^^ @@ -423,16 +423,17 @@ (array_type element: (_) @type -) @_.domain +) @type.domain + ;;!! fn foo(a: u32, b: u32) -> {} ;;! ^^^^^^ ^^^^^^ (_ parameters: (_ - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -459,11 +460,11 @@ [ "(" "|" - ] @name.iteration.start.endOf @type.iteration.start.endOf + ] @G_name_type.iteration.start.endOf [ ")" "|" - ] @name.iteration.end.startOf @type.iteration.end.startOf + ] @G_name_type.iteration.end.startOf ) ) @@ -471,11 +472,11 @@ ;;! ^^^ ^^^ (_ (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -495,11 +496,11 @@ ;;! ^^^ ^^^ (_ (ordered_field_declaration_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -518,11 +519,11 @@ ;;! ^^^ ^^^ (_ (meta_arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -541,11 +542,11 @@ ;;! ^^^^^^^^^^ ^^^^^^^^ (_ (type_parameters - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) @@ -563,11 +564,11 @@ ;;! ^^^^^^^^^^ ^^^^^^^^ ( (where_clause - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) @@ -596,11 +597,11 @@ ;;! ^^^ ^^^ (generic_type (type_arguments - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) @@ -615,7 +616,7 @@ (type_cast_expression value: (_) @type.leading.endOf type: (_) @type -) @_.domain +) @type.domain (_ operator: [ diff --git a/resources/queries/scala.scm b/resources/queries/scala.scm index 30cfa374ea..4417adef74 100644 --- a/resources/queries/scala.scm +++ b/resources/queries/scala.scm @@ -37,8 +37,8 @@ ] @type ( - (compilation_unit) @class.iteration @statementNameValueType.iteration @namedFunction.iteration - (#document-range! @class.iteration @statementNameValueType.iteration @namedFunction.iteration) + (compilation_unit) @G_class_statement_name_value_type_namedFunction.iteration + (#document-range! @G_class_statement_name_value_type_namedFunction.iteration) ) ;;!! { } @@ -112,15 +112,15 @@ ;;!! class Foo { } ;;! ^ (template_body - "{" @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @class.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_class_namedFunction.iteration.start.endOf + "}" @G_class_namedFunction.iteration.end.startOf ) ;;!! { } ;;! ^ (_ - "{" @statementNameValueType.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf + "{" @G_statement_name_value_type.iteration.start.endOf + "}" @G_statement_name_value_type.iteration.end.startOf ) ;;!! foo() @@ -167,8 +167,8 @@ (match_expression value: (_) @value (case_block - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) ) @value.domain @@ -406,11 +406,11 @@ ;;! ^ ^ ^ ( (identifiers - (_)? @_.leading.endOf + (_)? @collectionItem.leading.endOf . (_) @collectionItem . - (_)? @_.trailing.startOf + (_)? @collectionItem.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @collectionItem @_dummy ", " ",\n") ) @@ -419,11 +419,11 @@ ;;! ^^^ ^^^ ( (type_arguments - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @type @_dummy ", " ",\n") ) @@ -439,11 +439,11 @@ ;;! ^^^^^^^^ ^^^^^^^^ ( (class_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -452,11 +452,11 @@ ;;! ^^^^^^^^ ^^^^^^^^ ( (parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -465,11 +465,11 @@ ;;! ^^^^^^^^ ^^^^^^^^ (lambda_expression (bindings - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -478,11 +478,11 @@ ;;! ^^^ ^^^ ( (arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -499,8 +499,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (class_parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! def foo(aaa: Int, bbb: Int) {} @@ -515,8 +515,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! (aaa: Int, bbb: Int) => {} @@ -531,8 +531,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (bindings - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! foo(aaa, bbb) @@ -547,8 +547,8 @@ ) @argumentList.domain @argumentOrParameter.iteration.domain (arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) (_ diff --git a/resources/queries/scm.name.scm b/resources/queries/scm.name.scm index 247b0ad971..fe9c874208 100644 --- a/resources/queries/scm.name.scm +++ b/resources/queries/scm.name.scm @@ -8,10 +8,10 @@ (capture) @name.start (capture)? @name.end . - ) @_.domain - (#not-type? @_.domain parameters) + ) @name.domain + (#not-type? @name.domain parameters) (#not-type? @_dummy capture) - (#not-parent-type? @_.domain field_definition) + (#not-parent-type? @name.domain field_definition) ) ;;!! eee: (aaa) @bbb @ccc @@ -26,7 +26,7 @@ (capture)? @name.end . ) - ) @_.domain + ) @name.domain (#not-type? @_dummy capture) ) diff --git a/resources/queries/scm.scm b/resources/queries/scm.scm index 4f5c6cc973..60e42d849c 100644 --- a/resources/queries/scm.scm +++ b/resources/queries/scm.scm @@ -7,7 +7,7 @@ ( (program (_) @statement - ) @_.iteration + ) @statement.iteration (#not-type? @statement comment) ) @@ -58,7 +58,7 @@ ;;! ---------- (named_node name: _ @type -) @_.domain +) @type.domain ;;!! "aaa" @bbb ;;! ^^^ @@ -70,7 +70,7 @@ (string_content) @type ) ] -) @_.domain +) @type.domain ;;!! aaa: (bbb) @ccc ;;! ^^^ @@ -79,8 +79,8 @@ (field_definition name: (identifier) @collectionKey . - (_) @_.trailing.startOf -) @_.domain + (_) @collectionKey.trailing.startOf +) @collectionKey.domain ;;!! aaa: (bbb) @ccc ;;! ^^^^^ @@ -100,7 +100,7 @@ ] @value.end (quantifier)? @value.end ) @value.start.startOf -) @_.domain +) @value.domain ;;!! aaa: "bbb" @ccc ;;! ^^^^^ @@ -115,4 +115,4 @@ ] @value.end (quantifier)? @value.end ) @value.start.startOf -) @_.domain +) @value.domain diff --git a/resources/queries/scss.scm b/resources/queries/scss.scm index c6d3ee206b..3a9b9bc073 100644 --- a/resources/queries/scss.scm +++ b/resources/queries/scss.scm @@ -88,17 +88,17 @@ (declaration (variable_name) @name -) @_.domain +) @name.domain ;;!! replace-text($image, $color: red) ;;! ^^^^^^ ^^^^^^^^^^^ ( (parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") ) @@ -111,8 +111,8 @@ ) @argumentOrParameter.iteration.domain (parameters - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! foo($foo: 123) @@ -126,13 +126,13 @@ ) ( - (stylesheet) @namedFunction.iteration @name.iteration - (#document-range! @namedFunction.iteration @name.iteration) + (stylesheet) @G_namedFunction_name.iteration + (#document-range! @G_namedFunction_name.iteration) ) (block - "{" @namedFunction.iteration.start.endOf @name.iteration.start.endOf - "}" @namedFunction.iteration.end.startOf @name.iteration.end.startOf + "{" @G_namedFunction_name.iteration.start.endOf + "}" @G_namedFunction_name.iteration.end.startOf ) (binary_expression @@ -149,10 +149,10 @@ (include_statement (identifier) @value.start (arguments) @value.end -) @_.domain +) @value.domain ;;!! @return 123 ;;! ^^^ (return_statement (_) @value -) @_.domain +) @value.domain diff --git a/resources/queries/shellscript.scm b/resources/queries/shellscript.scm index c03be38098..da5e442cde 100644 --- a/resources/queries/shellscript.scm +++ b/resources/queries/shellscript.scm @@ -57,8 +57,8 @@ ] ( - (program) @statementNameValue.iteration @namedFunction.iteration - (#document-range! @statementNameValue.iteration @namedFunction.iteration) + (program) @G_statement_name_value_namedFunction.iteration + (#document-range! @G_statement_name_value_namedFunction.iteration) ) ;;!! [[ $foo =~ ^\w+$ ]] @@ -76,7 +76,7 @@ ;; Require the brackets and assignment before treating an array as a map. ( (array - "(" @collectionKey.iteration.start.endOf @value.iteration.start.endOf + "(" @G_collectionKey_value.iteration.start.endOf (concatenation . (word) @_open @@ -87,7 +87,7 @@ . (word) @_assignment ) - ")" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + ")" @G_collectionKey_value.iteration.end.startOf ) @map (#eq? @_open "[") (#eq? @_close "]") @@ -166,8 +166,8 @@ ;;!! if true; then :; fi ( (if_statement - "then" @interior.start.endOf @statementNameValue.iteration.start.endOf - "fi" @interior.end.startOf @statementNameValue.iteration.end.startOf + "then" @interior.start.endOf @G_statement_name_value.iteration.start.endOf + "fi" @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) @branch (#not-child-type? @branch elif_clause else_clause) ) @@ -176,13 +176,13 @@ ( (if_statement "if" @branch.start @branch.removal.start - "then" @interior.start.endOf @statementNameValue.iteration.start.endOf + "then" @interior.start.endOf @G_statement_name_value.iteration.start.endOf (_) @branch.end @branch.removal.end . [ (elif_clause) (else_clause) - ] @branch.removal.end.startOf @interior.end.startOf @statementNameValue.iteration.end.startOf + ] @branch.removal.end.startOf @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) (#not-type? @branch.end elif_clause else_clause) (#shrink-to-match! @branch.removal.end.startOf "^(?:el(?=if\\b))?(?.*)") @@ -193,19 +193,19 @@ ( (elif_clause (_) @condition - "then" @interior.start.endOf @statementNameValue.iteration.start.endOf + "then" @interior.start.endOf @G_statement_name_value.iteration.start.endOf ) @branch @branch.removal.start @condition.domain . - _ @branch.removal.end.startOf @interior.end.startOf @statementNameValue.iteration.end.startOf + _ @branch.removal.end.startOf @interior.end.startOf @G_statement_name_value.iteration.end.startOf (#trim-end! @branch) ) ;;!! else :; fi ( (else_clause - "else" @interior.start.endOf @statementNameValue.iteration.start.endOf + "else" @interior.start.endOf @G_statement_name_value.iteration.start.endOf ) @branch @branch.removal.start - "fi" @branch.removal.end.startOf @interior.end.startOf @statementNameValue.iteration.end.startOf + "fi" @branch.removal.end.startOf @interior.end.startOf @G_statement_name_value.iteration.end.startOf (#trim-end! @branch) ) @@ -225,8 +225,8 @@ ;;! ^ (case_statement value: (_) @value - "in" @interior.start.endOf @branch.iteration.start.endOf @condition.iteration.start.endOf - "esac" @interior.end.startOf @branch.iteration.end.startOf @condition.iteration.end.startOf + "in" @interior.start.endOf @G_branch_condition.iteration.start.endOf + "esac" @interior.end.startOf @G_branch_condition.iteration.end.startOf ) @value.domain ;;!! 0) : ;; @@ -249,12 +249,12 @@ ] @condition.domain (case_item - ")" @interior.start.endOf @statementNameValue.iteration.start.endOf + ")" @interior.start.endOf @G_statement_name_value.iteration.start.endOf [ ";;" ";&" ";;&" - ] @interior.end.startOf @statementNameValue.iteration.end.startOf + ] @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) @branch ;;!! return 0 @@ -272,22 +272,22 @@ ;;!! do :; done ;;! ^^^^ (do_group - "do" @interior.start.endOf @statementNameValue.iteration.start.endOf - "done" @interior.end.startOf @statementNameValue.iteration.end.startOf + "do" @interior.start.endOf @G_statement_name_value.iteration.start.endOf + "done" @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) ;;!! foo() { } ;;! ^ (compound_statement - "{" @interior.start.endOf @statementNameValue.iteration.start.endOf - "}" @interior.end.startOf @statementNameValue.iteration.end.startOf + "{" @interior.start.endOf @G_statement_name_value.iteration.start.endOf + "}" @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) ;;!! foo() ( : ) ;;! ^^^ (subshell - "(" @interior.start.endOf @statementNameValue.iteration.start.endOf - ")" @interior.end.startOf @statementNameValue.iteration.end.startOf + "(" @interior.start.endOf @G_statement_name_value.iteration.start.endOf + ")" @interior.end.startOf @G_statement_name_value.iteration.end.startOf ) ;;!! # foo @@ -332,11 +332,11 @@ (_ (command name: (_) - argument: (_)? @_.leading.endOf + argument: (_)? @argumentOrParameter.leading.endOf . argument: (_) @argumentOrParameter . - argument: (_)? @_.trailing.startOf + argument: (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy " " " \\\n") ) @@ -361,19 +361,10 @@ ;;! ^^^ (declaration_command (variable_assignment - name: (_) @name - value: (_) @_.removal.end.startOf - ) -) @name.domain @_.removal.start.startOf - -;;!! local foo="bar" -;;! ^^^ -(declaration_command - (variable_assignment - name: (_) @_.leading.endOf - value: (_) @value + name: (_) @name @value.leading.endOf + value: (_) @value @name.removal.end.startOf ) -) @value.domain +) @_.domain @name.removal.start.startOf ;;!! local foo ;;! ^^^ diff --git a/resources/queries/swift.scm b/resources/queries/swift.scm index 8556407dc6..d9d60e73c9 100644 --- a/resources/queries/swift.scm +++ b/resources/queries/swift.scm @@ -25,24 +25,16 @@ ;; document-wide ( - (source_file) @statementNameValueType.iteration @class.iteration @namedFunction.iteration - (#document-range! @statementNameValueType.iteration @class.iteration @namedFunction.iteration) + (source_file) @G_statement_name_value_type_class_namedFunction.iteration + (#document-range! @G_statement_name_value_type_class_namedFunction.iteration) ) ;;!! { } ;;! ^ ( (_ - "{" @statementNameValueType.iteration.start.endOf @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf @class.iteration.end.startOf @namedFunction.iteration.end.startOf - ) @_dummy - (#not-type? @_dummy if_statement lambda_literal) -) - -( - (_ - "{" @interior.start.endOf - "}" @interior.end.startOf + "{" @interior.start.endOf @G_statement_name_value_type_class_namedFunction.iteration.start.endOf + "}" @interior.end.startOf @G_statement_name_value_type_class_namedFunction.iteration.end.startOf ) @_dummy (#not-type? @_dummy if_statement lambda_literal) ) @@ -146,8 +138,8 @@ ;;! ^ ( (if_statement - "{" @statementNameValueType.iteration.start.endOf @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf @class.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_statement_name_value_type_class_namedFunction.iteration.start.endOf + "}" @G_statement_name_value_type_class_namedFunction.iteration.end.startOf ) @_dummy (#not-child-type? @_dummy else) ) @@ -167,8 +159,8 @@ ;;! ^ ( (if_statement - "{" @statementNameValueType.iteration.start.endOf @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf @class.iteration.end.startOf @namedFunction.iteration.end.startOf + "{" @G_statement_name_value_type_class_namedFunction.iteration.start.endOf + "}" @G_statement_name_value_type_class_namedFunction.iteration.end.startOf (else) ) ) @@ -198,19 +190,13 @@ (#not-child-type? @_dummy else) ) -;;!! else {} -( - (else) @branch.start - "{" @interior.start.endOf - "}" @branch.end @interior.end.startOf -) - ;;!! else { } +;;! ^^^^^^^^ ;;! ^ ( - (else) - "{" @statementNameValueType.iteration.start.endOf @class.iteration.start.endOf @namedFunction.iteration.start.endOf - "}" @statementNameValueType.iteration.end.startOf @class.iteration.end.startOf @namedFunction.iteration.end.startOf + (else) @branch.start + "{" @interior.start.endOf @G_statement_name_value_type_class_namedFunction.iteration.start.endOf + "}" @branch.end @interior.end.startOf @G_statement_name_value_type_class_namedFunction.iteration.end.startOf ) ;;!! var foo: Int = 0 @@ -357,8 +343,8 @@ ;;! ^ (switch_statement expr: (_) @value - "{" @branch.iteration.start.endOf @condition.iteration.start.endOf - "}" @branch.iteration.end.startOf @condition.iteration.end.startOf + "{" @G_branch_condition.iteration.start.endOf + "}" @G_branch_condition.iteration.end.startOf ) @value.domain ;;!! case 0: break @@ -445,28 +431,19 @@ ;;!! [aaa: 0, bbb: 1] (dictionary_literal - "[" @collectionKey.iteration.start.endOf @value.iteration.start.endOf - "]" @collectionKey.iteration.end.startOf @value.iteration.end.startOf + "[" @G_collectionKey_value.iteration.start.endOf + "]" @G_collectionKey_value.iteration.end.startOf ) @map ;;!! [aaa: 0, bbb: 1] ;;! ^^^ ^^^ -(dictionary_literal - key: (_) @collectionKey @collectionKey.domain.start - . - ":" - . - value: (_) @collectionKey.trailing.startOf @collectionKey.domain.end -) - -;;!! [aaa: 0, bbb: 1] ;;! ^ ^ (dictionary_literal - key: (_) @value.leading.endOf @value.domain.start + key: (_) @collectionKey @value.leading.endOf @G_collectionKey_value.domain.start . ":" . - value: (_) @value @value.domain.end + value: (_) @collectionKey.trailing.startOf @value @G_collectionKey_value.domain.end ) ;;!! foo as Int @@ -508,11 +485,11 @@ ;;! ^^^^^^^^ ^^^^^^^^ ( (_ - (parameter)? @_.leading.endOf + (parameter)? @argumentOrParameter.leading.endOf . (parameter) @argumentOrParameter . - (parameter)? @_.trailing.startOf + (parameter)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment multiline_comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -522,11 +499,11 @@ ;;! ^^^ ^^^ ( (lambda_function_type_parameters - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment multiline_comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -536,11 +513,11 @@ ;;! ^^^ ^^^ ( (value_arguments - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) @_dummy (#not-type? @argumentOrParameter comment multiline_comment) (#single-or-multi-line-delimiter! @argumentOrParameter @_dummy ", " ",\n") @@ -639,8 +616,8 @@ ;;!! foo(aaa: 0, bbb: 1) ;;! ^^^^^^^^^^^^^^ (value_arguments - "(" @name.iteration.start.endOf @value.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf + "(" @G_name_value.iteration.start.endOf + ")" @G_name_value.iteration.end.startOf ) ;;!! func bar(aaa: Int, bbb: Int = 0) {} @@ -664,15 +641,15 @@ ;;!! func bar(aaa: Int, bbb: Int) {} ;;! ^^^^^^^^^^^^^^^^^^ (function_declaration - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! init(aaa: Int, bbb: Int) {} ;;! ^^^^^^^^^^^^^^^^^^ (init_declaration - "(" @name.iteration.start.endOf @value.iteration.start.endOf @type.iteration.start.endOf - ")" @name.iteration.end.startOf @value.iteration.end.startOf @type.iteration.end.startOf + "(" @G_name_value_type.iteration.start.endOf + ")" @G_name_value_type.iteration.end.startOf ) ;;!! { (aaa: Int, bbb: Int) in } diff --git a/resources/queries/talon-list.scm b/resources/queries/talon-list.scm index 5be60ffea0..ae48c7406a 100644 --- a/resources/queries/talon-list.scm +++ b/resources/queries/talon-list.scm @@ -26,7 +26,7 @@ modifiers: (_)? @collectionKey.start left: _ @collectionKey.end right: (_) @collectionKey.trailing.startOf -) @_.domain +) @collectionKey.domain ;;!! # foo ;;! ^^^^^ @@ -39,6 +39,6 @@ ) @string ( - (source_file) @statementNameValue.iteration @collectionKey.iteration - (#document-range! @statementNameValue.iteration @collectionKey.iteration) + (source_file) @G_statement_name_value_collectionKey.iteration + (#document-range! @G_statement_name_value_collectionKey.iteration) ) diff --git a/resources/queries/talon.scm b/resources/queries/talon.scm index a401454779..640d4840ad 100644 --- a/resources/queries/talon.scm +++ b/resources/queries/talon.scm @@ -57,8 +57,8 @@ modifiers: (_)? @collectionKey.start left: _ @collectionKey.end right: (_) @collectionKey.trailing.startOf - ) @_.domain - (#not-type? @_.domain binary_operator assignment_statement) + ) @collectionKey.domain + (#not-type? @collectionKey.domain binary_operator assignment_statement) ) ;;!! foo = 0 @@ -72,24 +72,24 @@ ;;!! mode: command ;;! ^^^^^^^^^^^^^ (matches - (_) @name.iteration.end.endOf @collectionKey.iteration.end.endOf @value.iteration.end.endOf + (_) @G_name_collectionKey_value.iteration.end.endOf . -) @name.iteration.start.startOf @collectionKey.iteration.start.startOf @value.iteration.start.startOf +) @G_name_collectionKey_value.iteration.start.startOf ;;!! hello: "world" ;;! ^^^^^^^^^^^^^^ -(declarations) @name.iteration @collectionKey.iteration @value.iteration +(declarations) @G_name_collectionKey_value.iteration ;;!! hello: "world" ;;! ^^^^^^^ ;;!! settings(): ;;!! speech.debug = 1 ;;! ^^^^^^^^^^^^^^^^ -(block) @statementNameValue.iteration @collectionKey.iteration +(block) @G_statement_name_value_collectionKey.iteration ( - (source_file) @command.iteration @statementNameValue.iteration @collectionKey.iteration - (#document-range! @command.iteration @statementNameValue.iteration @collectionKey.iteration) + (source_file) @G_command_statement_name_value_collectionKey.iteration + (#document-range! @G_command_statement_name_value_collectionKey.iteration) ) ;;!! tag: user.foo @@ -111,9 +111,9 @@ (matches (_) @condition.end.endOf . - "-" @_.trailing + "-" @condition.trailing ) @condition.start.startOf -) @_.domain +) @condition.domain ;;!! slap: key(enter) ;;! ^^^^^^^^^^^^^^^^ @@ -145,7 +145,7 @@ ;;! ^^^^^^^^^-- (action action_name: (_) @functionCallee -) @_.domain +) @functionCallee.domain ;;!! key(enter) ;;! ^^^------- @@ -153,7 +153,7 @@ [ (key_action) (sleep_action) - ] @functionCallee @_.domain + ] @functionCallee @functionCallee.domain ;; There is no node just for the function callee, so we have to shrink the function call to just the callee (#shrink-to-match! @functionCallee "\\w+") ) @@ -174,11 +174,11 @@ ;;! ^^^^^^^ ^^^^^^^ (action arguments: (argument_list - (_)? @_.leading.endOf + (_)? @argumentOrParameter.leading.endOf . (_) @argumentOrParameter . - (_)? @_.trailing.startOf + (_)? @argumentOrParameter.trailing.startOf ) (#insertion-delimiter! @argumentOrParameter ", ") ) diff --git a/resources/queries/typescript.core.scm b/resources/queries/typescript.core.scm index c762b0e4a7..e00472c624 100644 --- a/resources/queries/typescript.core.scm +++ b/resources/queries/typescript.core.scm @@ -20,29 +20,29 @@ (identifier) @value.leading.endOf value: (_) @value !type -) @_.domain +) @value.domain ;;!! function foo(aaa: number = 0) {} ;;! ^^^------------ (required_parameter type: (_) @value.leading.endOf value: (_) @value -) @_.domain +) @value.domain ;;!! function foo(aaa?: Ccc = "ddd") {} ;;! ^^^-------------- (optional_parameter type: (_) @value.leading.endOf value: (_) @value -) @_.domain +) @value.domain ;;!! enum Foo { } ;;! ^^^^^^^^^^^^ ;;! ^ (enum_declaration (enum_body - "{" @name.iteration.start.endOf @value.iteration.start.endOf - "}" @name.iteration.end.startOf @value.iteration.end.startOf + "{" @G_name_value.iteration.start.endOf + "}" @G_name_value.iteration.end.startOf ) ) @type @@ -64,13 +64,13 @@ ;;! ^^^------------ (required_parameter (identifier) @name -) @_.domain +) @name.domain ;;!! function foo(aaa?: number) {} ;;! ^^^--------- (optional_parameter (identifier) @name -) @_.domain +) @name.domain ;;!! function foo(...aaa: number[]) {} ;;! ^^^ @@ -78,7 +78,7 @@ (rest_pattern (identifier) @name ) -) @_.domain +) @name.domain ;; Define these here because these node types don't exist in javascript. @@ -267,8 +267,8 @@ ) @type.removal ) ) - ] @_.domain - (#not-parent-type? @_.domain export_statement) + ] @type.domain + (#not-parent-type? @type.domain export_statement) ;; Handle multiple variable declarators in one statement, eg ;;!! (let | const | var) aaa: Bbb = ..., ccc: Ddd = ...; @@ -289,7 +289,7 @@ ) @type.removal ) ) - ) @_.domain + ) @type.domain ;; Handle multiple variable declarators in one statement, eg ;;!! export (let | const | var) aaa: Bbb = ..., ccc: Ddd = ...; @@ -310,7 +310,7 @@ type: (type_annotation (_) @type ) @type.removal - ) @_.domain + ) @type.domain ) @_dummy (#has-multiple-children-of-type? @_dummy variable_declarator) ) @@ -319,24 +319,24 @@ ;;! ^^^^^^ (formal_parameters (required_parameter - pattern: (_) @_.leading.endOf + pattern: (_) @type.leading.endOf type: (_ ":" (_) @type ) - ) @_.domain + ) @type.domain ) ;;!! function ccc(aaa?: string) {} ;;! ^^^^^^ (formal_parameters (optional_parameter - "?" @_.leading.endOf + "?" @type.leading.endOf type: (_ ":" (_) @type ) - ) @_.domain + ) @type.domain ) ;;!! function ccc(): string {} @@ -344,17 +344,17 @@ ;;!! ccc(): string {} ;;! ^^^^^^ (_ - parameters: (_) @_.leading.endOf + parameters: (_) @type.leading.endOf return_type: (_ ":" (_) @type ) -) @_.domain +) @type.domain ;;!! foo() => string; ;;! ^^^^^^ (_ - parameters: (_) @_.leading.endOf + parameters: (_) @type.leading.endOf "=>" return_type: (_) @type ) @@ -372,11 +372,11 @@ ;;! ^^^^^^ ( (type_arguments - (_)? @_.leading.endOf + (_)? @type.leading.endOf . (_) @type . - (_)? @_.trailing.startOf + (_)? @type.trailing.startOf ) @_dummy (#not-parent-type? @_dummy type_assertion) (#insertion-delimiter! @type ", ") @@ -445,30 +445,30 @@ ;;! xxxxxxx ;;! ---------- (as_expression - (_) @_.leading.endOf + (_) @type.leading.endOf (_) @type -) @_.domain +) @type.domain ;;!! aaa as const ;;! ^^^ ;;! xxxxxxx ;;! ---------- (as_expression - (_) @_.leading.endOf + (_) @type.leading.endOf "const" @type -) @_.domain +) @type.domain ;;!! aaa satisfies Bbb ;;! ^^^ ;;! xxxxxxxxxxxxxx ;;! ----------------- (satisfies_expression - (_) @_.leading.endOf + (_) @type.leading.endOf [ (generic_type) (predefined_type) ] @type -) @_.domain +) @type.domain ;;!! abstract class MyClass {} ;;! ^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/resources/queries/typescript.scm b/resources/queries/typescript.scm index f98a445505..31ba39ff87 100644 --- a/resources/queries/typescript.scm +++ b/resources/queries/typescript.scm @@ -9,5 +9,5 @@ (type_assertion (type_arguments (_) @type - ) @_.removal -) @_.domain + ) @type.removal +) @type.domain diff --git a/resources/queries/xml.scm b/resources/queries/xml.scm index bc6f1aa79b..964ef84c71 100644 --- a/resources/queries/xml.scm +++ b/resources/queries/xml.scm @@ -5,14 +5,14 @@ ;;! ----- (STag (Name) @name -) @_.domain +) @name.domain ;;!!
;;! ^^^ ;;! ------ (ETag (Name) @name -) @_.domain +) @name.domain ;;!! ;;! ^^^^^^^ @@ -60,24 +60,24 @@ (ETag) ] @xmlBothTags (#allow-multiple! @xmlBothTags) -) @_.domain +) @xmlBothTags.domain ;;!! text ;;!! (element) @xmlElement (element - (STag) @xmlElement.iteration.start.endOf @xmlBothTags.iteration.start.endOf + (STag) @G_xmlElement_xmlBothTags.iteration.start.endOf (content (element) ) - (ETag) @xmlElement.iteration.end.startOf @xmlBothTags.iteration.end.startOf + (ETag) @G_xmlElement_xmlBothTags.iteration.end.startOf ) (_ - (STag) @xmlStartTag.iteration.start.endOf @xmlEndTag.iteration.start.endOf + (STag) @G_xmlStartTag_xmlEndTag.iteration.start.endOf (content (element) ) - (ETag) @xmlStartTag.iteration.end.startOf @xmlEndTag.iteration.end.startOf + (ETag) @G_xmlStartTag_xmlEndTag.iteration.end.startOf )