mirror of https://github.com/helix-editor/helix
73 lines
1.4 KiB
Scheme
73 lines
1.4 KiB
Scheme
|
(comment) @comment
|
||
|
[
|
||
|
(environment_variable)
|
||
|
(placeholder)
|
||
|
] @constant
|
||
|
|
||
|
[
|
||
|
(network_address)
|
||
|
(ip_address_or_cidr)
|
||
|
] @string.special.url
|
||
|
|
||
|
(path) @string.special.path
|
||
|
|
||
|
[
|
||
|
(snippet_name)
|
||
|
(named_route_identifier)
|
||
|
(site_address)
|
||
|
] @keyword
|
||
|
|
||
|
(directive (directive_name) @variable.other.member)
|
||
|
|
||
|
; declaration of a named matcher
|
||
|
(named_matcher (matcher_identifier (matcher_name)) @function.macro)
|
||
|
|
||
|
; reference to a named matcher
|
||
|
(matcher (matcher_identifier (matcher_name)) @function.macro)
|
||
|
|
||
|
; directive within a named matcher declaration
|
||
|
(matcher_directive (matcher_directive_name) @function.method)
|
||
|
|
||
|
; any other matcher (wildcard and path)
|
||
|
(matcher) @function.macro
|
||
|
|
||
|
[
|
||
|
(interpreted_string_literal)
|
||
|
(raw_string_literal)
|
||
|
(heredoc)
|
||
|
(cel_expression)
|
||
|
] @string
|
||
|
(escape_sequence) @constant.character.escape
|
||
|
|
||
|
[
|
||
|
(duration_literal)
|
||
|
(int_literal)
|
||
|
] @constant.numeric
|
||
|
|
||
|
[
|
||
|
"{"
|
||
|
"}"
|
||
|
] @punctuation.bracket
|
||
|
|
||
|
(global_options
|
||
|
(directive) @keyword.directive)
|
||
|
|
||
|
(directive
|
||
|
name: (directive_name)
|
||
|
(argument) @type)
|
||
|
|
||
|
; matches directive arguments that looks like an absolute path
|
||
|
; e.g.
|
||
|
; log {
|
||
|
; output file /var/log/caddy.log
|
||
|
; }
|
||
|
(directive
|
||
|
(argument) @string.special.path
|
||
|
(#match? @string.special.path "^/"))
|
||
|
|
||
|
((argument) @constant.builtin.boolean
|
||
|
(#any-of? @constant.builtin.boolean "on" "off"))
|
||
|
|
||
|
((argument) @type.enum.variant
|
||
|
(#any-of? @type.enum.variant "tcp" "udp" "ipv4" "ipv6"))
|