]> git.lizzy.rs Git - micro.git/blobdiff - runtime/syntax/solidity.yaml
Merge branch 'python-highlight-zero' of https://github.com/a11ce/micro into a11ce...
[micro.git] / runtime / syntax / solidity.yaml
index 04e6536c9a473488dc668d9e43cdef93b22fb93b..cea481a7b1ea0520360b2682808500763bf3b90d 100644 (file)
@@ -1,6 +1,6 @@
 filetype: solidity
 
-detect: 
+detect:
     filename: "\\.sol$"
 
 rules:
@@ -8,16 +8,34 @@ rules:
     - constant.number: "\\b[-]?([0-9]+|0x[0-9a-fA-F]+)\\b"
     - identifier: "[a-zA-Z][_a-zA-Z0-9]*[[:space:]]*"
     - statement: "\\b(assembly|break|continue|do|for|function|if|else|new|return|returns|while)\\b"
-    - special: "\\b(\\.send|throw)\\b"
+    - special: "\\b(\\.send|throw)\\b" # make sure they are very visible
     - type.keyword: "\\b(anonymous|constant|indexed|payable|public|private|external|internal)\\b"
     - constant: "\\b(block(\\.(blockhash|coinbase|difficulty|gaslimit|number|timestamp))?|msg(\\.(data|gas|sender|value))?|now|tx(\\.(gasprice|origin))?)\\b"
     - constant: "\\b(keccak256|sha3|sha256|ripemd160|ecrecover|addmod|mulmod|this|super|selfdestruct|\\.balance)\\b"
-    - constant.bool: "\\b(true|false)\\b"
+    - constant: "\\b(true|false)\\b"
     - constant: "\\b(wei|szabo|finney|ether|seconds|minutes|hours|days|weeks|years)\\b"
     - type: "\\b(address|bool|mapping|string|var|int(\\d*)|uint(\\d*)|byte(\\d*)|fixed(\\d*)|ufixed(\\d*))\\b"
     - error: "\\b(abstract|after|case|catch|default|final|in|inline|interface|let|match|null|of|pure|relocatable|static|switch|try|type|typeof|view)\\b"
-    - symbol.operator: "[-+/*=<>!~%?:&|]"
-    - comment: "(^|[[:space:]])//.*"
-    - comment: "/\\*.+\\*/"
+    - operator: "[-+/*=<>!~%?:&|]"
+    - comment:
+        start: "//"
+        end: "$"
+        rules: []
+    - comment: 
+        start: "/\\*"
+        end: "\\*/"
+        rules: []
     - todo: "TODO:?"
-    - constant.string: "\"(\\\\.|[^\"])*\"|'(\\\\.|[^'])*'"
+    - constant.string: 
+        start: "\""
+        end: "\""
+        skip: "\\\\."
+        rules:
+            - constant.specialChar: "\\\\."
+    - constant.string:
+        start: "'"
+        end: "'"
+        skip: "\\\\."
+        rules:
+            - constant.specialChar: "\\\\."
+