diff options
Diffstat (limited to 'runtime/queries/http')
| -rw-r--r-- | runtime/queries/http/folds.scm | 5 | ||||
| -rw-r--r-- | runtime/queries/http/highlights.scm | 64 | ||||
| -rw-r--r-- | runtime/queries/http/injections.scm | 24 |
3 files changed, 93 insertions, 0 deletions
diff --git a/runtime/queries/http/folds.scm b/runtime/queries/http/folds.scm new file mode 100644 index 000000000..f7108a551 --- /dev/null +++ b/runtime/queries/http/folds.scm @@ -0,0 +1,5 @@ +[ + (section) + (json_body) + (variable_declaration)+ +] @fold diff --git a/runtime/queries/http/highlights.scm b/runtime/queries/http/highlights.scm new file mode 100644 index 000000000..1ac243729 --- /dev/null +++ b/runtime/queries/http/highlights.scm @@ -0,0 +1,64 @@ +; Methods +(method) @function.method + +; Headers +(header + name: (_) @constant) + +(header + value: (_) @string) + +; Variables +(identifier) @variable + +(variable_declaration + "@" @character.special) + +(variable_declaration + (value) @string) + +; Operators +(comment + "=" @operator) + +(variable_declaration + "=" @operator) + +; keywords +(comment + "@" @keyword + name: (_) @keyword) + +; Literals +(request + url: (_) @string.special.url) + +(http_version) @string.special + +; Response +(status_code) @number + +(status_text) @string + +; Punctuation +[ + "{{" + "}}" + "{%" + "%}" +] @punctuation.bracket + +">" @punctuation.special + +(header + ":" @punctuation.delimiter) + +; external JSON body +(external_body + path: (_) @string.special.path) + +; Comments +[ + (comment) + (request_separator) +] @comment @spell diff --git a/runtime/queries/http/injections.scm b/runtime/queries/http/injections.scm new file mode 100644 index 000000000..f0e086580 --- /dev/null +++ b/runtime/queries/http/injections.scm @@ -0,0 +1,24 @@ +; Comments +((comment) @injection.content + (#set! injection.language "comment")) + +; Body +((json_body) @injection.content + (#set! injection.language "json")) + +((xml_body) @injection.content + (#set! injection.language "xml")) + +((graphql_data) @injection.content + (#set! injection.language "graphql")) + +; Script (default to javascript) +((comment + name: (_) @_name + (#eq? @_name "lang") + value: (_) @injection.language)? + . + (_ + (script) @injection.content + (#offset! @injection.content 0 2 0 -2)) + (#set! injection.language "javascript")) |
