diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 8606829da6..aa6154aa91 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -7,6 +7,7 @@ "dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "jrieken.vscode-tree-sitter-query", - "wenkokke.tree-sitter-talon" + "wenkokke.tree-sitter-talon", + "usernamehw.commands" ] } diff --git a/data/fixtures/scopes/csharp/class.scope b/data/fixtures/scopes/csharp/class.scope new file mode 100644 index 0000000000..9096a8a95e --- /dev/null +++ b/data/fixtures/scopes/csharp/class.scope @@ -0,0 +1,10 @@ +public class BankAccount {} +--- + +[Content] = +[Removal] = +[Domain] = 0:0-0:27 + >---------------------------< +0| public class BankAccount {} + +[Insertion delimiter] = "\n\n" diff --git a/packages/common/src/scopeSupportFacets/csharp.ts b/packages/common/src/scopeSupportFacets/csharp.ts index 1e259b306f..26bda305b7 100644 --- a/packages/common/src/scopeSupportFacets/csharp.ts +++ b/packages/common/src/scopeSupportFacets/csharp.ts @@ -10,4 +10,5 @@ const { supported, unsupported, notApplicable } = ScopeSupportFacetLevel; export const csharpScopeSupport: LanguageScopeSupportFacetMap = { ifStatement: supported, + class: supported, }; diff --git a/packages/cursorless-engine/src/languages/csharp.ts b/packages/cursorless-engine/src/languages/csharp.ts index 462d710c30..f4ab96ff30 100644 --- a/packages/cursorless-engine/src/languages/csharp.ts +++ b/packages/cursorless-engine/src/languages/csharp.ts @@ -141,7 +141,6 @@ const nodeMatchers: Partial< Record > = { ...getMapMatchers, - class: "class_declaration", className: "class_declaration[name]", condition: cascadingMatcher( conditionMatcher("*[condition]"), diff --git a/queries/csharp.scm b/queries/csharp.scm index 2e7dd0a7f3..3a162e9ff9 100644 --- a/queries/csharp.scm +++ b/queries/csharp.scm @@ -1 +1,2 @@ (if_statement) @ifStatement +(class_declaration) @class