Wiki

Changes between Version 9 and Version 10 of ETextEditorSupport

Show
Ignore:
Timestamp:
06/19/09 21:06:12 (15 years ago)
Author:
webnov8
Comment:

Best version so far, docstrings don't degenerate. Tested on CobraParser?.cobra.

Legend:

Unmodified
Added
Removed
Modified
  • ETextEditorSupport

    v9 v10  
    8888      { 
    8989         "name" : "support.function.cobra", 
    90          "match" : "\\b(base|(?<!is\\s)shared)\\b", 
    91          "comment" : "language variables that are builtin" 
    92       }, 
    93       { 
    94          "begin" : "r?'", 
    95          "patterns" : [ 
    96             { 
    97                "include" : "#escaped-characters" 
    98             } 
    99          ], 
    100          "name" : "string.quoted.single.cobra", 
    101          "end" : "'" 
    102       }, 
    103       { 
    104          "begin" : "r?\"", 
    105          "patterns" : [ 
    106             { 
    107                "include" : "#escaped-characters" 
    108             } 
    109          ], 
    110          "name" : "string.quoted.double.cobra", 
    111          "end" : "\"" 
     90         "match" : "\\b(base|(?<!is\\s)shared)\\b" 
    11291      }, 
    11392      { 
    11493         "name" : "support.type.cobra", 
    115          "match" : "\\b(bool|char|int|uint|float|decimal|number|dynamic|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\b", 
    116          "comment" : "list of native primitive types" 
     94         "match" : "\\b(bool|char|int|uint|float|decimal|number|dynamic|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\b" 
    11795      }, 
    11896      { 
     
    12199      }, 
    122100      { 
    123          "include" : "#type" 
     101         "include" : "#types" 
    124102      }, 
    125103      { 
    126          "begin" : "\\b(?:class)\\s*([a-zA-Z0-9_]+)", 
     104        "include" : "#strings" 
     105      }, 
     106      { 
     107         "begin" : "^\\s*(\"\"\")", 
     108         "name" : "comment.block.cobra", 
     109         "end" : "\"\"\"\\s*$" 
     110      }, 
     111      { 
     112         "begin" : "^\\s*(?:class)\\s+(?=[a-zA-Z_][a-zA-Z0-9_]*)", 
    127113         "patterns" : [ 
    128114            { 
     
    135121            }, 
    136122            { 
    137                "include" : "#type" 
     123               "include" : "#types" 
    138124            } 
    139125         ], 
     
    147133      }, 
    148134      { 
    149          "begin" : "^\\s*(def|cue|get|pro)\\s+([a-zA-Z0-9_]+)", 
    150          "patterns" : [ 
    151             { 
    152                "include" : "#argument-list" 
    153             }, 
    154             { 
    155                "name" : "support.variable.cobra", 
    156                "match" : "\\bvar|from|as|get\\b" 
    157             }, 
    158             { 
    159                "include" : "#type" 
    160             }, 
    161             { 
    162                 "include" : "#multiline-comments" 
    163             } 
    164          ], 
     135         "match" : "^\\s+(var|def|cue|get|pro|sig)\\s+([a-zA-Z_]\\w+)",          
    165136         "name" : "meta.type.method.cobra", 
    166          "end" : "$", 
    167          "beginCaptures" : { 
     137         "captures" : { 
    168138            "1" : { 
    169139               "name" : "keyword.operator.method.cobra" 
     
    173143            } 
    174144         } 
    175       }, 
    176       { 
    177          "include" : "#multiline-comments" 
    178145      } 
    179146   ], 
     
    183150      "cobra" 
    184151   ], 
    185    "foldingStopMarker" : "^$", 
    186    "foldingStartMarker" : "^\\s*(def|class|cue|get|set)(.*)", 
     152   "foldingStopMarker" : "", 
     153   "foldingStartMarker" : "", 
    187154   "repository" : { 
    188       "argument-list" : { 
    189          "begin" : "\\(", 
    190          "patterns" : [ 
    191             { 
    192                "include" : "#type" 
    193             }, 
    194             { 
    195                "name" : "keyword.operator.cast.cobra", 
    196                "match" : "\\bas\\b" 
    197             } 
    198          ], 
    199          "endCaptures" : { 
    200             "0" : "support" 
    201          }, 
    202          "end" : "\\)", 
    203          "beginCaptures" : { 
    204             "0" : "support" 
    205          } 
    206       }, 
    207       "multiline-comments" : { 
    208          "begin" : "^\\s*\"\"\"\\s+", 
    209          "name" : "comment.block.cobra", 
    210          "comment" : "comment blocks including docstrings", 
    211          "end" : "(^\\s*|\\s+)\"\"\"$" 
    212       }, 
    213       "escaped-characters" : { 
    214          "name" : "constant.character.escape.cobra", 
    215          "match" : "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)" 
    216       }, 
    217       "type" : { 
     155      "types" : { 
    218156         "match" : "(?<=as|\\=)\\s+([A-Z][a-zA-Z0-9_]+)\\s*(\\??|<\\s*of\\s+[a-zA-Z0-9]+>)?", 
    219157         "captures" : { 
     
    225163            } 
    226164         } 
     165      }, 
     166      "escaped-characters" : { 
     167         "name" : "constant.character.escape.cobra", 
     168         "match" : "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)" 
     169      }, 
     170      "strings" : { 
     171         "patterns" : [ 
     172            { 
     173               "begin" : "r?'", 
     174               "patterns" : [ 
     175                  { 
     176                     "include" : "#escaped-characters" 
     177                  } 
     178               ], 
     179               "name" : "string.quoted.single.cobra", 
     180               "end" : "'" 
     181            } 
     182         ] 
    227183      } 
    228184   },