micro/runtime/syntax/go.micro

35 lines
1.1 KiB
Text
Raw Normal View History

syntax "go" "\.go$"
2016-03-21 19:16:02 +03:00
2017-01-23 22:06:39 +03:00
# Conditionals and control flow
color statement "\b(break|case|continue|default|else|for|go|goto|if|range|return|switch)\b"
color statement "\b(package|import|const|var|type|struct|func|go|defer|iota)\b"
color statement "[-+/*=<>!~%&|^]|:="
2017-01-23 22:06:39 +03:00
# Types
color special "[a-zA-Z0-9]*\("
color brightyellow "(,|\.)"
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 constant "\b(true|false|nil)\b"
# Brackets n shit
color statement "(\{|\})"
color statement "(\(|\))"
color statement "(\[|\])"
color statement "!"
color statement ","
# Numbers and strings
color constant.number "\b([0-9]+|0x[0-9a-fA-F]*)\b|'.'"
color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'"
2017-01-23 22:06:39 +03:00
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 constant.specialChar """
color constant.specialChar "'"
# Comments & TODOs
color comment "(^|[[:space:]])//.*"
2017-01-23 22:06:39 +03:00
#color comment start="/\*" end="\*/"
color todo "(TODO|XXX|FIXME):?"