diff --git a/runtime/syntax/pony.micro b/runtime/syntax/pony.micro new file mode 100644 index 00000000..711da1c4 --- /dev/null +++ b/runtime/syntax/pony.micro @@ -0,0 +1,31 @@ +syntax "pony" "\.pony$" + +color statement "\b(type|interface|trait|primitive|class|struct|actor)\b" +color statement "\b(compiler_intrinsic)\b" +color statement "\b(use)\b" +color statement "\b(var|let|embed)\b" +color statement "\b(new|be|fun)\b" +color statement "\b(iso|trn|ref|val|box|tag|consume)\b" +color statement "\b(break|continue|return|error)\b" +color statement "\b(if|then|elseif|else|end|match|where|try|with|as|recover|object|lambda|as|digestof|ifdef)\b" +color statement "\b(while|do|repeat|until|for|in)\b" + +color statement "(\?|=>)" +color statement "(\\||\\&|\\,|\\^)" + +color statement "(\-|\+|\\*|/|\!|%|<<|>>)" +color statement "(==|!=|<=|>=|<|>)" +color statement "\b(is|isnt|not|and|or|xor)\b" + +color type "\b(_*[A-Z][_a-zA-Z0-9\\']*)\b" + +color constant "\b(this)\b" +color constant "\b(true|false)\b" + +color constant.number "\b((0b[0-1_]*)|(0o[0-7_]*)|(0x[0-9a-fA-F_]*)|([0-9_]+(\\.[0-9_]+)?((e|E)(\\+|-)?[0-9_]+)?))\b" +color constant.string ""(\\.|[^"])*"|'(\\.|[^'])*'" + +color comment start=""""([^"]|$)" end=""""" +color comment "(^|[[:space:]])//.*" +color comment start="/\*" end="\*/" +color todo "TODO:?"