84
|
1 # Nano configuration for Rust
|
|
2 # Copyright 2015 The Rust Project Developers.
|
|
3 #
|
|
4 # NOTE: Rules are applied in order: later rules re-colorize matching text.
|
|
5 syntax "Rust" "\.rs"
|
|
6
|
|
7 # function definition
|
|
8 color magenta "fn [a-z0-9_]+"
|
|
9
|
|
10 # Reserved words
|
|
11 color yellow "\<(abstract|alignof|as|become|box|break|const|continue|crate|do|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|offsetof|override|priv|pub|pure|ref|return|sizeof|static|self|struct|super|true|trait|type|typeof|unsafe|unsized|use|virtual|where|while|yield)\>"
|
|
12
|
|
13 # macros
|
|
14 color red "[a-z_]+!"
|
|
15
|
|
16 # Constants
|
|
17 color magenta "[A-Z][A-Z_]+"
|
|
18
|
|
19 # Traits/Enums/Structs/Types/etc.
|
|
20 color magenta "[A-Z][a-z]+"
|
|
21
|
|
22 # Strings
|
|
23 color green "\".*\""
|
|
24 color green start="\".*\\$" end=".*\""
|
|
25 # NOTE: This isn't accurate but matching "#{0,} for the end of the string is too liberal
|
|
26 color green start="r#+\"" end="\"#+"
|
|
27
|
|
28 # Comments
|
|
29 color blue "//.*"
|
|
30 color blue start="/\*" end="\*/"
|
|
31
|
|
32 # Attributes
|
|
33 color magenta start="#!\[" end="\]"
|
|
34
|
|
35 # Some common markers
|
|
36 color brightcyan "(XXX|TODO|FIXME|\?\?\?)"
|
|
37
|
|
38 ## Trailing spaces
|
|
39 color ,green "[[:space:]]+$"
|