aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries/ohm/textobjects.scm
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/queries/ohm/textobjects.scm')
-rw-r--r--runtime/queries/ohm/textobjects.scm40
1 files changed, 40 insertions, 0 deletions
diff --git a/runtime/queries/ohm/textobjects.scm b/runtime/queries/ohm/textobjects.scm
new file mode 100644
index 00000000..855ad8de
--- /dev/null
+++ b/runtime/queries/ohm/textobjects.scm
@@ -0,0 +1,40 @@
+; See: https://docs.helix-editor.com/guides/textobject.html
+
+; function.inside & around
+; ------------------------
+
+(rule
+ body: (_) @function.inside) @function.around
+
+; class.inside & around
+; ---------------------
+
+(grammar
+ body: (_) @class.inside) @class.around
+
+; parameter.inside & around
+; -------------------------
+
+(formals
+ ((_) @parameter.inside . ","? @parameter.around) @parameter.around)
+
+(rule_body
+ ((_) @parameter.inside . "|"? @parameter.around) @parameter.around)
+
+(params
+ ((_) @parameter.inside . ","? @parameter.around) @parameter.around)
+
+(alt
+ ((_) @parameter.inside . "|"? @parameter.around) @parameter.around)
+
+; comment.inside
+; --------------
+
+(multiline_comment)+ @comment.inside
+(singleline_comment)+ @comment.inside
+
+; comment.around
+; --------------
+
+(multiline_comment)+ @comment.around
+(singleline_comment)+ @comment.around