1
0
mirror of https://github.com/cmur2/joe-syntax.git synced 2024-11-14 16:56:15 +01:00
joe-syntax/sieve.jsf

106 lines
1.5 KiB
Plaintext

# JOE syntax highlight file for Sieve
=Idle
=Comment green
=Constant cyan
=Escape bold cyan
=Keyword bold
=Bad bold red
=Brace magenta
=TaggedArgument red
:idle Idle
* idle
"#" line_comment recolor=-1
"/" maybe_comment
"1-9" decimal recolor=-1
"\"" string recolor=-1
"[]{}" brace recolor=-1
":" maybe_tagged_arg
"a-zA-Z_" ident buffer
:brace Brace
* idle noeat
:line_comment Comment
* line_comment
"\n" idle
:maybe_comment Idle
* idle noeat
"*" comment recolor=-2
:comment Comment
* comment
"*" maybe_end_comment
:maybe_end_comment Comment
* comment noeat
"/" idle
:decimal Constant
* idle noeat
"0-9" decimal
"KMG" decimal_suffix
:decimal_suffix Constant
* idle noeat
:string Constant
* string
"\"" idle
"\\" string_escape recolor=-1
:string_escape Escape
* string_bad_escape recolor=-1
"\\" string
"\"" string
:string_bad_escape Bad
* string noeat
:maybe_tagged_arg Idle
* idle noeat
"a-zA-Z_" tagged_arg recolor=-2
:tagged_arg TaggedArgument
* idle noeat
"a-zA-Z0-9_" tagged_arg
:ident Idle
* idle noeat strings
# control"
"else" kw
"elsif" kw
"if" kw
"require" kw
"stop" kw
# commands
"discard" cmd
"fileinto" cmd
"keep" cmd
"redirect" cmd
# tests
"address" test
"allof" test
"anyof" test
"envelope" test
"exists" test
"false" test
"header" test
"not" test
"size" test
"true" test
done
"a-zA-Z0-9_" ident
:kw Keyword
* idle noeat
:cmd Idle
* idle noeat
:test Idle
* idle noeat