micro/runtime/syntax/go.micro
Zachary Yedidia dbeb99bb6b Colorscheme group inheritance
With this commit, the syntax files can define groups that are subsets of
other groups, for example constant.string. This is so that colorschemes
can be more accurate, possibly highlighting strings differently than
numbers for example.

See #176. This doesn't fully close that issue yet because the string
group still needs to be added to all strings in the syntax files.
2016-06-22 18:51:36 -04:00

20 lines
967 B
Text

syntax "Go" "\.go$"
color statement "\b(append|cap|close|complex|copy|delete|imag|len)\b"
color statement "\b(make|new|panic|print|println|protect|real|recover)\b"
color type "\b(u?int(8|16|32|64)?|float(32|64)|complex(64|128))\b"
color type "\b(uintptr|byte|rune|string|interface|bool|map|chan|error)\b"
color statement "\b(package|import|const|var|type|struct|func|go|defer|nil|iota)\b"
color statement "\b(for|range|if|else|case|default|switch|return)\b"
color statement "\b(go|goto|break|continue)\b"
color constant "\b(true|false)\b"
color statement "[-+/*=<>!~%&|^]|:="
color constant.number "\b([0-9]+|0x[0-9a-fA-F]*)\b|'.'"
color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'"
color constant.specialChar "\\[abfnrtv'\"\\]"
color constant.specialChar "\\([0-7]{3}|x[A-Fa-f0-9]{2}|u[A-Fa-f0-9]{4}|U[A-Fa-f0-9]{8})"
color constant.string "`[^`]*`"
color comment "(^|[[:space:]])//.*"
color comment start="/\*" end="\*/"
color todo "TODO:?"