Wiki

Changes between Version 1 and Version 2 of ETextEditor

Show
Ignore:
Timestamp:
06/22/09 03:44:50 (15 years ago)
Author:
webnov8
Comment:

Better version

Legend:

Unmodified
Added
Removed
Modified
  • ETextEditor

    v1 v2  
    4949      { 
    5050         "name" : "keyword.control.cobra", 
    51          "match" : "\\b(inherits|branch|on|else|catch|finally|for|if|try|while|break|continue|pass|raise|return|using|yield)\\b" 
     51         "match" : "\\b(branch|on|else|catch|finally|for|if|try|while|break|continue|pass|raise|return|using|yield)\\b" 
    5252      }, 
    5353      { 
     
    5757      { 
    5858         "name" : "keyword.other.cobra", 
    59          "match" : "\\b(as|assert|print|var|invariant|is|is\\s*shared)\\b" 
     59         "match" : "\\b(as|from|assert|print|var|invariant|is)\\b" 
    6060      }, 
    6161      { 
     
    8787      }, 
    8888      { 
    89          "name" : "support.function.cobra", 
    90          "match" : "\\b(base|(?<!is\\s)shared)\\b" 
    91       }, 
    92       { 
    93          "name" : "support.type.cobra", 
    94          "match" : "\\b(bool|char|int|uint|float|decimal|number|dynamic|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\b" 
     89         "name" : "support.type.primitive.cobra", 
     90         "match" : "\\b(nil|bool|char|int|uint|float|decimal|number|dynamic|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\b(\\?)?", 
     91         "captures" : { 
     92            "2" : { 
     93               "name" : "support.type.nillible-marker.cobra" 
     94            } 
     95         } 
    9596      }, 
    9697      { 
     
    99100      }, 
    100101      { 
    101          "include" : "#types" 
    102       }, 
    103       { 
    104         "include" : "#strings" 
     102         "include" : "#strings" 
    105103      }, 
    106104      { 
     
    110108      }, 
    111109      { 
    112          "begin" : "^\\s*(?:class)\\s+(?=[a-zA-Z_][a-zA-Z0-9_]*)", 
    113          "patterns" : [ 
    114             { 
    115                "name" : "keyword.operator.cobra", 
    116                "match" : "(inherits|implements|is|partial)" 
    117             }, 
    118             { 
    119                "name" : "entity.name.type.cobra", 
    120                "match" : "[a-zA-Z0-9_]+" 
    121             }, 
    122             { 
    123                "include" : "#types" 
    124             } 
    125          ], 
    126          "name" : "storage.type.class.cobra", 
    127          "end" : "$", 
    128          "beginCaptures" : { 
    129             "1" : { 
     110         "match" : "^\\s+(var)\\s+(_[\\w_]+)\\s+(as)?(\\s+[\\w_<>\\s?]+)", 
     111         "captures" : { 
     112            "3" : { 
     113               "name" : "keyword.operator.specifier.cobra" 
     114            }, 
     115            "1" : { 
     116               "name" : "keyword.operator.declaration.cobra" 
     117            }, 
     118            "4" : { 
     119               "name" : "support.other.type.cobra" 
     120            }, 
     121            "2" : { 
     122               "name" : "support.private-variable.cobra" 
     123            } 
     124         } 
     125      }, 
     126      { 
     127         "name" : "keyword.operator.enumeration.cobra", 
     128         "match" : "\\s*(?:enum|interface|struct|mixin)\\s+([\\w_]+)", 
     129         "captures" : { 
     130            "1" : { 
     131               "name" : "entity.name.enumeration.cobras" 
     132            } 
     133         } 
     134      }, 
     135      { 
     136         "name" : "keyword.operator.enumeration.cobra", 
     137         "match" : "\\s*(is|has)\\s+(shared|partial)\\s*", 
     138         "captures" : { 
     139            "1" : { 
     140               "name" : "operator.name.is.cobra" 
     141            }, 
     142            "2" : { 
     143               "name" : "constant.other.modifier.cobra" 
     144            } 
     145         } 
     146      }, 
     147      { 
     148         "name" : "keyword.operator.enumeration.cobra", 
     149         "match" : "\\s*(implements|inherits)\\s+([a-zA-Z_][\\w_]*)\\s*", 
     150         "captures" : { 
     151            "1" : { 
     152               "name" : "operator.name.is.cobra" 
     153            }, 
     154            "2" : { 
     155               "name" : "constant.other.interface.cobra" 
     156            } 
     157         } 
     158      }, 
     159      { 
     160         "name" : "meta.type.method.cobra", 
     161         "match" : "^\\s+(def|cue|get|pro|sig)\\s+([a-zA-Z_]\\w+)", 
     162         "captures" : { 
     163            "1" : { 
     164               "name" : "keyword.operator.method.cobra" 
     165            }, 
     166            "2" : { 
    130167               "name" : "entity.name.type.cobra" 
    131168            } 
     
    133170      }, 
    134171      { 
    135          "match" : "^\\s+(var|def|cue|get|pro|sig)\\s+([a-zA-Z_]\\w+)",          
    136          "name" : "meta.type.method.cobra", 
    137          "captures" : { 
    138             "1" : { 
    139                "name" : "keyword.operator.method.cobra" 
    140             }, 
    141             "2" : { 
    142                "name" : "entity.name.type.cobra" 
     172         "match" : "^\\s*(class)\\s+([a-zA-Z_][\\w_]*)\\s*", 
     173         "captures" : { 
     174            "1" : { 
     175               "name" : "keyword.operator.class-definition.cobra" 
     176            }, 
     177            "2" : { 
     178               "name" : "entity.name.user-defined-type.cobra" 
    143179            } 
    144180         } 
     
    153189   "foldingStartMarker" : "", 
    154190   "repository" : { 
    155       "types" : { 
    156          "match" : "(?<=as|\\=)\\s+([A-Z][a-zA-Z0-9_]+)\\s*(\\??|<\\s*of\\s+[a-zA-Z0-9]+>)?", 
    157          "captures" : { 
    158             "1" : { 
    159                "name" : "entity.name.class.cobra" 
    160             }, 
    161             "2" : { 
    162                "name" : "entity.name.generic.cobra" 
    163             } 
    164          } 
    165       }, 
    166191      "escaped-characters" : { 
    167192         "name" : "constant.character.escape.cobra", 
    168193         "match" : "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)" 
    169194      }, 
     195      "varsub" : { 
     196         "name" : "support.other.variable-substitution.cobra", 
     197         "match" : "(\\[[\\w.]+\\])" 
     198      }, 
    170199      "strings" : { 
    171200         "patterns" : [ 
    172201            { 
    173                "begin" : "r?'", 
     202               "begin" : "(?<!')r?'(?!')", 
    174203               "patterns" : [ 
    175204                  { 
    176205                     "include" : "#escaped-characters" 
     206                  }, 
     207                  { 
     208                     "include" : "#varsub" 
    177209                  } 
    178210               ], 
    179211               "name" : "string.quoted.single.cobra", 
    180212               "end" : "'" 
     213            }, 
     214            { 
     215               "begin" : "(?<!\")r?\"(?!\")", 
     216               "patterns" : [ 
     217                  { 
     218                     "include" : "#escaped-characters" 
     219                  }, 
     220                  { 
     221                     "include" : "#varsub" 
     222                  } 
     223               ], 
     224               "name" : "string.quoted.single.cobra", 
     225               "end" : "\"" 
    181226            } 
    182227         ]