From 664064b3cca49479c3e893f4865e64cb587d2f61 Mon Sep 17 00:00:00 2001 From: Sora Date: Sat, 22 Oct 2022 00:32:29 +0200 Subject: [PATCH] Add textobjects.scm for zig (#4409) --- book/src/generated/lang-support.md | 2 +- runtime/queries/zig/textobjects.scm | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 runtime/queries/zig/textobjects.scm diff --git a/book/src/generated/lang-support.md b/book/src/generated/lang-support.md index c6edc66d4..caf5d525b 100644 --- a/book/src/generated/lang-support.md +++ b/book/src/generated/lang-support.md @@ -126,4 +126,4 @@ | wgsl | ✓ | | | `wgsl_analyzer` | | xit | ✓ | | | | | yaml | ✓ | | ✓ | `yaml-language-server` | -| zig | ✓ | | ✓ | `zls` | +| zig | ✓ | ✓ | ✓ | `zls` | diff --git a/runtime/queries/zig/textobjects.scm b/runtime/queries/zig/textobjects.scm new file mode 100644 index 000000000..67528943c --- /dev/null +++ b/runtime/queries/zig/textobjects.scm @@ -0,0 +1,23 @@ +(TopLevelDecl (FnProto) + (_) @function.inside) @function.around + +(TestDecl (_) @test.inside) @test.around + +; matches all of: struct, enum, union +; this unfortunately cannot be split up because +; of the way struct "container" types are defined +(TopLevelDecl (VarDecl (ErrorUnionExpr (SuffixExpr (ContainerDecl + (_) @class.inside))))) @class.around + +(TopLevelDecl (VarDecl (ErrorUnionExpr (SuffixExpr (ErrorSetDecl + (_) @class.inside))))) @class.around + +(ParamDeclList + ((_) @parameter.inside . ","? @parameter.around) @parameter.around) + +[ + (doc_comment) + (line_comment) +] @comment.inside +(line_comment)+ @comment.around +(doc_comment)+ @comment.around