diff --git a/queries/json/textobjects.scm b/queries/json/textobjects.scm new file mode 100644 index 00000000..381b7bae --- /dev/null +++ b/queries/json/textobjects.scm @@ -0,0 +1,47 @@ +(pair) @assignment.outer + +(pair + key: (string) @assignment.lhs) + +(pair + value: (_) @assignment.rhs) + +(object + "," @_comma + . + (pair) @parameter.inner + (#make-range! "parameter.outer" @_comma @parameter.inner)) + +(object + (pair) @parameter.inner + . + ","? @_comma + (#make-range! "parameter.outer" @parameter.inner @_comma)) + +(array + "," @_comma + . + [ + (object) + (array) + (string) + (number) + (true) + (false) + (null) + ] @parameter.inner + (#make-range! "parameter.outer" @_comma @parameter.inner)) + +(array + [ + (object) + (array) + (string) + (number) + (true) + (false) + (null) + ] @parameter.inner + . + ","? @_comma + (#make-range! "parameter.outer" @parameter.inner @_comma))