github-linguist 7.19.0 → 7.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/liquid.injection.json +1 -1
  3. data/grammars/markdown.cadence.codeblock.json +1 -0
  4. data/grammars/markdown.prisma.codeblock.json +1 -0
  5. data/grammars/source.abap.json +1 -1
  6. data/grammars/source.acucobol.json +1 -1
  7. data/grammars/source.alloy.json +1 -1
  8. data/grammars/source.astro.json +1 -0
  9. data/grammars/source.ats.json +1 -1
  10. data/grammars/source.berry.bytecode.json +1 -0
  11. data/grammars/source.berry.json +1 -0
  12. data/grammars/source.bms.json +1 -0
  13. data/grammars/source.bmsmap.json +1 -0
  14. data/grammars/source.cadence.json +1 -0
  15. data/grammars/source.cairo.json +1 -0
  16. data/grammars/source.cl.json +1 -1
  17. data/grammars/source.cobol.json +1 -1
  18. data/grammars/source.cobol_acu_listfile.json +1 -0
  19. data/grammars/source.cobol_mf_listfile.json +1 -0
  20. data/grammars/source.cobol_mfprep.json +1 -0
  21. data/grammars/source.cobol_pcob_listfile.json +1 -0
  22. data/grammars/source.cobolit.json +1 -0
  23. data/grammars/source.cobsql_dir.json +1 -0
  24. data/grammars/source.dart.json +1 -1
  25. data/grammars/source.denizenscript.json +1 -1
  26. data/grammars/source.dir.json +1 -0
  27. data/grammars/source.fsharp.json +1 -1
  28. data/grammars/source.gdscript.json +1 -1
  29. data/grammars/source.genero-forms.json +1 -0
  30. data/grammars/source.genero.json +1 -0
  31. data/grammars/source.hlasm.json +1 -0
  32. data/grammars/source.jcl.json +1 -1
  33. data/grammars/source.kotlin.json +1 -1
  34. data/grammars/source.ligo.json +1 -0
  35. data/grammars/source.mc.json +1 -0
  36. data/grammars/source.mfu.json +1 -0
  37. data/grammars/source.mfupp_dir.json +1 -0
  38. data/grammars/source.mligo.json +1 -0
  39. data/grammars/source.p4.json +1 -1
  40. data/grammars/source.pli.json +1 -0
  41. data/grammars/source.pony.json +1 -1
  42. data/grammars/source.q.json +1 -1
  43. data/grammars/source.rascal.json +1 -1
  44. data/grammars/source.rego.json +1 -1
  45. data/grammars/source.religo.json +1 -0
  46. data/grammars/source.rescript.json +1 -1
  47. data/grammars/source.rpgle.json +1 -1
  48. data/grammars/source.shell.json +1 -1
  49. data/grammars/source.solidity.json +1 -1
  50. data/grammars/source.stan.json +1 -1
  51. data/grammars/source.swift.json +1 -1
  52. data/grammars/source.talon.json +1 -0
  53. data/grammars/source.utreport.json +1 -0
  54. data/grammars/source.vyper.json +1 -1
  55. data/grammars/source.win32-messages.json +1 -0
  56. data/grammars/source.yara.json +1 -1
  57. data/grammars/text.html.liquid.json +1 -1
  58. data/grammars/text.html.markdown.astro.json +1 -1
  59. data/grammars/text.savane.json +1 -0
  60. data/grammars/version +1 -1
  61. data/lib/linguist/VERSION +1 -1
  62. data/lib/linguist/generic.yml +1 -0
  63. data/lib/linguist/heuristics.yml +12 -0
  64. data/lib/linguist/languages.json +1 -1
  65. data/lib/linguist/languages.yml +109 -2
  66. data/lib/linguist/samples.json +1 -1
  67. metadata +32 -5
  68. data/grammars/source.opencobol.json +0 -1
  69. data/grammars/text.html.astro.json +0 -1
  70. data/lib/linguist/linguist.so +0 -0
@@ -0,0 +1 @@
1
+ {"name":"Genero","scopeName":"source.genero","patterns":[{"include":"#CharacterOperators"},{"include":"#Comments"},{"include":"#ComparisonOperators"},{"include":"#DateOperators"},{"include":"#EscapeCharacters"},{"include":"#FlowControl"},{"include":"#Functions"},{"include":"#GeneroControlBlocks"},{"include":"#KeywordsControl"},{"include":"#KeywordsOther"},{"include":"#KeywordsSupport"},{"include":"#KeywordsOtherUnsorted"},{"include":"#KeywordsString"},{"include":"#KeywordsSql"},{"include":"#LogicalOperators"},{"include":"#MathOperators"},{"include":"#Numbers"},{"include":"#Parens"},{"include":"#StringDoubleQuote"},{"include":"#StringSingleQuote"},{"include":"#Support"},{"include":"#SupportConstant"},{"include":"#Types"},{"include":"#TypeModifiers"}],"repository":{"CharacterOperators":{"name":"keyword.operator.char.4gl","match":"\\b(?i)(USING|CLIPPED|COLUMN|ASCII|LSTR|ORD|SFMT|SPACES)\\b"},"Comments":{"patterns":[{"name":"comment.block.document.4gl","match":"#\\+.*$"},{"name":"comment.line.number-sign.4gl","match":"#.*"},{"name":"comment.line.double-dash.4gl","match":"--.*"},{"name":"comment.block.4gl","begin":"\\{","end":"\\}","beginCaptures":{"0":{"name":"comment.block.4gl"}},"endCaptures":{"0":{"name":"comment.block.4gl"}}}]},"ComparisonOperators":{"patterns":[{"name":"keyword.operator.4gl","match":"(?i)(\\=|\\\u003c|\\\u003e|\\!)"},{"name":"keyword.operator.4gl","match":"(?i)(LIKE|MATCHES|IIF|NVL)"}]},"DateOperators":{"name":"support.type.4gl","match":"\\b(?i)(DATE|UNITS|CURRENT|TODAY|DAY|YEAR|TIME|EXTEND|WEEKDAY|MONTH|MDY)\\b"},"DialogOperators":{"name":"support.function.4gl","match":"\\b(?i)(FIELD_TOUCHED|GET_FLDBUF|INFIELD|ARG_VAL|ARR_COUNT|ARR_CURR|CURSOR_NAME|DOWNSHIFT|ERR_GET|ERR_PRINT|ERR_QUIT|ERRORLOG|FGL_DRAWBOX|FGL_DYNARR_EXTENTSIZE|FGL_GETENV|FGL_GETKEY|FGL_ISDYNARR_ALLOCATED|FGL_KEYVAL|FGL_LASTKEY|FGL_SCR_SIZE|FGL_SETCURRLINE|LENGTH|NUM_ARGS|ORD|SRC_LINE|SET_COUNT|SHOWHELP|STARTLOG|UPSHIFT|MDY|LOAD|UNLOAD)\\b"},"EscapeCharacters":{"name":"constant.character.escape.4gl","match":"\\\\.{1}"},"FlowControl":{"patterns":[{"name":"keyword.other.flowcontrol.4gl","match":"\\b(?i)(IF|CALL|FOR|WHILE|RETURNING|EXIT|RETURN|CONTINUE|CASE|LABEL|SLEEP|TRY|CATCH|GOTO)\\b"}]},"Functions":{"patterns":[{"name":"meta.function.4gl","match":"(?i)(?:^\\s*)\\b(MAIN)\\b","captures":{"1":{"name":"storage.type.function.4gl"}}},{"name":"meta.function.4gl","match":"(?xi)^(PUBLIC|PRIVATE|\\s*)?(?:\\s*)(?:\\b(FUNCTION|REPORT|DIALOG)\\b\\s+)((?:\\w+))","captures":{"1":{"name":"storage.type.modifier.4gl"},"2":{"name":"keyword.other.4gl"},"3":{"name":"entity.name.function.4gl"}}}]},"GeneroControlBlocks":{"name":"meta.name.section.4gl","match":"\\b(?i)(menu\\s|input\\sby\\sname|construct\\sby\\sname|display\\sarray)\\b","captures":{"1":{"name":"keyword.control.4gl"}}},"KeywordsControl":{"name":"keyword.control.4gl","match":"\\b(?i)(IF|CALL|FOR|ELSE|WHILE|RETURNING|EXIT|RETURN|CONTINUE|CASE|WHEN|AFTER|FOREACH|THEN|END MAIN|END REPORT|END|RUN|LABEL|CHANGE|ON|ACTION|END IF|IIF|GOTO|BREAK|NAME|IDLE|DISPLAY|SLEEP|BREAKPOINT|BEFORE|CONSTRUCT|INPUT)\\b"},"KeywordsOther":{"name":"keyword.other.4gl","match":"\\b(?i)(LET|INTO|FUNCTION|CURSOR|DEFINE|ERROR|INITIALIZE|KEY|TABLE|DEFAULT|UP|ROWS|SCREEN|LEFT|FORM|TABLES|GLOBAL|FIELD|MORE|CLEAR|INSTRUCTIONS|INTERRUPT|ESCAPE|MENU|COMMENT|DATABASE|COLUMN|COMMENTS|ATTRIBUTE|SQL|DEFER|GLOBALS|COLUMNS|DELIMITERS|RIGHT|TAB|WINDOW|ROW|DEFAULTS|DELIMITER|DOWN|ESC|COLOR|ATTRIBUTES|ASCENDING|DESCENDINGSQLAWARN|SQLERRM|SQLERROR|SQLERRP|SQLSTATE|SQLWARNING|OPTION|OPTIONS|ALL|HIDE|SPACE|SPACES|WRAP|STEP|SKIP|SIZE|LINE|LINES|MARGIN|MESSAGE|INVISIBLE|BLACK|BLINK|BLUE|BOLD|BORDER|BOTTOM|CYAN|UNDERLINE|WHITE|YELLOW|RED|PROMPT|NOENTRY|MAGENTO|MODULE)\\b"},"KeywordsOtherUnsorted":{"patterns":[{"name":"keyword.other.unsorted.4gl","match":"\\b(?i)(INT_FLAG|CHECK|VERIFY|NUMBER|SCROLL|HEADER|INDEX|TEMP|READ|START|SET|NEED|ONLY|AS|INCLUDE|TYPE|CONSTANT|AVERAGE|NEW|PROGRAM|AUDIT|LOG|REMOVE|STOP|PRIOR|LOCK|OUTPUT|PRINT|EACH|REVERSE|TOP|PERCENT|MODULE|FOUND|MIN|DATA|AVG|SOME|WORK|VARIABLES|USER|TOTAL|SUM|ADD|OLD|WHENEVER|ENTRY|PRECISION|DBA|GREEN|RESTRICT|ROLLFORWARD|COBOL|REPEATABLE|PLI|DISCONNECT|SYSTEM|COMMAND|READONLY|RECOVER|ENABLED|ATTACH|FILE|TRIGGER|EVERY|BEGIN|TYPEDEF|CLASS_ORIGIN|DEBUG|ROWID|COMPRESS|IMMEDIATE|SYSDEPEND|ROOT|RESUME|TRIM|VARIANCE|REOPTIMIZATION|SYSFRAGMENTS|MODIFY|LONG|RETURNED_SQLSTATE|REAL|PRINTER|SYSFRAGAUTH|PAUSE|EXTERNAL|FORTRAN|CHARACTER_LENGTH|UNSIGNED|CONTROL|SCHEMA|TRAILER|FORMAT|REMAINDER|SERIAL|SYSCONSTRAINTS|EXPLAIN|SYSUSERS|SERVER_NAME|SYSTABLES|ASCII|ABORT|NOCR|RENAME|SHARE|REFERENCES|FRAGMENT|ROUND|MEMORY|BETWEEN|DIAGNOSTICS|EXPRESSION|SYSCOLUMNS|MESSAGE_LENGTH|SESSION|PROCEDURE|SYSPROCPLAN|ROWIDS|BUFFERED|WRITE|FINISH|LOCATE|DIALOG|SUBDIALOG|BOTH|OCTET_LENGTH|DEC|ITYPE|PASCAL|CONSTRAINED|SYSREFERENCES|STATISTICS|SYSCOLDEPEND|PRIMARY|EXP|TRANSACTION|SQRT|DETACH|WARNING|HEX|SECTION|CHAR_LENGTH|ABSOLUTE|EXTENT|ATAN|PAGE|AUTONEXT|SYSPROCEDURES|SITENAME|QUIT|FIELD_TOUCHED|SCALE|COMMIT|PDQPRIORITY|RELATIVE|FOREIGN|DBINFO|AUTO|SYSSYNTABLE|SHORT|ISOLATION|DEALLOCATE|HELP|PIPE|SYSROLEAUTH|LOGN|SYSTRIGBODY|INDICATOR|ASIN|DBSERVERNAME|REVOKE|DEFERRED|RAISE|ROLLBACK|FILTERING|DORMANT|SYSVIEWS|MODE|CASCADE|CLUSTER|EXCLUSIVE|ATAN2|ROLE|MEDIUM|SIZEOF|NULLABLE|WAIT|DIRTY|STATIC|VIOLATIONS|PICTURE|WAITING|SWITCH|ANSI|ACCEPT|UNCOMMITTED|DESCRIPTOR|FILLFACTOR|SYSOPCLSTR|OPTIMIZATION|AUTHORIZATION|QUIT_FLAG|STABILITY|DISTINCT|ISAM|ALLOCATE|PREVPAGE|COS|REQUIRED|ABS|RESOLUTION|TRAILING|SYSTRIGGERS|NEXTPAGE|HIGH|DISABLED|LEADING|EXCEPTION|CHARACTER|COMPOSITES|RESOURCE|DISTRIBUTIONS|SYSTABAUTH|STRUCT|SYSPROCBODY|TRACE|SERIALIZABLE|CONNECTION|GO|COMMITTED|ILENGHT|REFERENCING|ZEROFILL|SYSDISTRIB|SYSCHECKS|SYNONYM|LOW|SYSPROCAUTH|INDEXES|POW|ACCESS|STDEV|OFF|ROBIN|CONSTRAINT|TRUNC|NONE|SYSVIOLATIONS|PRIVILEGES|DESCRIBE|UNCONSTRAINED|CONNECTION_ALIAS|LINENO|EXTERN|VARYING|ADA|PAGENO|ROW_COUNT|LANGUAGE|SYSDEFAULTS|APPEND|VIEW|LOG10|SYSINDEXES|TAN|ACOS|INIT|CONNECT|UNLOCK|GRANT|NUMERIC|DATASKIP|VALIDATE|SYSCOLAUTH|MESSAGE_TEXT|DIM|SYSSYNONYMS|SYSBLOBS|FRACTION|TRIGGERS|EXEC|CONCURRENT|REGISTER|SYSOBJSTATE|RANGE|SUBCLASS_ORIGIN|NORMAL|IDATA|CONSTRAINTS|NEXT|SHOW|ADD|SCR_LINE)\\b"},{"name":"keyword.other.unsorted","match":"\\\u0026"}]},"KeywordsSql":{"name":"keyword.control.sql.4gl","match":"\\b(?i)(USING|FROM|CLOSE|OPEN|FETCH|PREPARE|DECLARE|EXECUTE|SELECT|WHERE|CREATE|UPDATE|DELETE|INSERT|FOREACH|COUNT|FREE|FLUSH|PUT|ALTER|ASC|DESC|DROP|ORDER|UNION|UNIQUE|OUTER|MAX|EXISTS|GROUP|HAVING|VALUES|VALUE|IN|BY)\\b"},"KeywordsString":{"patterns":[{"name":"keyword.operator.string.4gl","match":"\\b(?i)(IS|THRU|WITH|HOLD|TO|PREVIOUS|NO|LAST|AT|WITHOUT|OF|ANY|OTHERWISE|THROUGH|FORMONLY|CLIPPED|INFIELD|FIRST)\\b"},{"name":"keyword.operator.string.4gl","match":"(\\,|\\.|\\|\\|)"}]},"KeywordsSupport":{"name":"support.type.4gl","match":"\\b(?i)(SECOND|YEAR|DAY|HOUR|TIME|TODAY|SQLERRD|SQLCA|MINUTE|SQLCODE|WEEKDAY|STATUS|MONTH)\\b"},"LogicalOperators":{"name":"keyword.operator.logical.4gl","match":"\\b(?i)(AND|NOT|OR)\\b"},"MathOperators":{"patterns":[{"name":"keyword.operator.math.4gl","match":"(\\;|\\:|\\+|\\-|\\/|\\*\\*)"},{"name":"keyword.operator.math.4gl","match":"(?i)\\b(MOD)\\b"}]},"Numbers":{"name":"constant.numeric.4gl","match":"\\b\\d+\\b"},"Parens":{"patterns":[{"name":"variable.parameter.4gl","begin":"\\(","end":"\\)","patterns":[{"include":"#StringDoubleQuote"},{"include":"#SupportConstant"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.control.4gl"}},"endCaptures":{"0":{"name":"keyword.control.4gl"}}}]},"SQLPlaceHolder":{"patterns":[{"name":"constant.character.placeholder.4gl","match":"\\?"},{"name":"keyword.sql.comma.4gl","match":"\\,"},{"name":"entity.name.tag.4gl","match":"(?i)\\b(AND|OR|ORDER BY|GROUP BY|PARTITION BY|ON|SELECT|UPDATE|INSERT|DELETE|FROM|WHERE|LEFT JOIN|INNER JOIN|RIGHT JOIN|DECLARE|SET)\\b"},{"name":"support.function.sql.4gl","match":"(?i)\\b(COUNT|ROW_NUMBER|OVER|MIN|MAX|AVG|SUM)\\b"},{"name":"support.type.sql.4gl","match":"(?i)\\b(ASC|DESC)\\b"},{"name":"constant.character.placeholder.4gl","match":"(?i)@\\b([a-z0-9\\-]+)\\b"},{"match":"(?i)(?:\\()?\\s*(\\*)\\s*(?:\\))?","captures":{"1":{"name":"constant.character.placeholder.4gl"}}}]},"StringDoubleQuote":{"patterns":[{"name":"string.quoted.double.content.4gl","begin":"\"","end":"\"","patterns":[{"include":"#EscapeCharacters"},{"include":"#SQLPlaceHolder"},{"include":"#LogicalOperators"},{"include":"#SupportConstant"},{"include":"#ComparisonOperators"}],"beginCaptures":{"0":{"name":"string.quoted.double.4gl"}},"endCaptures":{"0":{"name":"string.quoted.double.4gl"}}}]},"StringSingleQuote":{"patterns":[{"name":"string.quoted.single.content.4gl","begin":"'","end":"'","patterns":[{"include":"#EscapeCharacters"},{"include":"#SQLPlaceHolder"},{"include":"#LogicalOperators"},{"include":"#SupportConstant"},{"include":"#ComparisonOperators"}],"beginCaptures":{"0":{"name":"string.quoted.single.4gl"}},"endCaptures":{"0":{"name":"string.quoted.single.4gl"}}}]},"Support":{"match":"\\b(?i)(import)\\s*([a-z0-9]+)(\\s+\\w+)?\\b","captures":{"1":{"name":"support.function.4gl"},"2":{"name":"support.class.4gl"},"3":{"name":"support.type.4gl"}}},"SupportConstant":{"patterns":[{"name":"support.constant.4gl","match":"(?i)\\b(NULL|FALSE|NOTFOUND|TRUE)\\b"}]},"TypeModifiers":{"name":"storage.type.modifier.4gl","match":"\\b(?i)(DYNAMIC|PRIVATE|PUBLIC)\\b"},"Types":{"name":"storage.type.4gl","match":"\\b(?i)(RECORD|SMALLINT|ARRAY|DATE|DECIMAL|INTEGER|PRECISION|FLOAT|VARCHAR|BOOLEAN|MONEY|BYTE|DATETIME|TEXT|INT|INTERVAL|NUMERIC|CHARGETYPE|DEC|SMALLFLOAT|CHARACTER|CHAR|STRING|DO|DOUBLE|NCHAR|NVARCHAR|TINYINT)\\b"}}}
@@ -0,0 +1 @@
1
+ {"name":"hlasm","scopeName":"source.hlasm","patterns":[{"include":"#comment.full"},{"include":"#line"},{"include":"#the_line"}],"repository":{"branch_instructions":{"patterns":[{"name":"keyword.control","match":"(^|\\b)(?i:b|bct|be|ber|bh|bhr|bl|blr|bm|bmr|bne|bner|bnh|bnhr|bnl|bnlr|bnm|bnmr|bno|bnor|bnp|bnpr|bnz|bnzr|bo|bor|bor|bp|bpr|br|bz|bz|bzr|nop|nopr)\\b"}]},"char.def.strings":{"name":"string.character","match":"(([cC][lL]([0-9]+))|([cC]([0-9]+))|([cC][uU])([0-9]+))"},"char.ln.strings":{"name":"string.character","match":"(([0-9]*)([cC][lL])|([cC][uU][lL]))([0-9]*)'.*'"},"char.strings":{"name":"string.character","match":"(([cC])|([cC][uU]))'.*'"},"comment":{"patterns":[{"name":"comment","match":"^(\\*.{,70})|(^\\.\\*.{,69})"}]},"comment.full":{"patterns":[{"name":"comment","match":"^(\\*.*$)|(^\\.\\*.*$)"}]},"constants":{"patterns":[{"include":"#char.strings"},{"include":"#char.ln.strings"},{"include":"#char.def.strings"},{"include":"#hex.strings"},{"include":"#hex.ln.strings"},{"include":"#hex.strings.invalid"},{"include":"#double.strings"},{"include":"#single.strings"}]},"directives":{"patterns":[{"name":"keyword.other.directives","match":"\\b(?i:amode|com|copy|csect|dc|dsect|ds|drop|eject|end|entry|equ|ltorg|macro|mend|mexit|mnote|org|print|rmode|space|start|title|using)\\b"}]},"double.strings":{"name":"string.quoted.double","begin":"\"","end":"(\"|$)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end"}}},"general_instructions":{"patterns":[{"name":"keyword","match":"(^|\\b)(?i:a|ahi|ah|al|alr|ap|ar|axr|bal|balr|bas|basm|bassm|bc|bcr|bctr|bsm|bxh|bxle|c|cds|chi|ch|cl|clc|clcl|cli|clm|clr|cp|cr|cs|cvb|cvd|cxr|d|dp|dr|ed|edmk|ex|ic|icm|ipm|l|la|lcr|lhi|lh|lm|lnr|lpr|lr|lx|ltr|m|mh|mp|mr|mvc|mvcin|mvcl|mvi|mvn|mvo|mvz|n|nc|ni|nr|o|oc|oi|or|pack|s|sh|sl|sla|slda|sldl|sll|slr|sp|sr|sra|srda|srdl|srl|srp|st|stb|stc|spm|stcm|sth|stm|svc|tm|tr|trt|unpk|x|xc|xi|xr|zap)\\b"}]},"hex.ln.strings":{"name":"constant.numeric.integer.hexadecimal","match":"([0-9]*([xX]|[xX][lL]))([0-9]*)'[[:xdigit:]]*'"},"hex.strings":{"name":"constant.numeric.integer.hexadecimal","match":"([0-9]*([xX]|[fF]))'[[:xdigit:]]*'"},"hex.strings.invalid":{"name":"invalid.illegal.hexadecimal","match":"([xX])'.*'"},"instructions":{"patterns":[{"include":"#general_instructions"},{"include":"#branch_instructions"}]},"label":{"patterns":[{"name":"entity.name.function","match":"(^[0-9a-z@A-Z$#_\\$]+)"}]},"line":{"patterns":[{"match":"^(.{71,71})[ xX]([0-9]*$)","captures":{"1":{"patterns":[{"include":"#the_line"}]},"2":{"name":"comment.line.identification.sequence.field"}}}]},"macros":{"patterns":[{"name":"entity.name.function","match":"(^|\\b|\\s+)(?i:actr|ago|aif|anop|chau|close|dcb|gbla|gblb|gblc|get|lcla|lclb|lclc|open|ppio|put|read|seta|setb|setc|snap|write|wto|wtor|wtorpc)\\b"}]},"operators":{"patterns":[{"name":"keyword.operator","match":"\\b(?i:and:eq:ge:gt:le:lt:ne:not:or)\\b"}]},"parameters":{"patterns":[{"name":"variable.parameter","match":"\\b(?i:blksize|dcb|ddname|dsorg|eodad|gen|id|lrecl|lv|macrf|nogen|pdata|recfm|record|ru|storage|synad)\\b"}]},"single.strings":{"name":"string","match":"\\s('.*')"},"start_with_label":{"match":"^([0-9a-z@A-Z$#_\\$]+)\\s+(\\w+)","captures":{"1":{"patterns":[{"include":"#label"}]},"2":{"patterns":[{"include":"#instructions"},{"include":"#directives"},{"include":"#macros"}]}}},"start_with_no_label":{"match":"^\\s+(\\w+)","captures":{"1":{"patterns":[{"include":"#instructions"},{"include":"#directives"},{"include":"#macros"}]}}},"the_line":{"patterns":[{"include":"#comment"},{"include":"#start_with_label"},{"include":"#start_with_no_label"},{"include":"#operators"},{"include":"#parameters"},{"include":"#constants"}]}}}
@@ -1 +1 @@
1
- {"name":"jcl","scopeName":"source.jcl","patterns":[{"name":"comment.line.jcl","match":"^//\\*.*$"},{"match":"(//[A-Za-z0-9\\$\\#@]*)\\s*(COMMAND|CNTL|DD|ENCNTL|EXEC|IF|THEN|ELSE|ENDIF|INCLUDE|JCLIB|JOB|OUTPUT|PEND|PROC|SET|XMIT)","captures":{"1":{"name":"keyword.jcl"},"2":{"name":"keyword.other.jcl"},"3":{"name":"variable.other.jcl"}}},{"name":"string.quoted.single.jcl","match":"'.*'"},{"name":"variable.language.jcl","match":"(?i:DSN|DISP|DCB|UNIT|VOL|SYSOUT|SPACE|RECFM|LRECL)=","captures":{"1":{"name":"variable.dd.language.jcl"}}},{"name":"variable.language.jcl","match":"(?i:PGM|PROC|PARM|ADDRSPC|ACCT|TIME|REGION|COND|DSNME|DATAC)=","captures":{"1":{"name":"variable.exec.language.jcl"}}}]}
1
+ {"name":"jcl","scopeName":"source.jcl","patterns":[{"name":"comment.line.jcl","match":"^//\\*.*$"},{"name":"meta.symbol.jcl","begin":"(?i:DD\\s+\\*$|DD\\s+\\*.*[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$)","end":"(?i:(//[A-Za-z0-9\\$\\#@\\.]*)|/\\*)","beginCaptures":{"0":{"name":"keyword.jcl"}},"endCaptures":{"0":{"name":"variable.other.jcl"}}},{"match":"(//[A-Za-z0-9\\$\\#@\\.]*)\\s+(COMMAND|CNTL|ENCNTL|EXEC|IF|THEN|ELSE|ENDIF|INCLUDE|JCLIB|JOB|OUTPUT|PEND|UTPROC|PROC|SET|XMIT)","captures":{"1":{"name":"variable.other.jcl"},"2":{"name":"keyword.other.jcl"},"3":{"name":"variable.other.jcl"}}},{"name":"keyword.other.jcl","match":"(^/\\*JOBPARM)"},{"match":"(?\u003c![a-zA-Z])(BURST|B|BYTES|M|CARDS|C|FORMS|F|LINECT|K|LINES|L|NOLOG|J|PAGES|G|PROCLIB|P|RESTART|E|ROOM|R|SYSAFF|S|TIME|T)(=)","captures":{"1":{"name":"keyword.other.jcl"},"2":{"name":"keyword.operator.jcl"}}},{"name":"keyword.other.jcl","match":"(^/\\*OUTPUT)"},{"match":"(?\u003c![a-zA-Z])(BURST|CHARS|CKPTLNS|CKPTPGS|COMPACT|COPIES|COPYG|DEST|FCB|FLASHC|FLASH|FORMS|B|X|E|P|Z|N|G|D|C|Q|O|F)(=)","captures":{"1":{"name":"variable.other.jcl"},"2":{"name":"keyword.operator.jcl"}}},{"match":"(^/\\*MESSAGE)\\s+(.*$)","captures":{"1":{"name":"keyword.other.jcl"},"2":{"name":"token.info-token.jcl"}}},{"match":"(^/\\*(?i:NETACCT|NOTIFY|SETUP|SIGNOFF|SIGNON|XEQ|XMIT))\\s+(.*$)","captures":{"1":{"name":"keyword.other.jcl"},"2":{"name":"variable.parameter.jcl"}}},{"match":"(^/\\*PRIORITY)\\s+([a-zA-Z0-9])(.*$)","captures":{"1":{"name":"keyword.other.jcl"},"2":{"name":"token.info-token.jcl"},"3":{"name":"token.error-token.jcl"}}},{"match":"(^/\\*ROUTE)\\s+(PRINT|PUNCH|XEQ)\\s+(.*$)","captures":{"1":{"name":"keyword.other.jcl"},"2":{"name":"variable.other.jcl"},"3":{"name":"meta.symbol.jcl"}}},{"name":"keyword.continuation.jcl","match":"^//\\s+"},{"name":"string.quoted.single.jcl","match":"'.*'"},{"match":"(?\u003c![a-zA-Z])(?i:DSN|DISP|DCB|UNIT|VOL|SYSOUT|SPACE|RECFM|LRECL)(=)","captures":{"0":{"name":"variable.language.jcl"},"1":{"name":"keyword.operator.jcl"}}},{"name":"variable.language.jcl","match":"(?\u003c![a-zA-Z])(?i:PGM|UTPROC|PROC|PARM|ADDRSPC|ACCT|TIME|REGION|COND|DSNME|DATAC)(=)","captures":{"1":{"name":"variable.exec.language.jcl"},"2":{"name":"keyword.operator.jcl"}}},{"name":"variable.language.job.jcl","match":"(?\u003c![a-zA-Z])(?i:ADDSPC|BYTES|CARDS|DSENQSHR|GROUP|JESLOG|JOBRC|LINES|MEMLIMIT|MSGCLASS|MSGLEVEL|NOTIFY|PAGES|PASSWORD|PERFORM|PRTY|RD|REGION|RESTART|SECLABEL|SCHENV|SYAFF|SYSTEM|TIME|TYPRUN|UJOBCORR|USER|CLASS|UID)(=|$)","captures":{"1":{"name":"constant.language.job.jcl"},"2":{"name":"keyword.operator.jcl"}}},{"name":"variable.language.jcl","match":"(?\u003c![a-zA-Z])(?i:NEW|DELETE|OLD|KEEP|KEEP|SHR|PASS|CATLG|MOD|CATLG|UNCATLG)(=|$)","captures":{"1":{"name":"constant.language.disp.jcl"}}},{"name":"variable.language.typrun.jcl","match":"(?i:HOLD|JCLHOLD|SCAN)","captures":{"1":{"name":"constant.language.typrun.jcl"}}},{"name":"variable.language.dcb.jcl","match":"(?i:BFALN|BFTEK|BLKSIZE|BUFIN|BUFL|BUFMAX|BUFNO|BUFOFF|BUFOUT|BUFSIZE|CPRI|CYLOFL|DEN|DIAGNS|DSORG|EROPT|FUNC|GNCP|INTVL|IPL|TXID|KEYLEN|LIMCT|LRECL|MODE|NCP|NTM|OPTCD|PCI|PRTSP|RECFM|RESERVE|RKP|STACK|THRESH|TRTCH)","captures":{"1":{"name":"constant.language.dbc.jcl"}}},{"name":"variable.language.dcb.jcl","match":"(?\u003c![-_\\.a-zA-Z])(?i:BLKSIZE|DCB|DDname|DEST|DISP|DSNAME|DSNTYPE|EXPDT|KEYLEN|LABEL|LIKE|LRECL|OUTLIM|OUTPUT|RECFM|RECORG|RETPD|SPACE|SYSOUT|UNIT|VOLUME)","captures":{"1":{"name":"constant.language.dbc_generic.jcl"}}},{"name":"keyword.control.conditional.jcl","match":"(?i:COND\\..*=|COND=)"},{"name":"keyword.operator.comparison.jcl","match":"(?\u003c![a-zA-Z])(?i:LT|GT|GE|EQ|LE|NE|EVEN|ONLY)(?=\\)|,)"},{"name":"variable.other.jcl","match":"^(//[A-Za-z0-9\\$\\#@\\.]*)"},{"name":"keyword.other.jcl","match":"(?i:DD\\s+)"}]}
@@ -1 +1 @@
1
- {"name":"Kotlin","scopeName":"source.kotlin","patterns":[{"include":"#comments"},{"include":"#package"},{"include":"#imports"},{"include":"#code"}],"repository":{"annotations":{"patterns":[{"name":"meta.annotation.kotlin","match":"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:\\s*?[a-zA-Z_]\\w*"},{"name":"meta.annotation.kotlin","begin":"@[a-zA-Z_]\\w*\\s*(\\()","end":"\\)","patterns":[{"include":"#code"},{"name":"punctuation.seperator.property.kotlin","match":","}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.arguments.end.kotlin"}}},{"name":"meta.annotation.kotlin","match":"@[a-zA-Z_]\\w*"}]},"braces":{"patterns":[{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]},"brackets":{"patterns":[{"name":"meta.brackets.kotlin","begin":"\\[","end":"\\]","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.kotlin"}}}]},"builtin-functions":{"patterns":[{"match":"\\b(apply|also|let|run|takeIf|takeWhile|takeUnless|with|print|println)\\b\\s*(?={|\\()","captures":{"1":{"name":"support.function.kotlin"}}},{"match":"\\b(arrayListOf|mutableListOf|listOf|mutableMapOf|mapOf|mutableSetOf|setOf)\\b\\s*(?={|\\()","captures":{"1":{"name":"support.function.kotlin"}}}]},"class-ident":{"patterns":[{"name":"entity.name.type.class.kotlin","match":"\\b[A-Z_]\\w*\\b"}]},"class-literal":{"patterns":[{"name":"meta.class.kotlin","begin":"(?=\\b(?:(?:(?:data|value)\\s+)?class|(?:(?:fun|value)\\s+)?interface)\\s+\\w+)\\b","end":"(?=\\}|$)","patterns":[{"include":"#keyword"},{"begin":"\\b((?:(?:data|value)\\s+)?class|(?:(?:fun|value)\\s+)?interface)\\b\\s+(\\w+)","end":"(?=\\(|\\{|$)","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#types"}],"beginCaptures":{"1":{"name":"storage.modifier.kotlin"},"2":{"name":"entity.name.class.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comments"},{"include":"#class-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]}],"repository":{"class-parameter-list":{"patterns":[{"include":"#generic"},{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]}}},"code":{"patterns":[{"include":"#comments"},{"include":"#comments-inline"},{"include":"#annotations"},{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"#class-literal"},{"include":"#literal-functions"},{"include":"#literals"},{"include":"#keywords"},{"include":"#types"},{"include":"#operators"},{"include":"#constants"},{"include":"#punctuations"},{"include":"#builtin-functions"}]},"comments":{"patterns":[{"include":"#inline"},{"name":"comment.block.kotlin","begin":"/\\*","end":"\\*/","patterns":[{"include":"#nested"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.kotlin"}}}],"repository":{"inline":{"patterns":[{"match":"(//).*$\\n?","captures":{"0":{"name":"punctuation.definition.comment.kotlin"},"1":{"name":"comment.line.double-slash.kotlin"}}}]},"nested":{"patterns":[{"begin":"/\\*","end":"\\*/","patterns":[{"include":"#nested"}]}]}}},"constants":{"patterns":[{"name":"constant.language.kotlin","match":"\\b(class)\\b"},{"name":"variable.language.kotlin","match":"\\b(this|super)\\b"}]},"generic":{"patterns":[{"begin":"(?=\\\u003c(?:[A-Z_]|\\*|in|out))","end":"(?\u003c=\\\u003e)(?!\\\u003e)","patterns":[{"name":"punctuation.bracket.angle.begin.kotlin","match":"\u003c"},{"name":"punctuation.bracket.angle.end.kotlin","match":"\u003e"},{"name":"entity.name.type.generic.wildcard.kotlin","match":"\\*"},{"include":"#generic-parameter-list"},{"name":"punctuation.seperator.kotlin","match":","}]}],"repository":{"generic-parameter-list":{"patterns":[{"include":"#annotations"},{"name":"storage.modifier.generic.variance.kotlin","match":"\\b(in|out)\\b"},{"include":"#built-in-types"},{"include":"#class-ident"},{"include":"#generic"},{"include":"#operators"}]}}},"imports":{"patterns":[{"name":"meta.import.kotlin","match":"^\\s*(import)\\s+((?:[`][^$`]+[`]|[^` $.]+)(?:\\.(?:[`][^$`]+[`]|[^` $.]+))*)(?:\\s+(as)\\s+([`][^$`]+[`]|[^` $.]+))?$","captures":{"1":{"name":"keyword.other.import.kotlin"},"2":{"name":"storage.modifier.import.kotlin"},"3":{"name":"keyword.other.kotlin"},"4":{"name":"entity.name.type"}}}]},"keywords":{"patterns":[{"name":"keyword.operator.kotlin","match":"(\\!in|\\!is|as\\?)\\b"},{"name":"keyword.operator.kotlin","match":"\\b(in|is|as|assert)\\b"},{"name":"storage.type.kotlin","match":"\\b(val|var)\\b"},{"name":"punctuation.definition.variable.kotlin","match":"\\b(\\_)\\b"},{"name":"storage.type.kotlin","match":"\\b(tailrec|operator|infix|typealias|reified|copy(?=\\s+fun|\\s+var))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(out|in|yield|typealias|override)\\b"},{"name":"storage.modifier.kotlin","match":"\\b(?\u003c![+-/%*=(,]\\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\\s(?!(?:\\s*)(?:[+-/%*=:).,]|$)))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(vararg(?=\\s+\\w+:))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(suspend(?!\\s*[\\(]?\\s*\\{))\\b"},{"name":"keyword.control.catch-exception.kotlin","match":"\\b(try|catch|finally|throw)\\b"},{"name":"keyword.control.conditional.kotlin","match":"\\b(if|else|when)\\b"},{"name":"keyword.control.kotlin","match":"\\b(while|for|do|return|break|continue)\\b"},{"name":"entity.name.function.constructor","match":"\\b(constructor|init)\\b"},{"name":"storage.type.kotlin","match":"\\b(companion|object)\\b"}]},"literal-functions":{"patterns":[{"name":"meta.function.kotlin","begin":"(?=\\b(?:fun)\\b)","end":"(?\u003c=$|=|\\})","patterns":[{"include":"#keywords"},{"begin":"\\bfun\\b","end":"(?=\\()","patterns":[{"include":"#generic"},{"match":"(`[^`]*`)","captures":{"0":{"name":"entity.name.function.kotlin"},"1":{"name":"string.quoted.backtick.kotlin"}}},{"match":"([\\.\u003c\\?\u003e\\w]+\\.)?(\\w+)","captures":{"2":{"name":"entity.name.function.kotlin"}}},{"include":"#types"}],"beginCaptures":{"0":{"name":"keyword.other.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#function-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"keyword.operator.single-expression.kotlin","match":"="},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}},{"include":"#return-type"}]}],"repository":{"function-parameter-list":{"patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]},"return-type":{"patterns":[{"name":"meta.return.type.kotlin","begin":"(?\u003c=\\))\\s*(:)(?=\\s*\\S)","end":"(?\u003c![:|\u0026])(?=$|^|[={};,]|//)","patterns":[{"include":"#types"}]}]}}},"literals":{"patterns":[{"include":"#boolean"},{"include":"#numeric"},{"include":"#string"},{"include":"#null"}],"repository":{"boolean":{"patterns":[{"name":"constant.language.boolean.kotlin","match":"\\b(true|false)\\b"}]},"null":{"patterns":[{"name":"constant.language.null.kotlin","match":"\\b(null)\\b"}]},"numeric":{"patterns":[{"name":"constant.numeric.hex.kotlin","match":"\\b(0(x|X)[0-9A-Fa-f_]*)([LuU]|[uU]L)?\\b"},{"name":"constant.numeric.binary.kotlin","match":"\\b(0(b|B)[0-1_]*)([LuU]|[uU]L)?\\b"},{"name":"constant.numeric.float.kotlin","match":"\\b([0-9][0-9_]*\\.[0-9][0-9_]*[fFL]?)\\b"},{"name":"constant.numeric.integer.kotlin","match":"\\b([0-9][0-9_]*([fFLuU]|[uU]L)?)\\b"}]},"string":{"patterns":[{"name":"string.quoted.triple.kotlin","begin":"\"\"\"","end":"\"\"\"(?!\")","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}},{"name":"string.quoted.double.kotlin","begin":"(?!')\"","end":"\"","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}},{"name":"string.quoted.single.kotlin","begin":"'","end":"'","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}}],"repository":{"string-content":{"patterns":[{"name":"constant.character.escape.kotlin","match":"\\\\[0\\\\tnr\"']"},{"name":"constant.character.escape.unicode.kotlin","match":"\\\\(x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|.)"},{"name":"entity.string.template.element.kotlin","begin":"\\$(\\{)","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.kotlin"}}},{"name":"entity.string.template.element.kotlin","match":"\\$[a-zA-Z_]\\w*"}]}}}}},"object-literal":{"patterns":[{"name":"meta.class.kotlin","begin":"(?=\\b(?:object)\\b((\\s*:\\s*)|\\s+)\\w+)","end":"(?=\\}|$)","patterns":[{"include":"#annotation"},{"begin":"\\b(object)\\b\\s*(:)\\s*(\\w+)","end":"(?=\\(|\\{|$)","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#types"}],"beginCaptures":{"1":{"name":"storage.modifier.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"},"3":{"name":"entity.name.class.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comments"},{"include":"#class-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]}],"repository":{"class-parameter-list":{"patterns":[{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]}}},"operators":{"patterns":[{"name":"keyword.operator.bitwise.kotlin","match":"\\b(and|or|not|inv)\\b"},{"name":"keyword.operator.comparison.kotlin","match":"(==|!=|===|!==|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.kotlin","match":"(=)"},{"name":"keyword.operator.declaration.kotlin","match":"(:(?!:))"},{"name":"keyword.operator.elvis.kotlin","match":"(\\?:)"},{"name":"keyword.operator.increment-decrement.kotlin","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.kotlin","match":"(\\-|\\+|\\*|\\/|%)"},{"name":"keyword.operator.arithmetic.assign.kotlin","match":"(\\+\\=|\\-\\=|\\*\\=|\\/\\=)"},{"name":"keyword.operator.logical.kotlin","match":"(\\!|\\\u0026\\\u0026|\\|\\|)"},{"name":"keyword.operator.range.kotlin","match":"(\\.\\.)"}]},"package":{"patterns":[{"match":"^\\s*(package)\\b(?:\\s*([^ ;$]+)\\s*)?","captures":{"1":{"name":"keyword.other.kotlin"},"2":{"name":"entity.name.package.kotlin"}}}]},"parens":{"patterns":[{"name":"meta.group.kotlin","begin":"\\(","end":"\\)","patterns":[{"include":"#keyword-punctuation"},{"include":"#parameters"},{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]},"punctuations":{"patterns":[{"name":"punctuation.accessor.reference.kotlin","match":"::"},{"name":"punctuation.accessor.dot.safe.kotlin","match":"\\?\\."},{"name":"punctuation.accessor.dot.kotlin","match":"(?\u003c!\\?)\\."},{"name":"punctuation.seperator.kotlin","match":"\\,"},{"name":"punctuation.terminator.kotlin","match":"\\;"}]},"types":{"patterns":[{"include":"#built-in-types"},{"include":"#class-ident"},{"include":"#generic"},{"match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(-\u003e)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])","captures":{"1":{"name":"keyword.operator.type.function.kotlin"}}},{"name":"keyword.operator.type.nullable.kotlin","match":"\\?(?!\\.)"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#types"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}],"repository":{"built-in-types":{"patterns":[{"name":"support.class.kotlin","match":"\\b(Nothing|Any|Unit|String|CharSequence|Int|Boolean|Char|Long|Double|Float|Short|Byte|UByte|UShort|UInt|ULong|Array|List|Map|Set|dynamic)\\b(\\?)?"},{"name":"support.class.kotlin","match":"\\b(IntArray|BooleanArray|CharArray|LongArray|DoubleArray|FloatArray|ShortArray|ByteArray|UByteArray|UShortArray|UIntArray|ULongArray)\\b(\\?)?"}]}}}}}
1
+ {"name":"Kotlin","scopeName":"source.kotlin","patterns":[{"include":"#comments"},{"include":"#package"},{"include":"#imports"},{"include":"#code"}],"repository":{"annotations":{"patterns":[{"name":"meta.annotation.kotlin","match":"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:\\s*?[a-zA-Z_]\\w*"},{"name":"meta.annotation.kotlin","begin":"@[a-zA-Z_]\\w*\\s*(\\()","end":"\\)","patterns":[{"include":"#code"},{"name":"punctuation.seperator.property.kotlin","match":","}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.arguments.end.kotlin"}}},{"name":"meta.annotation.kotlin","match":"@[a-zA-Z_]\\w*"}]},"braces":{"patterns":[{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]},"brackets":{"patterns":[{"name":"meta.brackets.kotlin","begin":"\\[","end":"\\]","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.kotlin"}}}]},"builtin-functions":{"patterns":[{"match":"\\b(apply|also|let|run|takeIf|takeWhile|takeUnless|with|print|println)\\b\\s*(?={|\\()","captures":{"1":{"name":"support.function.kotlin"}}},{"match":"\\b(arrayListOf|mutableListOf|listOf|mutableMapOf|mapOf|mutableSetOf|setOf)\\b\\s*(?={|\\()","captures":{"1":{"name":"support.function.kotlin"}}}]},"class-ident":{"patterns":[{"name":"entity.name.type.class.kotlin","match":"\\b[A-Z_]\\w*\\b"}]},"class-literal":{"patterns":[{"name":"meta.class.kotlin","begin":"(?=\\b(?:(?:(?:data|value)\\s+)?class|(?:(?:fun|value)\\s+)?interface)\\s+\\w+)\\b","end":"(?=\\}|$)","patterns":[{"include":"#keywords"},{"begin":"\\b((?:(?:data|value)\\s+)?class|(?:(?:fun|value)\\s+)?interface)\\b\\s+(\\w+)","end":"(?=\\(|\\{|$)","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#types"}],"beginCaptures":{"1":{"name":"storage.modifier.kotlin"},"2":{"name":"entity.name.class.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comments"},{"include":"#class-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]}],"repository":{"class-parameter-list":{"patterns":[{"include":"#generic"},{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]}}},"code":{"patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"#class-literal"},{"include":"#literal-functions"},{"include":"#literals"},{"include":"#keywords"},{"include":"#types"},{"include":"#operators"},{"include":"#constants"},{"include":"#punctuations"},{"include":"#builtin-functions"}]},"comments":{"patterns":[{"include":"#inline"},{"name":"comment.block.kotlin","begin":"/\\*","end":"\\*/","patterns":[{"include":"#nested"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.kotlin"}}}],"repository":{"inline":{"patterns":[{"match":"(//).*$\\n?","captures":{"0":{"name":"punctuation.definition.comment.kotlin"},"1":{"name":"comment.line.double-slash.kotlin"}}}]},"nested":{"patterns":[{"begin":"/\\*","end":"\\*/","patterns":[{"include":"#nested"}]}]}}},"constants":{"patterns":[{"name":"constant.language.kotlin","match":"\\b(class)\\b"},{"name":"variable.language.kotlin","match":"\\b(this|super)\\b"}]},"generic":{"patterns":[{"begin":"(?=\\\u003c(?:[A-Z_]|\\*|in|out))","end":"(?\u003c=\\\u003e)(?!\\\u003e)","patterns":[{"name":"punctuation.bracket.angle.begin.kotlin","match":"\u003c"},{"name":"punctuation.bracket.angle.end.kotlin","match":"\u003e"},{"name":"entity.name.type.generic.wildcard.kotlin","match":"\\*"},{"include":"#generic-parameter-list"},{"name":"punctuation.seperator.kotlin","match":","}]}],"repository":{"generic-parameter-list":{"patterns":[{"include":"#annotations"},{"name":"storage.modifier.generic.variance.kotlin","match":"\\b(in|out)\\b"},{"include":"#built-in-types"},{"include":"#class-ident"},{"include":"#generic"},{"include":"#operators"}]}}},"imports":{"patterns":[{"name":"meta.import.kotlin","match":"^\\s*(import)\\s+((?:[`][^$`]+[`]|[^` $.]+)(?:\\.(?:[`][^$`]+[`]|[^` $.]+))*)(?:\\s+(as)\\s+([`][^$`]+[`]|[^` $.]+))?$","captures":{"1":{"name":"keyword.other.import.kotlin"},"2":{"name":"storage.modifier.import.kotlin"},"3":{"name":"keyword.other.kotlin"},"4":{"name":"entity.name.type"}}}]},"keywords":{"patterns":[{"name":"keyword.operator.kotlin","match":"(\\!in|\\!is|as\\?)\\b"},{"name":"keyword.operator.kotlin","match":"\\b(in|is|as|assert)\\b"},{"name":"storage.type.kotlin","match":"\\b(val|var)\\b"},{"name":"punctuation.definition.variable.kotlin","match":"\\b(\\_)\\b"},{"name":"storage.type.kotlin","match":"\\b(tailrec|operator|infix|typealias|reified|copy(?=\\s+fun|\\s+var))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(out|in|yield|typealias|override)\\b"},{"name":"storage.modifier.kotlin","match":"\\b(?\u003c![+-/%*=(,]\\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\\s(?!(?:\\s*)(?:[+-/%*=:).,]|$)))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(vararg(?=\\s+\\w+:))\\b"},{"name":"storage.modifier.kotlin","match":"\\b(suspend(?!\\s*[\\(]?\\s*\\{))\\b"},{"name":"keyword.control.catch-exception.kotlin","match":"\\b(try|catch|finally|throw)\\b"},{"name":"keyword.control.conditional.kotlin","match":"\\b(if|else|when)\\b"},{"name":"keyword.control.kotlin","match":"\\b(while|for|do|return|break|continue)\\b"},{"name":"entity.name.function.constructor","match":"\\b(constructor|init)\\b"},{"name":"storage.type.kotlin","match":"\\b(companion|object)\\b"}]},"literal-functions":{"patterns":[{"name":"meta.function.kotlin","begin":"(?=\\b(?:fun)\\b)","end":"(?\u003c=$|=|\\})","patterns":[{"include":"#keywords"},{"begin":"\\bfun\\b","end":"(?=\\()","patterns":[{"include":"#generic"},{"match":"(`[^`]*`)","captures":{"0":{"name":"entity.name.function.kotlin"},"1":{"name":"string.quoted.backtick.kotlin"}}},{"match":"([\\.\u003c\\?\u003e\\w]+\\.)?(\\w+)","captures":{"2":{"name":"entity.name.function.kotlin"}}},{"include":"#types"}],"beginCaptures":{"0":{"name":"keyword.other.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#function-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"keyword.operator.single-expression.kotlin","match":"="},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}},{"include":"#return-type"}]}],"repository":{"function-parameter-list":{"patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]},"return-type":{"patterns":[{"name":"meta.return.type.kotlin","begin":"(?\u003c=\\))\\s*(:)(?=\\s*\\S)","end":"(?\u003c![:|\u0026])(?=$|^|[={};,]|//)","patterns":[{"include":"#types"}]}]}}},"literals":{"patterns":[{"include":"#boolean"},{"include":"#numeric"},{"include":"#string"},{"include":"#null"}],"repository":{"boolean":{"patterns":[{"name":"constant.language.boolean.kotlin","match":"\\b(true|false)\\b"}]},"null":{"patterns":[{"name":"constant.language.null.kotlin","match":"\\b(null)\\b"}]},"numeric":{"patterns":[{"name":"constant.numeric.hex.kotlin","match":"\\b(0(x|X)[0-9A-Fa-f_]*)([LuU]|[uU]L)?\\b"},{"name":"constant.numeric.binary.kotlin","match":"\\b(0(b|B)[0-1_]*)([LuU]|[uU]L)?\\b"},{"name":"constant.numeric.float.kotlin","match":"\\b([0-9][0-9_]*\\.[0-9][0-9_]*[fFL]?)\\b"},{"name":"constant.numeric.integer.kotlin","match":"\\b([0-9][0-9_]*([fFLuU]|[uU]L)?)\\b"}]},"string":{"patterns":[{"name":"string.quoted.triple.kotlin","begin":"\"\"\"","end":"\"\"\"(?!\")","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}},{"name":"string.quoted.double.kotlin","begin":"(?!')\"","end":"\"","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}},{"name":"string.quoted.single.kotlin","begin":"'","end":"'","patterns":[{"include":"#string-content"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.kotlin"}}}],"repository":{"string-content":{"patterns":[{"name":"constant.character.escape.kotlin","match":"\\\\[0\\\\tnr\"']"},{"name":"constant.character.escape.unicode.kotlin","match":"\\\\(x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|.)"},{"name":"entity.string.template.element.kotlin","begin":"\\$(\\{)","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"1":{"name":"punctuation.section.block.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.kotlin"}}},{"name":"entity.string.template.element.kotlin","match":"\\$[a-zA-Z_]\\w*"}]}}}}},"object-literal":{"patterns":[{"name":"meta.class.kotlin","begin":"(?=\\b(?:object)\\b((\\s*:\\s*)|\\s+)\\w+)","end":"(?=\\}|$)","patterns":[{"include":"#annotation"},{"begin":"\\b(object)\\b\\s*(:)\\s*(\\w+)","end":"(?=\\(|\\{|$)","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#types"}],"beginCaptures":{"1":{"name":"storage.modifier.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"},"3":{"name":"entity.name.class.kotlin"}}},{"name":"meta.parameters.kotlin","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comments"},{"include":"#class-parameter-list"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"},"1":{"name":"punctuation.definition.parameters.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"},"1":{"name":"punctuation.definition.parameters.end.kotlin"}}},{"name":"meta.block.kotlin","begin":"\\{","end":"\\}","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]}],"repository":{"class-parameter-list":{"patterns":[{"include":"#annotations"},{"include":"#keywords"},{"match":"(\\w+)\\s*(:)","captures":{"1":{"name":"variable.parameter.function.kotlin"},"2":{"name":"keyword.operator.declaration.kotlin"}}},{"name":"punctuation.seperator.kotlin","match":","},{"include":"#types"}]}}},"operators":{"patterns":[{"name":"keyword.operator.bitwise.kotlin","match":"\\b(and|or|not|inv)\\b"},{"name":"keyword.operator.comparison.kotlin","match":"(==|!=|===|!==|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.kotlin","match":"(=)"},{"name":"keyword.operator.declaration.kotlin","match":"(:(?!:))"},{"name":"keyword.operator.elvis.kotlin","match":"(\\?:)"},{"name":"keyword.operator.increment-decrement.kotlin","match":"(\\-\\-|\\+\\+)"},{"name":"keyword.operator.arithmetic.kotlin","match":"(\\-|\\+|\\*|\\/|%)"},{"name":"keyword.operator.arithmetic.assign.kotlin","match":"(\\+\\=|\\-\\=|\\*\\=|\\/\\=)"},{"name":"keyword.operator.logical.kotlin","match":"(\\!|\\\u0026\\\u0026|\\|\\|)"},{"name":"keyword.operator.range.kotlin","match":"(\\.\\.)"}]},"package":{"patterns":[{"match":"^\\s*(package)\\b(?:\\s*([^ ;$]+)\\s*)?","captures":{"1":{"name":"keyword.other.kotlin"},"2":{"name":"entity.name.package.kotlin"}}}]},"parens":{"patterns":[{"name":"meta.group.kotlin","begin":"\\(","end":"\\)","patterns":[{"include":"#code"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}]},"punctuations":{"patterns":[{"name":"punctuation.accessor.reference.kotlin","match":"::"},{"name":"punctuation.accessor.dot.safe.kotlin","match":"\\?\\."},{"name":"punctuation.accessor.dot.kotlin","match":"(?\u003c!\\?)\\."},{"name":"punctuation.seperator.kotlin","match":"\\,"},{"name":"punctuation.terminator.kotlin","match":"\\;"}]},"types":{"patterns":[{"include":"#built-in-types"},{"include":"#class-ident"},{"include":"#generic"},{"match":"(?\u003c![/=\\-+!*%\u003c\u003e\u0026|\\^~.])(-\u003e)(?![/=\\-+!*%\u003c\u003e\u0026|\\^~.])","captures":{"1":{"name":"keyword.operator.type.function.kotlin"}}},{"name":"keyword.operator.type.nullable.kotlin","match":"\\?(?!\\.)"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#types"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.kotlin"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.kotlin"}}}],"repository":{"built-in-types":{"patterns":[{"name":"support.class.kotlin","match":"\\b(Nothing|Any|Unit|String|CharSequence|Int|Boolean|Char|Long|Double|Float|Short|Byte|UByte|UShort|UInt|ULong|Array|List|Map|Set|dynamic)\\b(\\?)?"},{"name":"support.class.kotlin","match":"\\b(IntArray|BooleanArray|CharArray|LongArray|DoubleArray|FloatArray|ShortArray|ByteArray|UByteArray|UShortArray|UIntArray|ULongArray)\\b(\\?)?"}]}}}}}
@@ -0,0 +1 @@
1
+ {"name":"ligo","scopeName":"source.ligo","patterns":[{"include":"#string"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#attribute"},{"include":"#macro"},{"include":"#controlkeywords"},{"include":"#function"},{"include":"#operators"},{"include":"#typedefinition"},{"include":"#module"},{"include":"#identifierconstructor"},{"include":"#constorvar"},{"include":"#numericliterals"}],"repository":{"attribute":{"name":"keyword.control.attribute.ligo","match":"\\[@.*\\]"},"block_comment":{"name":"comment.block.ligo","begin":"\\(\\*","end":"\\*\\)"},"constorvar":{"match":"\\b(const|var)\\b","captures":{"1":{"name":"keyword.other.ligo"}}},"controlkeywords":{"name":"keyword.control.ligo","match":"\\b(case|with|if|then|else|assert|failwith|begin|end|in|is|from|skip|block|contains|to|step|of|while|for|remove)\\b"},"function":{"match":"\\b(function)\\b\\s*\\b([a-zA-Z$_][a-zA-Z0-9$_]*)","captures":{"1":{"name":"keyword.other.ligo"},"2":{"name":"entity.name.function.ligo"}}},"identifierconstructor":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\s+","captures":{"1":{"name":"variable.other.enummember.ligo"}}},"line_comment":{"name":"comment.block.ligo","match":"\\/\\/.*$"},"macro":{"name":"meta.preprocessor.ligo","match":"^\\#[a-zA-Z]+"},"module":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\.([a-z][a-zA-Z0-9_$]*)","captures":{"1":{"name":"storage.class.ligo"},"2":{"name":"storage.var.ligo"}}},"numericliterals":{"name":"constant.numeric.ligo","match":"(\\+|\\-)?[0-9]+(n|tz|tez|mutez|)\\b"},"operators":{"name":"keyword.operator.ligo","match":"\\s+(\\-|\\+|mod|land|lor|lxor|lsl|lsr|\u0026\u0026|\\|\\||\u003e|=/=|\u003c=|=\u003e|\u003c|\u003e)\\s+"},"string":{"name":"string.quoted.double.ligo","begin":"\\\"","end":"\\\""},"typedefinition":{"name":"entity.name.type.ligo","match":"\\b(type)\\b"}}}
@@ -0,0 +1 @@
1
+ {"name":"Monkey C","scopeName":"source.mc","patterns":[{"include":"#statements"}],"repository":{"access-modifier":{"patterns":[{"name":"storage.modifier.mc","match":"(?\u003c!\\.|\\$)\\b(hidden|static)\\b(?!\\$)"}]},"after-operator-block":{"name":"meta.objectliteral.mc","begin":"(?\u003c=[=(,\\[?+!]|return|throw|in|of|typeof|\u0026\u0026|\\|\\||\\*)\\s*(\\{)","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"1":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"array-literal":{"name":"meta.array.literal.mc","begin":"\\[","end":"\\]","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.mc"}},"endCaptures":{"0":{"name":"meta.brace.square.mc"}}},"boolean-literal":{"patterns":[{"name":"constant.language.boolean.true.mc","match":"(?\u003c!\\.|\\$)\\btrue\\b(?!\\$)"},{"name":"constant.language.boolean.false.mc","match":"(?\u003c!\\.|\\$)\\bfalse\\b(?!\\$)"}]},"case-clause":{"name":"case-clause.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(case|default(?=:))\\b(?!\\$)","end":":","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.section.case-statement.mc"}}},"class-body":{"begin":"\\{","end":"\\}","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#decorator"},{"include":"#method-declaration"},{"include":"#enum-declaration"},{"include":"#field-declaration"},{"include":"#access-modifier"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"class-declaration":{"name":"meta.class.mc","begin":"(?\u003c!\\.|\\$)\\b(?:(class))\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","captures":{"0":{"name":"entity.name.type.class.mc"}}},{"include":"#class-body"}],"beginCaptures":{"1":{"name":"storage.type.class.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"class-heritage":{"begin":"(?\u003c!\\.|\\$)(?:\\b(extends)\\b)(?!\\$)","end":"(?=\\{)","patterns":[{"include":"#comment"},{"include":"#class-heritage"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)(?=\\s*[_$[:alpha:]][_$[:alnum:]]*(\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*([,\u003c{]|extends|//|/\\*))","captures":{"1":{"name":"entity.other.inherited-class.mc"}}},{"include":"#expression"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.block.mc"}}},"comment":{"patterns":[{"name":"comment.block.documentation.mc","begin":"/\\*\\*(?!/)","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"name":"comment.block.mc","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}},{"begin":"(^[ \\t]+)?(?=//)","end":"(?=$)","patterns":[{"name":"comment.line.double-slash.mc","begin":"//","end":"(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.comment.mc"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mc"}}}]},"control-statement":{"patterns":[{"name":"keyword.control.trycatch.mc","match":"(?\u003c!\\.|\\$)\\b(catch|finally|throw|try)\\b(?!\\$)"},{"name":"keyword.control.loop.mc","match":"(?\u003c!\\.|\\$)\\b(break|continue|do|while)\\b(?!\\$)"},{"name":"keyword.control.flow.mc","match":"(?\u003c!\\.|\\$)\\b(return)\\b(?!\\$)"},{"name":"keyword.control.switch.mc","match":"(?\u003c!\\.|\\$)\\b(case|default|switch)\\b(?!\\$)"},{"name":"keyword.control.conditional.mc","match":"(?\u003c!\\.|\\$)\\b(else|if)\\b(?!\\$)"}]},"decl-block":{"name":"meta.block.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"declaration":{"name":"meta.declaration.mc","patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#import-declaration"}]},"decorator":{"name":"meta.decorator.mc","patterns":[{"match":"(?\u003c!\\.|\\$)(\\(:([_$[:alpha:]][_$[:alnum:]]*)\\))","captures":{"0":{"name":"storage.type.decorator.mc"}}}]},"enum-declaration":{"name":"meta.enum.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(enum)\\b","end":"(?\u003c=\\})","patterns":[{"include":"#comment"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#comment"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=,|\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}],"beginCaptures":{"0":{"name":"variable.other.enummember.mc"}}},{"begin":"(?=((\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\])))","end":"(?=,|\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}}],"beginCaptures":{"1":{"name":"storage.type.enum.mc"}}},"expression":{"name":"meta.expression.mc","patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#support-objects"},{"include":"#identifiers"},{"include":"#paren-expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expression-operators":{"patterns":[{"name":"keyword.operator.expression.instanceof.mc","match":"(?\u003c!\\.|\\$)\\binstanceof\\b(?!\\$)"},{"name":"keyword.operator.expression.has.mc","match":"(?\u003c!\\.|\\$)\\bhas\\b(?!\\$)"},{"name":"keyword.operator.new.mc","match":"(?\u003c!\\.|\\$)\\bnew\\b(?!\\$)"},{"name":"keyword.operator.expression.void.mc","match":"(?\u003c!\\.|\\$)\\bvoid\\b(?!\\$)"},{"name":"keyword.operator.assignment.compound.mc","match":"\\*=|(?\u003c!\\()/=|%=|\\+=|\\-="},{"name":"keyword.operator.assignment.compound.bitwise.mc","match":"\\\u0026=|\\^=|\u003c\u003c=|\u003e\u003e=|\\|="},{"name":"keyword.operator.bitwise.shift.mc","match":"\u003c\u003c|\u003e\u003e"},{"name":"keyword.operator.comparison.mc","match":"==|!="},{"name":"keyword.operator.relational.mc","match":"\u003c=|\u003e=|\u003c\u003e|\u003c|\u003e"},{"name":"keyword.operator.logical.mc","match":"\\!|\u0026\u0026|\\|\\|"},{"name":"keyword.operator.expression.logical.mc","match":"(?\u003c!\\.|\\$)\\band|or|not\\b(?!\\$)"},{"name":"keyword.operator.bitwise.mc","match":"\\\u0026|~|\\^|\\|"},{"name":"keyword.operator.assignment.mc","match":"\\="},{"name":"keyword.operator.decrement.mc","match":"--"},{"name":"keyword.operator.increment.mc","match":"\\+\\+"},{"name":"keyword.operator.arithmetic.mc","match":"%|\\*|/|-|\\+"},{"match":"(?\u003c=[_$[:alnum:])])\\s*(/)(?![/*])","captures":{"1":{"name":"keyword.operator.arithmetic.mc"}}}]},"field-declaration":{"name":"meta.field.declaration.mc","begin":"(?\u003c!\\()(?:(?\u003c!\\.|\\$)\\b(const|var)\\s+)(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\?\\s*)?(=)?)","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#variable-initializer"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"for-loop":{"begin":"(?\u003c!\\.|\\$)\\b(for)\\s*(\\()","end":"\\)","patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}],"beginCaptures":{"1":{"name":"keyword.control.loop.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"function-call":{"begin":"(?=(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","end":"(?\u003c=\\))(?!(\\.\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\s*(\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\()","patterns":[{"include":"#support-objects"},{"include":"#punctuation-accessor"},{"name":"entity.name.function.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#comment"},{"include":"#paren-expression"}]},"function-declaration":{"name":"meta.function.mc","begin":"(?\u003c!\\.|\\$)\\b(function\\b)(?:(?:\\s+|(?\u003c=\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\s*","end":"(?=$|;|\\})|(?\u003c=\\})","patterns":[{"include":"#comment"},{"include":"#function-parameters"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.type.function.mc"},"2":{"name":"entity.name.function.mc"}}},"function-parameters":{"name":"meta.parameters.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#comment"},{"include":"#decorator"},{"include":"#parameter-name"},{"include":"#variable-initializer"},{"name":"punctuation.separator.parameter.mc","match":","}],"beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.mc"}}},"identifiers":{"patterns":[{"name":"support.class.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\\.\\s*prototype\\b(?!\\$))"},{"match":"(?x)(\\.)\\s*(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.object.property.mc"},"3":{"name":"variable.other.object.property.mc"}}},{"match":"(?x)(?:(\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*(\n (function\\s*[(\u003c])|(function\\s+)|\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e)|\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e)))","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"entity.name.function.mc"}}},{"match":"(\\.)\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.constant.property.mc"}}},{"match":"(\\.)\\s*([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"punctuation.accessor.mc"},"2":{"name":"variable.other.property.mc"}}},{"match":"(?x)(?:\n ([[:upper:]][_$[:digit:][:upper:]]*) |\n ([_$[:alpha:]][_$[:alnum:]]*)\n)(?=\\s*\\.\\s*[_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.constant.object.mc"},"2":{"name":"variable.other.object.mc"}}},{"name":"variable.other.constant.mc","match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"name":"variable.other.readwrite.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"import-declaration":{"name":"meta.import.mc","begin":"(?\u003c!\\.|\\$)\\b(using)(?!(\\s*:)|(\\$))\\b","end":"(?=;|$)","patterns":[{"include":"#import-export-declaration"}],"beginCaptures":{"1":{"name":"keyword.control.import.mc"}}},"import-export-clause":{"patterns":[{"include":"#comment"},{"match":"(?x) ([_$[:alpha:]][_$[:alnum:]]*) \\s+ \n (as) \\s+ ([_$[:alpha:]][_$[:alnum:]]*)","captures":{"1":{"name":"variable.other.readwrite.mc"},"2":{"name":"keyword.control.as.mc"},"3":{"name":"entity.name.type.alias.mc"}}},{"include":"#punctuation-comma"},{"name":"constant.language.import-export-all.mc","match":"\\*"},{"name":"keyword.control.default.mc","match":"\\b(default)\\b"},{"name":"variable.other.readwrite.alias.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-clause"}]},"literal":{"name":"literal.mc","patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"}]},"method-declaration":{"name":"meta.method.declaration.mc","begin":"(?\u003c!\\.|\\$)(?:\\b(hidden)\\s+)?(?:\\b(function)\\s+)(?:(?:\\b(?:(initialize)|(initialize))\\b(?!\\$|:))|(?:(\\*)\\s*)?(?=((([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??))?\\s*[\\(\\\u003c]))","end":"(?=\\}|;|,|$)|(?\u003c=\\})","patterns":[{"include":"#method-declaration-name"},{"include":"#comment"},{"include":"#function-parameters"},{"include":"#decl-block"}],"beginCaptures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"storage.type.function.mc"},"3":{"name":"keyword.operator.new.mc"},"4":{"name":"storage.type.mc"},"5":{"name":"keyword.generator.asterisk.mc"}}},"method-declaration-name":{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)|(\\'[^']*\\')|(\\\"[^\"]*\\\")|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])+\\]))\\s*(\\??)\\s*[\\(\\\u003c])","end":"(?=\\(|\\\u003c)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"name":"entity.name.function.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"namespace-declaration":{"name":"meta.namespace.declaration.mc","begin":"(?\u003c!\\.|\\$)\\b(module)\\s+(?=[_$[:alpha:]\"'`])","end":"(?=$|\\{)","patterns":[{"include":"#comment"},{"include":"#string"},{"name":"entity.name.type.module.mc","match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#punctuation-accessor"}],"beginCaptures":{"1":{"name":"storage.type.namespace.mc"}}},"new-expr":{"name":"new.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b(?!\\$)","end":"(?\u003c=\\))|(?=[;),}]|$|((?\u003c!\\.|\\$)\\bnew\\b(?!\\$)))","patterns":[{"include":"#paren-expression"},{"include":"#class-declaration"},{"include":"#type"}],"beginCaptures":{"1":{"name":"keyword.operator.new.mc"}}},"null-literal":{"patterns":[{"name":"constant.language.null.mc","match":"(?\u003c!\\.|\\$)\\bnull\\b(?!\\$)"}]},"numeric-literal":{"patterns":[{"name":"constant.numeric.hex.mc","match":"\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+\\b(?!\\$)"},{"name":"constant.numeric.binary.mc","match":"\\b(?\u003c!\\$)0(b|B)[01]+\\b(?!\\$)"},{"name":"constant.numeric.octal.mc","match":"\\b(?\u003c!\\$)0(o|O)?[0-7]+\\b(?!\\$)"},{"match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1.1E+3\n (?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+[ld]?\\b)| # 1.E+3\n (?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # .1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+[ld]?\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+[ld]?\\b)| # 1.1\n (?:\\b[0-9]+(\\.)[ld]?\\B)| # 1.\n (?:\\B(\\.)[0-9]+[ld]?\\b)| # .1\n (?:\\b[0-9]+[ld]?\\b(?!\\.)) # 1\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.mc"},"1":{"name":"meta.delimiter.decimal.period.mc"},"2":{"name":"meta.delimiter.decimal.period.mc"},"3":{"name":"meta.delimiter.decimal.period.mc"},"4":{"name":"meta.delimiter.decimal.period.mc"},"5":{"name":"meta.delimiter.decimal.period.mc"},"6":{"name":"meta.delimiter.decimal.period.mc"}}}]},"numericConstant-literal":{"patterns":[{"name":"constant.language.nan.mc","match":"(?\u003c!\\.|\\$)\\bNaN\\b(?!\\$)"}]},"object-literal":{"name":"meta.objectliteral.mc","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}},"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"object-member":{"patterns":[{"include":"#comment"},{"name":"meta.object.member.mc","begin":"(?:[:_$[:alpha:]][_$[:alnum:]]*)\\s*(=\u003e)","end":"(?=,|\\})","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"meta.object-literal.key.mc"},"1":{"name":"punctuation.separator.key-value.mc"}}},{"include":"#punctuation-comma"}]},"parameter-name":{"patterns":[{"match":"\\s*\\b(hidden)(?=\\s+(hidden)\\s+)","captures":{"1":{"name":"storage.modifier.mc"}}},{"match":"(?x)(?:\\s*\\b(hidden|static)\\s+)?(\\.\\.\\.)?\\s*(?\u003c!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\??)(?=\\s*\n (=\\s*(\n (function\\s*[(\u003c]) |\n (function\\s+) |\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e) |\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:)|(\\.\\.\\.) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e))\n ) |\n (:\\s*(\n (\u003c) |\n ([(]\\s*(\n ([)]) |\n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )))\n )\n)","captures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"keyword.operator.rest.mc"},"3":{"name":"entity.name.function.mc"},"4":{"name":"keyword.operator.optional.mc"}}},{"match":"(?:\\s*\\b(hidden|static)\\s+)?\\s*(?\u003c!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\s*","captures":{"1":{"name":"storage.modifier.mc"},"2":{"name":"keyword.operator.rest.mc"},"3":{"name":"variable.parameter.mc"}}}]},"paren-expression":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"punctuation-accessor":{"name":"punctuation.accessor.mc","match":"\\."},"punctuation-comma":{"name":"punctuation.separator.comma.mc","match":","},"punctuation-semicolon":{"name":"punctuation.terminator.statement.mc","match":";"},"qstring-double":{"name":"string.quoted.double.mc","begin":"\"","end":"(\")|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"qstring-single":{"name":"string.quoted.single.mc","begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#string-character-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mc"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mc"},"2":{"name":"invalid.illegal.newline.mc"}}},"statements":{"patterns":[{"include":"#string"},{"include":"#comment"},{"include":"#literal"},{"include":"#declaration"},{"include":"#switch-statement"},{"include":"#for-loop"},{"include":"#after-operator-block"},{"include":"#decl-block"},{"include":"#control-statement"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"}]},"string-character-escape":{"name":"constant.character.escape.mc","match":"\\\\(x[[:xdigit:]]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)"},"support-objects":{"patterns":[{"match":"(?x)(?\u003c!\\.|\\$)\\b(Math)(?:\\s*(\\.)\\s*(?:\n (abs|acos|acosh|asin|asinh|atan|atan2|atanh|cbrt|ceil|clz32|cos|cosh|exp|\n expm1|floor|fround|hypot|imul|log|log10|log1p|log2|max|min|pow|random|\n round|sign|sin|sinh|sqrt|tan|tanh|trunc)\n |\n (E|LN10|LN2|LOG10E|LOG2E|PI|SQRT1_2|SQRT2)))?\\b(?!\\$)","captures":{"1":{"name":"support.constant.math.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.math.mc"},"4":{"name":"support.constant.property.math.mc"}}},{"match":"(?x)(?\u003c!\\.|\\$)\\b(System)(?:\\s*(\\.)\\s*(\n print|println|getTimer|getClockTime|getSystemStats|trap|exit|error))?\\b(?!\\$)","captures":{"1":{"name":"support.class.system.mc"},"2":{"name":"punctuation.accessor.mc"},"3":{"name":"support.function.system.mc"}}},{"match":"(?x) (\\.) \\s* \n(?:\n (method)\n)(?=\\s*\\()","captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"support.function.js"}}}]},"switch-block":{"name":"switch-block.expr.mc","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"switch-expression":{"name":"switch-expression.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(switch)\\s*(\\()","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.switch.mc"},"2":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"switch-statement":{"name":"switch-statement.expr.mc","begin":"(?\u003c!\\.|\\$)(?=\\bswitch\\s*\\()","end":"\\}","patterns":[{"include":"#switch-expression"},{"include":"#switch-block"}],"endCaptures":{"0":{"name":"punctuation.definition.block.mc"}}},"ternary-expression":{"begin":"(\\?)","end":"(:)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.ternary.mc"}},"endCaptures":{"0":{"name":"keyword.operator.ternary.mc"}}},"type":{"name":"meta.type.mc","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#type-builtin-literals"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-name"}]},"type-builtin-literals":{"name":"support.type.builtin.mc","match":"(?\u003c!\\.|\\$)\\b(this|true|false|null)\\b(?!\\$)"},"type-fn-type-parameters":{"patterns":[{"name":"meta.type.constructor.mc","match":"(?\u003c!\\.|\\$)\\b(new)\\b(?=\\s*\\\u003c)","captures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.constructor.mc","begin":"(?\u003c!\\.|\\$)\\b(new)\\b\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}],"beginCaptures":{"1":{"name":"keyword.control.new.mc"}}},{"name":"meta.type.function.mc","begin":"(?\u003c=\\\u003e)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]},{"name":"meta.type.function.mc","begin":"(?x)(\n (?=\n [(]\\s*(\n ([)]) | \n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )\n )\n)","end":"(?\u003c=\\))","patterns":[{"include":"#function-parameters"}]}]},"type-name":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)\\s*(\\.)","captures":{"1":{"name":"entity.name.type.module.mc"},"2":{"name":"punctuation.accessor.mc"}}},{"name":"entity.name.type.mc","match":"[_$[:alpha:]][_$[:alnum:]]*"}]},"type-paren-or-function-parameters":{"name":"meta.type.paren.cover.mc","begin":"\\(","end":"\\)","patterns":[{"include":"#type"},{"include":"#function-parameters"}],"beginCaptures":{"0":{"name":"meta.brace.round.mc"}},"endCaptures":{"0":{"name":"meta.brace.round.mc"}}},"var-expr":{"name":"meta.var.expr.mc","begin":"(?\u003c!\\.|\\$)\\b(var|const(?!\\s+enum\\b))\\b(?!\\$)","end":"(?=$|;|})","patterns":[{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"storage.type.mc"}}},"var-single-variable":{"patterns":[{"name":"meta.var-single-variable.expr.mc","begin":"(?x)([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*\n (=\\s*(\n (function\\s*[(\u003c]) |\n (function\\s+) |\n ([_$[:alpha:]][_$[:alnum:]]*\\s*=\u003e) |\n ([(]\\s*(([)]\\s*:)|([_$[:alpha:]][_$[:alnum:]]*\\s*:)|(\\.\\.\\.) )) |\n ([\u003c]\\s*[_$[:alpha:]][_$[:alnum:]]*((\\s+extends\\s*[^=\u003e])|(\\s*[,]))) |\n ((\u003c([^\u003c\u003e]|\\\u003c[^\u003c\u003e]+\\\u003e)+\u003e\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=\u003e))\n ) |\n (:\\s*(\n (\u003c) |\n ([(]\\s*(\n ([)]) |\n (\\.\\.\\.) |\n ([_$[:alnum:]]+\\s*(\n ([:,?=])|\n ([)]\\s*=\u003e)\n ))\n )))\n )\n)","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","patterns":[{"include":"#string"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"entity.name.function.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","beginCaptures":{"1":{"name":"variable.other.constant.mc"}}},{"name":"meta.var-single-variable.expr.mc","begin":"([_$[:alpha:]][_$[:alnum:]]*)","end":"(?=$|[;,=}]|(\\s+(of|in)\\s+))","patterns":[{"include":"#string"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"variable.other.readwrite.mc"}}}]},"variable-initializer":{"patterns":[{"begin":"(?\u003c!=|!)(=)(?!=)(?=\\s*\\S)","end":"(?=$|[,);}\\]])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}},{"begin":"(?\u003c!=|!)(=)(?!=)","end":"(?=[,);}\\]])|(?=^\\s*$)","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.mc"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"mfu","scopeName":"source.mfu","patterns":[{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.mfu","begin":"#","end":"\\n","beginCaptures":{"1":{"name":"punctuation.definition.comment.mfu"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mfu"}}},{"begin":"(^[ \\t]+)?(?=;)","end":"(?!\\G)","patterns":[{"name":"comment.line.semicolon.mfu","begin":";","end":"\\n","beginCaptures":{"1":{"name":"punctuation.definition.comment.mfu"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mfu"}}},{"name":"entity.name.tag.mfu","match":"^(\\[)(MFUT.*?)(\\])$","captures":{"1":{"name":"punctuation.definition.entity.mfu"}}},{"match":"\\b(reportfile|fixture-filename|outdir|testcase|es-syscat|preferred-cwd|jcl-filename|source.filename|source.seqfilename)\\b\\s*(=)(.*)","captures":{"1":{"name":"keyword.other.definition.mfu"},"2":{"name":"punctuation.definition.tag.mfu"},"3":{"name":"storage.mfu"}}},{"match":"\\b(description|traits)\\b\\s*(=)(.*)","captures":{"1":{"name":"keyword.other.definition.mfu"},"2":{"name":"punctuation.definition.tag.mfu"},"3":{"name":"variable.parameter.mfu"}}},{"match":"\\b([a-zA-Z0-9_.-]+)\\b\\s*(=)","captures":{"1":{"name":"keyword.other.definition.mfu"},"2":{"name":"punctuation.definition.tag.mfu"}}},{"name":"entity.name.variable.mfu","match":"^(\\[)(.*?)(\\])","captures":{"1":{"name":"punctuation.definition.entity.mfu"}}},{"name":"string.quoted.single.mfu","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.mfu","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.mfu"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mfu"}}},{"name":"string.quoted.double.mfu","begin":"\"","end":"\"","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.mfu"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.mfu"}}},{"name":"constant.numeric.mfu","match":"([0-9])+(s$|ms$|$)"},{"name":"constant.language","match":"(?i:true|false|separate|isolate|printfile|noprintfile|nojunit|junit|markdown|nomarkdown|nunit|nonunit|core|debug|junit-attachments|timings-csv)"}]}
@@ -0,0 +1 @@
1
+ {"name":"mfupp_dir","scopeName":"source.mfupp_dir","patterns":[{"name":"comment.line.mfupp_dir","match":"^(\\s*)\u0026.*$"},{"name":"string.brackets.mfupp_dir","match":"(\\(.*\\))"},{"name":"string.quoted.mfupp_dir","match":"(\".*\")$"},{"name":"keyword.mfupp_dir","match":"^(\\s*)(?i:(NOMOCK|NOCONFIRM|NOPD-PREFIX|NOPDP|NOVERBOSE|NOWS-PREFIX|NOWSP|NOC|NOIPP|NOIL|NOM|NOPDP|NOWSP|NOV))(?=\"|\\(|\\s+|$)"},{"name":"keyword.other.unit.mfupp_dir","match":"^(\\s*)(?i:(CONFIRM|IGNORE-PRG-PREFIX|INSERT-LS|MOCK|PD-PREFIX|WS-PREFIX|C|IPP|IL|M|PDP|WSP|VERBOSE|V))(?=\"|\\(|\\s+|$)"},{"name":"token.warn-token","match":"^(\\s*\\+.*)"},{"name":"invalid.illegal.mfupp_dir","match":"([0-9a-zA-Z\\-]+)"}]}
@@ -0,0 +1 @@
1
+ {"name":"mligo","scopeName":"source.mligo","patterns":[{"include":"#string"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#attribute"},{"include":"#macro"},{"include":"#letbinding"},{"include":"#lambda"},{"include":"#typedefinition"},{"include":"#controlkeywords"},{"include":"#numericliterals"},{"include":"#operators"},{"include":"#identifierconstructor"},{"include":"#module"}],"repository":{"attribute":{"name":"keyword.control.attribute.mligo","match":"\\[@.*\\]"},"block_comment":{"name":"comment.block.mligo","begin":"\\(\\*","end":"\\*\\)"},"controlkeywords":{"name":"keyword.control.mligo","match":"\\b(match|with|if|then|else|assert|failwith|begin|end|in)\\b"},"identifierconstructor":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\s+","captures":{"1":{"name":"variable.other.enummember.mligo"}}},"lambda":{"begin":"\\b(fun)\\b","end":"(-\u003e)","beginCaptures":{"1":{"name":"keyword.other.mligo"}},"endCaptures":{"1":{"name":"keyword.operator.mligo"}}},"letbinding":{"match":"\\b(let)\\b\\s*\\b(rec|)\\s*\\b([a-zA-Z$_][a-zA-Z0-9$_]*)","captures":{"1":{"name":"keyword.other.mligo"},"2":{"name":"storage.modifier.mligo"},"3":{"name":"entity.name.function.mligo"}}},"line_comment":{"name":"comment.block.mligo","match":"\\/\\/.*$"},"macro":{"name":"meta.preprocessor.mligo","match":"^\\#[a-zA-Z]+"},"module":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\.([a-z][a-zA-Z0-9_$]*)","captures":{"1":{"name":"storage.class.mligo"},"2":{"name":"storage.var.mligo"}}},"numericliterals":{"name":"constant.numeric.mligo","match":"(\\+|\\-)?[0-9]+(n|tz|tez|mutez|)\\b"},"operators":{"name":"keyword.operator.mligo","match":"\\s+(::|\\-|\\+|mod|land|lor|lxor|lsl|lsr|\u0026\u0026|\\|\\||\u003e|\u003c\u003e|\u003c=|=\u003e|\u003c|\u003e)\\s+"},"string":{"name":"string.quoted.double.mligo","begin":"\\\"","end":"\\\""},"typedefinition":{"name":"entity.name.type.mligo","match":"\\b(type)\\b"}}}
@@ -1 +1 @@
1
- {"name":"P4","scopeName":"source.p4","patterns":[{"name":"comment.block.p4","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.p4"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.p4"}}},{"name":"string.quoted.double.p4","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.p4"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.p4"}}},{"name":"comment.line.p4","begin":"//","end":"\\n","beginCaptures":{"0":{"name":"comment.p4"}}},{"name":"storage.type.object.p4","match":"\\b(header_type|header|metadata|field_list|field_list_calculation|parser|parser_exception|parser_value_set|counter|meter|register|action|action_profile|table|control|extern)\\b"},{"name":"storage.data.type.p4","match":"\\b(bool|bit|varbit|int)\\b"},{"name":"variable.language.p4","match":"\\b(hit|miss|latest|return|default)\\b"},{"name":"keyword.control.p4","match":"\\b(if|else if|else|return|hit|miss|true|false)\\b"},{"name":"keyword.operator.p4","match":"\\b(and|or)\\b"},{"name":"entity.name.type.p4","match":"\\b(exact|ternary|lpm|range|valid|mask)\\b"},{"name":"storage.type.p4","match":"\\b(reads|actions|min_size|max_size|size|support_timeout|action_profile)\\b"},{"name":"storage.type.p4","match":"\\b(bytes|packets)\\b"},{"name":"entity.name.type.p4","match":"\\b(width|layout|attributes|type|static|result|direct|instance_count|min_width|saturating)\\b"},{"name":"entity.name.type.p4","match":"\\b(length|fields|max_length)\\b"},{"name":"meta.preprocessor.include.p4","match":"\\#include"},{"name":"meta.preprocessor.define.p4","match":"\\#define"},{"name":"support.function.primitive.p4","match":"\\b(apply|valid|select|current|extract|add_header|copy_header|remove_header|modify_field|add_to_field|add|set_field_to_hash_index|truncate|drop|no_op|push|pop|count|meter|generate_digest|resubmit|recirculate|clone_ingress_pkt_to_ingress|clone_egress_pkt_to_ingress|clone_ingress_pkt_to_egress|clone_egress_pkt_to_egress|register_write|register_read)\\b"},{"name":"support.any-method.p4","match":"[a-zA-Z_][0-9a-zA-Z_]*"},{"name":"constant.numeric.p4","match":"[\\+|-]?[0-9]+'[0-9]+"},{"name":"constant.numeric.p4","match":"0(x|X)[0-9a-fA-F]+"},{"name":"constant.numeric.p4","match":"0(b|B)[01]+"},{"name":"constant.numeric.p4","match":"[0-9]+"},{"name":"constant.language.p4","match":"\\b(true|false)\\b"}]}
1
+ {"name":"P4-16","scopeName":"source.p4","patterns":[{"name":"comment.block.p4","begin":"/\\*","end":"\\*/","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.p4"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.p4"}}},{"name":"string.quoted.double.p4","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.p4"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.p4"}}},{"name":"comment.line.p4","begin":"//","end":"\\n","beginCaptures":{"0":{"name":"comment.p4"}}},{"name":"storage.type.object.p4","match":"\\b(struct|package|header|metadata|parser|transition|state|actions|action|table|key|control|extern|verify)\\b"},{"name":"storage.data.type.p4","match":"\\b(void|const|bool|varbit|int|typedef|tuple|enum)\\b"},{"name":"support.type.bit.p4","match":"bit(\u003c\\d+\u003e)"},{"name":"variable.language.p4","match":"\\b(hit|miss|latest|return|default)\\b"},{"name":"keyword.control.p4","match":"\\b(if|else if|else|return|hit|miss|true|false|inout|in|out|exit)\\b"},{"name":"keyword.operator.p4","match":"\\b(and|or)\\b"},{"name":"entity.name.type.p4","match":"\\b(exact|ternary|lpm|range|valid|mask|match_kind)\\b"},{"name":"storage.type.p4","match":"\\b(reads|actions|min_size|max_size|size|support_timeout|action_profile)\\b"},{"name":"storage.type.p4","match":"\\b(bytes|packets)\\b"},{"name":"entity.name.type.p4","match":"\\b(width|layout|attributes|type|static|result|direct|instance_count|min_width|saturating)\\b"},{"name":"entity.name.type.p4","match":"\\b(length|fields|max_length)\\b"},{"name":"meta.preprocessor.include.p4","match":"\\#include"},{"name":"meta.preprocessor.p4","match":"\\#ifndef|\\#ifdef|\\#if|\\#else|\\#endif|\\#elif"},{"name":"meta.preprocessor.define.p4","match":"\\#define"},{"name":"support.function.primitive.p4","match":"\\b(apply|valid|select|current|extract|add_header|copy_header|remove_header|modify_field|add_to_field|add|set_field_to_hash_index|truncate|drop|no_op|push|pop|count|meter|generate_digest|resubmit|recirculate|clone_ingress_pkt_to_ingress|clone_egress_pkt_to_ingress|clone_ingress_pkt_to_egress|clone_egress_pkt_to_egress|register_write|register_read)\\b"},{"name":"storage.type.annotation.p4","match":"@\\w+"},{"name":"support.any-method.p4","match":"[a-zA-Z_][0-9a-zA-Z_]*"},{"name":"constant.numeric.p4","match":"[\\+|-]?[0-9]+'[0-9]+"},{"name":"constant.numeric.p4","match":"0(x|X)[0-9a-fA-F]+"},{"name":"constant.numeric.p4","match":"\\dw\\d+"},{"name":"constant.numeric.p4","match":"0(b|B)[01]+"},{"name":"constant.numeric.p4","match":"[0-9]+"},{"name":"constant.language.p4","match":"\\b(true|false)\\b"}]}
@@ -0,0 +1 @@
1
+ {"name":"PLI","scopeName":"source.pli","patterns":[{"name":"constant.numeric.pl1","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b"},{"name":"comment.block.pl1","contentName":"comment.block.pl1","begin":"\\/\\*","end":"\\*\\/"},{"name":"string.quoted.double.pl1","contentName":"string.quoted.double.pl1","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pl1"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pl1"}}},{"name":"string.quoted.single.pl1","contentName":"string.quoted.single.pl1","begin":"'","end":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pl1"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pl1"}}},{"name":"keyword.pli","match":"(?\u003c![-_a-zA-Z0-9])(?i:ABNORMAL|ABS|ACOS|ACOSF|ADD|ADDBUFF|ADDR|ADDRDATA|ALIAS|ALIGNED|ALL|ALLOC|ALLOCATION|ALLOCN|ALLOCSIZE|ANY|ANYCONDITION|AREA|ASCII|ASIN|ASINF|ASM|ASMTDLI|ASSEMBLER|ASSIGNABLE|ATAN|ATAND|ATANF|ATANH|ATTENTION|ATTN|AUTO|AUTOMATIC|AVAILABLEAREA|BACKWARDS|BASED|BIGENDIAN|BIN|BINARY|BINARYVALUE|BIND|BINVALUE|BIT|BITLOCATION|BKWD|BLKSIZE|BOOL|BUF|BUFFERED|BUFFERS|BUFND|BUFNI|BUFOFF|BUFSP|BUILTIN|BX|BY|BYADDR|BYTE|BYVALUE|B4|CAST|CDS|CEIL|CENTERLEFT|CENTERRIGHT|CENTRELEFT|CENTRERIGHT|CHAR|CHARACTER|CHARG|CHARGRAPHIC|CHARVAL|CHECK|CHECKSTG|CMPAT|COBOL|COL|COLLATE|COLUMN|COMMENT|COMPARE|COMPILEDATE|COMPILETIME|COMPLETION|COMPLEX|COND|CONDITION|CONJG|CONN|CONNECTED|CONSECUTIVE|CONTROLLED|CONV|CONVERSION|COPY|COS|COSD|COSF|COSH|COUNT|COUNTER|CPLN|CPLX|CS|CSTG|CTL|CTLASA|CTL360|CURRENTSIZE|CURRENTSTORAGE|DATA|DATAFIELD|DATE|DATETIME|DAYS|DAYSTODATE|DAYSTOSECS|DB|DCL|DEC|DECIMAL|DEF|DEFINE|DEFINED|DESCRIPTOR|DESCRIPTORS|DFT|DIM|DIMENSION|DIRECT|DIVIDE|DOWNTHRU|EDIT|ELSE|EMPTY|ENDFILE|ENDPAGE|ENTRYADDR|ENV|ENVIRONMENT|EPSILON|ERF|ERFC|ERROR|EVENT|EXCL|EXCLUSIVE|EXIT|EXP|EXPF|EXPONENT|EXPORTS|EXT|EXTERNAL|FB|FBS|FILE|FILEDDINT|FILEDDTEST|FILEDDWORD|FILEID|FILEOPEN|FILEREAD|FILESEEK|FILETELL|FILEWRITE|FINISH|FIRST|FILETELL|FILEWRITE|FINISH|FIRST|FIXED|FIXEDOVERFLOW|FLOAT|FLOOR|FLUSH|FOFL|FORTRAN|FROM|FROMALIEN|FS|GAMMA|GENERIC|GENKEY|GETENV|GO|GRAPHIC|GX|HANDLE|HBOUND|HEX|HEXADEC|HEXIMAGE|HIGH|HUGE|IAND|IEEE|IEOR|IGNORE|IMAG|IN|INDEX|INDEXAREA|INDEXED|INIT|INITIAL|INLINE|INOT|INPUT|INT|INTER|INTERNAL|INTO|IOR|IRRED|IRREDUCIBLE|ISIGNED|ISLL|ISMAIN|ISRL|IUNSIGNED|KEY|KEYED|KEYFROM|KEYLENGTH|KEYLOC|KEYTO|LABEL|LAST|LBOUND|LEFT|LENGTH|LIKE|LIMITED|LINE|LINENO|LINESIZE|LINKAGE|LIST|LITTLEENDIAN|LOCATE|LOCATION|LOG|LOGF|LOGGAMMA|LOG10|LOG10F|LOG2|LOW|LOWERCASE|LOWER2|MACCOL|MACLMAR|MACNAME|MACRMAR|MAIN|MAX|MAXEXP|MAXLENGTH|MEMINDEX|MEMSEARCH|MEMVERIFY|MEMVERIFYR|MESEARCHR|MIN|MINEXP|MOD|MPSTR|MULTIPLY|NAME|NATIVE|NCP|NEW|NOCHARG|NOCHARGRAPHIC|NOCHECK|NOCMPAT|NOCONV|NOCONVERSION|NODESCRIPTOR|NOEXECOPS|NOFIXEDOVERFLOW|NOFOFL|NOINLINE|NOLOCK|NOMAP|NOMAPIN|NOMAPOUT|NONASSIGNABLE|NONCONNECTED|NONNATIVE|NOOFL|NOOVERFLOW|NORESCAN|NORMAL|NOSIZE|NOSTRG|NOSTRINGRANGE|NOSTRINGSIZE|NOSTRZ|NOSUBRG|NOSUBSCRIPTRANGE|NOUFL|NOUNDERFLOW|NOWRITE|NOZDIV|NOZERODIVIDE|OFFSET|OFFSETADD|OFFSETDIFF|OFFSETSUBTRACT|OFFSETVALUE|OFL|OMITTED|ONCHAR|ONCODE|ONCONDCOND|ONCONDID|ONCOUNT|ONFILE|ONGSOURCE|ONKEY|ONLOC|ONSOURCE|ONSUBCODE|ONWCHAR|ONWSOURCE|OPTIONAL|OPTIONS|ORDER|ORDINAL|ORDINALNAME|ORDINALPRED|ORDINALSUCC|OTHER|OTHERWISE|OUTPUT|OVERFLOW|PACKAGENAME|PAGE|PAGENO|PAGESIZE|PARAMETER|PARMSET|PASSWORD|PENDING|PIC|PICTURE|PLACES|POINTER|POINTERADD|POINTERDIFF|POINTERSUBTRACT|POINTERVALUE|POLY|POS|POSITION|PREC|PRECISION|PRED|PRESENT|PRINT|PRIORITY|PROC|PROCEDURENAME|PROD|PTR|PTRADD|PTRVALUE|PUTENV|QUOTE|RADIX|RAISE2|RANDOM|RANGE|RANK|REAL|RECORD|RECSIZE|RECURSIVE|RED|REDUCIBLE|REENTRANT|REFER|REGIONAL|REM|REORDER|REPATTERN|REPEAT|REPLACEBY2|REPLY|REREAD|RESCAN|RESERVED|RESERVES|RESIGNAL|RESPEC|RETCODE|RETURNS|REUSE|REVERSE|RIGHT|ROUND|SAMEKEY|SCALARVARYING|SCALE|SEARCH|SEARCHR|SECS|SECSTODATE|SECSTODAYS|SEQL|SEQUENTIAL|SERIALIZE4|SET|SIGN|SIGNED|SIN|SIND|SINF|SINH|SIS|SIZE|SKIP|SNAP|SOURCEFILE|SOURCELINE|SQRT|SQRTF|STATEMENT|STATIC|STATUS|STG|STMT|STORAGE|STREAM|STRG|STRING|STRINGRANGE|STRINGSIZE|STRUCTURE|STRZ|SUBRG|SUBSCRIPTRANGE|SUBSTR|SUBTRACT|SUCC|SUM|SYSIN|SYSNULL|SYSPARM|SYSPRINT|SYSTEM|SYSVERSION|TALLY|TAN|TAND|TANF|TANH|TASK|THEN|THREADID|TIME|TINY|TITLE|TO|TOTAL|TPK|TPM|TRANSIENT|TRANSLATE|TRANSMIT|TRIM|TRKOFL|TRUNC|TYPE|UFL|UNAL|UNALIGNED|UNALLOCATED|UNBUF|UNBUFFERED|UNDEFINEDFILE|UNDERFLOW|UNDF|UNLOCK|UNSIGNED|UNSPEC|UNTIL|UPDATE|UPPERCASE|UPTHRU|VALID|VALIDDATE|VALUE|VAR|VARGLIST|VARGSIZE|VARIABLE|VARYING|VARYINGZ|VB|VBS|VERIFY|VERIFYR|VS|VSAM|WAIT|WCHAR|WCHARVAL|WEEKDAY|WHEN|WHIGH|WHILE|WIDECHAR|WHEN|WHIGH|WHILE|WIDECHAR|WLOW|XMLCHAR|Y4DATE|Y4JULIAN|Y4YEAR|ZDIV|ZERODIVIDE)(?=\\s+|;|\\(|\\))"},{"name":"support.function.pli","match":"(?:^|\\s+)(?i:PLIASCII|PLICTF|PLICTFHX|PLIDUMP|PLIEBCDIC|PLIFILL|PLIMOVE|PLIOVER|PLIRETC|PLIRETV|PLISAXA|PLISAXB|PLISAXC|PLISRTx|PLITEST)(?=\\s+|;|\\(|\\))"},{"name":"meta.preprocessor.pli","match":"(?:^|\\s+)(?i:%ACTIVATE|%ACT|%INCLUDE|%DECLARE|%DCL|%LIST|%NOLIST|%OPTION|%PAGE|%POP|%PRINT|%NOPRINT|%PROCESS|%PUSH|%REPLACE|%SKIP|%XINCLUDE)(?=\\s+|;|\\(|\\))"},{"name":"meta.preprocessor.pli","match":"(?:^|\\s+)(?i:%[0-9a-zA-Z]*|%[0-9a-zA-Z]*)(?=\\s+|;|:|\\(|\\))"},{"name":"keyword.pli","match":"(?:^|\\s+)(?i:BEGIN|CALL|CLOSE|DECLARE|DEFAULT|DEFINEALIAS|DELAY|DELETE|DISPLAY|DO|END|ENTRY|FETCH|FORMAT|FREE|GET|GOTO|IF|LEAVE|NULL|ON|OPEN|PACKAGE|PROCEDURE|PUT|READ|RELEASE|RETURN|REVERT|REWRITE|SELECT|SIGNAL|STOP|WRITE)(?=\\s+|;|\\(|\\))"}]}
@@ -1 +1 @@
1
- {"name":"Pony","scopeName":"source.pony","patterns":[{"include":"#block-comments"},{"include":"#line-comments"},{"include":"#typedeclarations"},{"include":"#methoddeclarations"},{"include":"#keywords"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"block-comments":{"name":"comment.block.pony","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block-comments"}]},"constants":{"patterns":[{"name":"constant.other.pony","match":"\\b(this)\\b"},{"name":"constant.language.pony","match":"\\b(true|false)\\b"},{"name":"constant.numeric.pony","match":"\\b((0b[0-1_]*)|(0x[0-9a-fA-F_]*)|([0-9][0-9_]*(\\.[0-9][0-9_]*)?((e|E)(\\+|-)?[0-9_]+)?))\\b"}]},"identifiers":{"patterns":[{"match":"\\b([_a-z][_a-zA-Z0-9]*)\\b(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"match":"\\.\\s*([_a-z][_a-zA-Z0-9]*)\\b[^\\(\\[]","captures":{"1":{"name":"variable.parameter.pony"}}},{"match":"@\\s*([_a-zA-z][_a-zA-Z0-9]*)\\s*(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"name":"entity.name.class.pony","match":"\\b(_*[A-Z][_a-zA-Z0-9]*)\\b"},{"match":"\\b(_*[a-z][_a-zA-Z0-9']*)"}]},"keywords":{"patterns":[{"name":"keyword.other.intrinsic.pony","match":"\\b(compile_intrinsic|compile_error)\\b"},{"name":"keyword.other.import.pony","match":"\\b(use)\\b"},{"name":"keyword.other.declaration.pony","match":"\\b(var|let|embed|delegate)\\b"},{"name":"entity.other.attribute-name.pony","match":"\\b(iso|trn|ref|val|box|tag)\\b"},{"name":"keyword.control.jump.pony","match":"\\b(break|continue|return|error)\\b"},{"name":"keyword.control.pony","match":"\\b(if|ifdef|then|elseif|else|end|match|where|try|with|as|recover|consume|object|digestof)\\b"},{"name":"keyword.control.loop.pony","match":"\\b(while|do|repeat|until|for|in)\\b"},{"match":"(\\?|[-=]\u003e)"},{"match":"(\\-|\\+|\\*|/(?![/*])|%|\u003c\u003c|\u003e\u003e)"},{"match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"match":"\\b(is|isnt|not|and|or|xor)\\b"},{"match":"="},{"match":"(\\||\\\u0026|\\,|\\^)"}]},"line-comments":{"name":"comment.line.double-slash.pony","begin":"//","end":"\\n"},"methoddeclarations":{"match":"\\b(new|be|fun)\\s+(iso|trn|ref|val|box|tag)?\\b\\s*([_a-z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"keyword.other.capability.pony"},"3":{"name":"entity.name.function.pony"}}},"strings":{"patterns":[{"name":"constant.character.pony","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.character.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.character.end.pony"}}},{"name":"variable.parameter.pony","begin":"\"\"\"","end":"\"\"\"(?!\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}},{"name":"string.quoted.double.pony","begin":"\"","end":"\"","patterns":[{"name":"constant.string.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{6})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}}]},"typedeclarations":{"match":"\\b(type|interface|trait|primitive|struct|class|actor)\\s+(iso|trn|ref|val|box|tag)?@?\\s*([_A-Z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"keyword.other.capability.pony"},"3":{"name":"entity.name.type.pony"}}}}}
1
+ {"name":"Pony","scopeName":"source.pony","patterns":[{"include":"#block-comments"},{"include":"#line-comments"},{"include":"#typedeclarations"},{"include":"#methoddeclarations"},{"include":"#keywords"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"block-comments":{"name":"comment.block.pony","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block-comments"}]},"constants":{"patterns":[{"name":"constant.other.pony","match":"\\b(this)\\b"},{"name":"constant.language.pony","match":"\\b(true|false)\\b"},{"name":"constant.numeric.pony","match":"\\b((0b[0-1_]*)|(0x[0-9a-fA-F_]*)|([0-9][0-9_]*(\\.[0-9][0-9_]*)?((e|E)(\\+|-)?[0-9_]+)?))\\b"}]},"identifiers":{"patterns":[{"match":"\\b([_a-z][_a-zA-Z0-9]*)\\b(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"match":"\\.\\s*([_a-z][_a-zA-Z0-9]*)\\b[^\\(\\[]","captures":{"1":{"name":"variable.parameter.pony"}}},{"match":"@\\s*([_a-zA-z][_a-zA-Z0-9]*)\\s*(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"name":"entity.name.class.pony","match":"\\b(_*[A-Z][_a-zA-Z0-9]*)\\b"},{"match":"\\b(_*[a-z][_a-zA-Z0-9']*)"}]},"keywords":{"patterns":[{"name":"keyword.other.intrinsic.pony","match":"\\b(compile_intrinsic|compile_error)\\b"},{"name":"keyword.other.import.pony","match":"\\b(use)\\b"},{"name":"keyword.other.declaration.pony","match":"\\b(var|let|embed|delegate)\\b"},{"name":"entity.other.attribute-name.pony","match":"\\b(iso|trn|ref|val|box|tag)\\b"},{"name":"keyword.control.jump.pony","match":"\\b(break|continue|return|error)\\b"},{"name":"keyword.control.pony","match":"\\b(if|ifdef|then|elseif|else|end|match|where|try|with|as|recover|consume|object|digestof)\\b"},{"name":"keyword.control.loop.pony","match":"\\b(while|do|repeat|until|for|in)\\b"},{"match":"(\\?|[-=]\u003e)"},{"match":"(\\-|\\+|\\*|/(?![/*])|%|\u003c\u003c|\u003e\u003e)"},{"match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"match":"\\b(is|isnt|not|and|or|xor)\\b"},{"match":"="},{"match":"(\\||\\\u0026|\\,|\\^)"}]},"line-comments":{"name":"comment.line.double-slash.pony","begin":"//","end":"\\n"},"methoddeclarations":{"match":"\\b(new|be|fun)\\s+(\\\\[_a-z][_a-zA-Z0-9]*\\\\)?\\s*(iso|trn|ref|val|box|tag)?\\b\\s*([_a-z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"support.other.annotation.pony"},"3":{"name":"keyword.other.capability.pony"},"4":{"name":"entity.name.function.pony"}}},"strings":{"patterns":[{"name":"constant.character.pony","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.character.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.character.end.pony"}}},{"name":"variable.parameter.pony","begin":"\"\"\"","end":"\"\"\"(?!\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}},{"name":"string.quoted.double.pony","begin":"\"","end":"\"","patterns":[{"name":"constant.string.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{6})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}}]},"typedeclarations":{"match":"\\b(type|interface|trait|primitive|struct|class|actor)\\s+(\\\\[_a-z][_a-zA-Z0-9]*\\\\)?\\s*(iso|trn|ref|val|box|tag)?@?\\s*([_A-Z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"support.other.annotation.pony"},"3":{"name":"keyword.other.capability.pony"},"4":{"name":"entity.name.type.pony"}}}}}
@@ -1 +1 @@
1
- {"name":"q/kdb","scopeName":"source.q","patterns":[{"name":"comment.block.q","begin":"^\\s*/\\s*$\\n","end":"^\\s*\\\\\\s*$\\n"},{"name":"comment.block.q","begin":"^\\\\\\s*\\n","end":"'As far as I know, there is no way to exit this kind of block comment'"},{"name":"comment.line.q","match":"\\s/.+$\\n?|^/.+$\\n"},{"name":"string.quoted.string.source.q","begin":"\"","end":"\"","patterns":[{"name":"constant.numeric.complex.source.q","match":"\\\\[trn\\\\\\\"]"},{"name":"constant.numeric.complex.source.q","match":"\\\\[0-9]{3}"},{"name":"message.error.q","match":"\\\\[0-9]{1,2}"}]},{"name":"string.interpolated.symbol.q","match":"(`:[:/a-zA-Z0-9_.]*)|(`[:a-zA-Z0-9_.]*)"},{"begin":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.namespace_dict_assign.q"},"3":{"name":"variable.parameter.complex.namespace_dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"name":"variable.parameter.complex.namespace_assignment.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"4":{"name":"support.function.assignment.q"},"5":{"name":"support.function.assignment.q"}}},{"name":"support.function.namespace.q","match":"\\.[qQhkozj]\\.\\w+"},{"name":"source.other_namespaces.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*(?=(\\W|\\b))"},{"name":"other.assignment.q","match":"(?\u003c=([^a-zA-Z0-9])|(?\u003c=\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"2":{"name":"variable.parameter.complex.assignment.q"},"3":{"name":"support.function.q"},"4":{"name":"support.function.q"}}},{"begin":"(?=([^a-zA-Z0-9]|\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"contentName":"meta.function.parameters.q","begin":"(\\{\\s*\\[)","end":"]","patterns":[{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?:(;)|(?=[\\]\\)]))","captures":{"1":{"name":"entity.other.inherited-class.q"},"2":{"name":"punctuation.separator.parameters.q"}}}]},{"name":"keyword.other.complex.keyword.q","match":"(?=(\\W|\\b))(abs|acos|aj|aj0|all|and|any|asc|asin|asof|atan|attr|avg|avgs|bin|binr|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|each|ej|ema|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|idesc|if|ij|ijf|in|insert|inter|inv|key|keys|last|like|lj|ljf|load|log|lower|lsq|ltime|ltrim|mavg|max|maxs|mcount|md5|mdev|med|meta|min|mins|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|prd|prds|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ss|ssr|string|sublist|sum|sums|sv|svar|system|tables|tan|til|trim|type|uj|ujf|ungroup|union|update|upper|upsert|value|var|view|views|vs|wavg|where|while|within|wj|wj1|wsum|xasc|xbar|xcol|xcols|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timestamp.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}D[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-SU-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.datetime.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}T[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timespan.q","match":"(?=(\\W|\\b))(([0-9]{1,6}D([0-9]{1,2})((:[0-5][0-9]){0,2}|:)(\\.[0-9]{0,9}[a-zA-Z0-9]*[A-Zacgklnopqrtuvwxy0-9])?)|([0-9]{2}:[0-5][0-9](:[0-5][0-9]\\.[0-9]{4,}|:[0-5][0-9]\\.[0-9]{9,}[a-zA-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])|\\.[0-9]{8,}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.time.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]((:[0-9]{2}(((([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:]){1,2})?([0-5][0-9]){1,2})|\\.[0-9]{3}[ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9]?|\\.[0-9]{0,3}))|\\.[0-9]{4,7}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.second.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]([0-5][0-9]([0-5][0-9])?|\\.[0-9]{2}|:[0-9]{2}|([a-zA-Z]){0,2}[0-5][0-9]))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.minute.q","match":"(?=(\\W|\\b))([0-9]{2}:([0-5][0-9]([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:])?)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.date.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2})(?=(\\W|\\b))"},{"name":"constant.numeric.complex.month.q","match":"(?=(\\W|\\b))([0-9]{4,}\\.([0][1-9]|[1][0-2])m)(?=(\\W|\\b))"},{"name":"support.function.io.q","match":"0:|1:|2:"},{"name":"constant.numeric.complex.q","match":"((?\u003c=(\\W))|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+[bhijf]?(\\.[0-9]+[m]?)?|0x[a-fA-F0-9]+)(?=(\\W|\\b)|_)"},{"name":"constant.numeric.complex.real.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+e[-]?[0-9]+)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.null.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0n|0N[ghijepmdznuvt]?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.inf.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0w|0W[hijepdznuvt]?)(?=(\\W|\\b))"},{"name":"support.function.q","match":"[!$@\\\\/#?|',`\\\\:]"},{"name":"support.function.q","match":"\\.(?=\\W)"},{"name":"source.q","match":"[a-zA-Z][a-zA-Z0-9_]+"},{"name":"support.function.q","match":"(?\u003c=[0-9\\s])_"}]}
1
+ {"name":"q/kdb","scopeName":"source.q","patterns":[{"name":"comment.block.q","begin":"^\\s*/\\s*$\\n","end":"^\\s*\\\\\\s*$\\n"},{"name":"comment.block.q","begin":"^\\\\\\s*\\n","end":"'As far as I know, there is no way to exit this kind of block comment'"},{"name":"comment.line.q","match":"\\s/.+$\\n?|^/.+$\\n"},{"name":"string.quoted.string.source.q","begin":"\"","end":"\"","patterns":[{"name":"constant.numeric.complex.source.q","match":"\\\\[trn\\\\\\\"]"},{"name":"constant.numeric.complex.source.q","match":"\\\\[0-9]{3}"},{"name":"message.error.q","match":"\\\\[0-9]{1,2}"}]},{"name":"string.interpolated.symbol.q","match":"(`:[:/a-zA-Z0-9_.]*)|(`[:a-zA-Z0-9_.]*)"},{"begin":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.namespace_dict_assign.q"},"3":{"name":"variable.parameter.complex.namespace_dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"name":"variable.parameter.complex.namespace_assignment.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"4":{"name":"support.function.assignment.q"},"5":{"name":"support.function.assignment.q"}}},{"name":"support.function.namespace.q","match":"\\.[qQhkozj]\\.\\w+"},{"name":"source.other_namespaces.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*(?=(\\W|\\b))"},{"name":"other.assignment.q","match":"(?\u003c=([^a-zA-Z0-9])|(?\u003c=\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"2":{"name":"variable.parameter.complex.assignment.q"},"3":{"name":"support.function.q"},"4":{"name":"support.function.q"}}},{"begin":"(?=([^a-zA-Z0-9]|\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"contentName":"meta.function.parameters.q","begin":"(\\{\\s*\\[)","end":"]","patterns":[{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?:(;)|(?=[\\]\\)]))","captures":{"1":{"name":"entity.other.inherited-class.q"},"2":{"name":"punctuation.separator.parameters.q"}}}]},{"name":"keyword.other.complex.keyword.q","match":"(?=(\\W|\\b))(abs|acos|aj|aj0|ajf|ajf0|all|and|any|asc|asin|asof|atan|attr|avg|avgs|bin|binr|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|each|ej|ema|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|idesc|if|ij|ijf|in|insert|inter|inv|key|keys|last|like|lj|ljf|load|log|lower|lsq|ltime|ltrim|mavg|max|maxs|mcount|md5|mdev|med|meta|min|mins|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|prd|prds|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ss|ssr|string|sublist|sum|sums|sv|svar|system|tables|tan|til|trim|type|uj|ujf|ungroup|union|update|upper|upsert|value|var|view|views|vs|wavg|where|while|within|wj|wj1|ww|wsum|xasc|xbar|xcol|xcols|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timestamp.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}D[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-SU-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.datetime.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}T[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timespan.q","match":"(?=(\\W|\\b))(([0-9]{1,6}D([0-9]{1,2})((:[0-5][0-9]){0,2}|:)(\\.[0-9]{0,9}[a-zA-Z0-9]*[A-Zacgklnopqrtuvwxy0-9])?)|([0-9]{2}:[0-5][0-9](:[0-5][0-9]\\.[0-9]{4,}|:[0-5][0-9]\\.[0-9]{9,}[a-zA-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])|\\.[0-9]{8,}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.time.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]((:[0-9]{2}(((([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:]){1,2})?([0-5][0-9]){1,2})|\\.[0-9]{3}[ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9]?|\\.[0-9]{0,3}))|\\.[0-9]{4,7}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.second.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]([0-5][0-9]([0-5][0-9])?|\\.[0-9]{2}|:[0-9]{2}|([a-zA-Z]){0,2}[0-5][0-9]))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.minute.q","match":"(?=(\\W|\\b))([0-9]{2}:([0-5][0-9]([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:])?)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.date.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2})(?=(\\W|\\b))"},{"name":"constant.numeric.complex.month.q","match":"(?=(\\W|\\b))([0-9]{4,}\\.([0][1-9]|[1][0-2])m)(?=(\\W|\\b))"},{"name":"support.function.io.q","match":"0:|1:|2:"},{"name":"constant.numeric.complex.q","match":"((?\u003c=(\\W))|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+[bhijf]?(\\.[0-9]+[m]?)?|0x[a-fA-F0-9]+)(?=(\\W|\\b)|_)"},{"name":"constant.numeric.complex.real.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+e[-]?[0-9]+)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.null.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0n|0N[ghijepmdznuvt]?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.inf.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0w|0W[hijepdznuvt]?)(?=(\\W|\\b))"},{"name":"support.function.q","match":"[!$@\\\\/#?|',`\\\\:]"},{"name":"support.function.q","match":"\\.(?=\\W)"},{"name":"source.q","match":"[a-zA-Z][a-zA-Z0-9_]+"},{"name":"support.function.q","match":"(?\u003c=[0-9\\s])_"}]}
@@ -1 +1 @@
1
- {"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}
1
+ {"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","begin":"/(?!/|\\*)","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}
@@ -1 +1 @@
1
- {"name":"Rego","scopeName":"source.rego","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#operator"},{"include":"#head"},{"include":"#term"}],"repository":{"call":{"name":"meta.function-call.rego","match":"([a-zA-Z_][a-zA-Z0-9_]*)\\(","captures":{"1":{"name":"support.function.any-method.rego"}}},"comment":{"name":"comment.line.number-sign.rego","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.rego"}}},"constant":{"name":"constant.language.rego","match":"\\b(?:true|false|null)\\b"},"head":{"name":"meta.function.rego","begin":"^([[:alpha:]_][[:alnum:]_]*)","end":"(=|{|\\n)","patterns":[{"include":"#term"}],"beginCaptures":{"1":{"name":"entity.name.function.declaration"}}},"keyword":{"name":"keyword.other.rego","match":"(^|\\s+)(?:(default|not|package|import|as|with|else|some|in))\\s+"},"number":{"name":"constant.numeric.rego","match":"(?x: # turn on extended mode\n -? # an optional minus\n (?:\n 0 # a zero\n | # ...or...\n [1-9] # a 1-9 character\n \\d* # followed by zero or more digits\n )\n (?:\n (?:\n \\. # a period\n \\d+ # followed by one or more digits\n )?\n (?:\n [eE] # an e character\n [+-]? # followed by an option +/-\n \\d+ # followed by one or more digits\n )? # make exponent optional\n )? # make decimal portion optional\n )"},"operator":{"patterns":[{"name":"keyword.operator.comparison.rego","match":"\\=|\\!\\=|\u003e|\u003c|\u003c\\=|\u003e\\=|\\+|-|\\*|%|/|\\||\u0026|:\\="}]},"string":{"name":"string.quoted.double.rego","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.rego","match":"(?x: # turn on extended mode\n\t \\\\ # a literal backslash\n\t (?: # ...followed by...\n\t [\"\\\\/bfnrt] # one of these characters\n\t | # ...or...\n\t u # a u\n\t [0-9a-fA-F]{4} # and four hex digits\n\t )\n\t )"},{"name":"invalid.illegal.unrecognized-string-escape.rego","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rego"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rego"}}},"term":{"patterns":[{"include":"#constant"},{"include":"#string"},{"include":"#number"},{"include":"#call"},{"include":"#variable"}]},"variable":{"name":"meta.identifier.rego","match":"\\b[[:alpha:]_][[:alnum:]_]*\\b"}}}
1
+ {"name":"Rego","scopeName":"source.rego","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#operator"},{"include":"#head"},{"include":"#term"}],"repository":{"call":{"name":"meta.function-call.rego","match":"([a-zA-Z_][a-zA-Z0-9_]*)\\(","captures":{"1":{"name":"support.function.any-method.rego"}}},"comment":{"name":"comment.line.number-sign.rego","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.rego"}}},"constant":{"name":"constant.language.rego","match":"\\b(?:true|false|null)\\b"},"head":{"name":"meta.function.rego","begin":"^([[:alpha:]_][[:alnum:]_]*)","end":"(=|{|\\n)","patterns":[{"include":"#term"}],"beginCaptures":{"1":{"name":"entity.name.function.declaration"}}},"keyword":{"name":"keyword.other.rego","match":"(^|\\s+)(?:(default|not|package|import|as|with|else|some|in|every))\\s+"},"number":{"name":"constant.numeric.rego","match":"(?x: # turn on extended mode\n -? # an optional minus\n (?:\n 0 # a zero\n | # ...or...\n [1-9] # a 1-9 character\n \\d* # followed by zero or more digits\n )\n (?:\n (?:\n \\. # a period\n \\d+ # followed by one or more digits\n )?\n (?:\n [eE] # an e character\n [+-]? # followed by an option +/-\n \\d+ # followed by one or more digits\n )? # make exponent optional\n )? # make decimal portion optional\n )"},"operator":{"patterns":[{"name":"keyword.operator.comparison.rego","match":"\\=|\\!\\=|\u003e|\u003c|\u003c\\=|\u003e\\=|\\+|-|\\*|%|/|\\||\u0026|:\\="}]},"string":{"name":"string.quoted.double.rego","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.rego","match":"(?x: # turn on extended mode\n\t \\\\ # a literal backslash\n\t (?: # ...followed by...\n\t [\"\\\\/bfnrt] # one of these characters\n\t | # ...or...\n\t u # a u\n\t [0-9a-fA-F]{4} # and four hex digits\n\t )\n\t )"},{"name":"invalid.illegal.unrecognized-string-escape.rego","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rego"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rego"}}},"term":{"patterns":[{"include":"#constant"},{"include":"#string"},{"include":"#number"},{"include":"#call"},{"include":"#variable"}]},"variable":{"name":"meta.identifier.rego","match":"\\b[[:alpha:]_][[:alnum:]_]*\\b"}}}
@@ -0,0 +1 @@
1
+ {"name":"ReasonLIGO","scopeName":"source.religo","patterns":[{"include":"#string"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#attribute"},{"include":"#macro"},{"include":"#letbinding"},{"include":"#typedefinition"},{"include":"#controlkeywords"},{"include":"#numericliterals"},{"include":"#operators"},{"include":"#identifierconstructor"},{"include":"#module"}],"repository":{"attribute":{"name":"keyword.control.attribute.religo","match":"\\[@.*\\]"},"block_comment":{"name":"comment.block.religo","begin":"/\\*","end":"\\*\\/"},"controlkeywords":{"name":"keyword.control.religo","match":"\\b(switch|if|else|assert|failwith)\\b"},"identifierconstructor":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\s+","captures":{"1":{"name":"variable.other.enummember.religo"}}},"letbinding":{"match":"\\b(let)\\b\\s*\\b(rec|)\\s*\\b([a-zA-Z$_][a-zA-Z0-9$_]*)","captures":{"1":{"name":"keyword.other.religo"},"2":{"name":"storage.modifier.religo"},"3":{"name":"entity.name.function.religo"}}},"line_comment":{"name":"comment.block.religo","match":"\\/\\/.*$"},"macro":{"name":"meta.preprocessor.religo","match":"^\\#[a-zA-Z]+"},"module":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\.([a-z][a-zA-Z0-9_$]*)","captures":{"1":{"name":"storage.class.religo"},"2":{"name":"storage.var.religo"}}},"numericliterals":{"name":"constant.numeric.religo","match":"(\\+|\\-)?[0-9]+(n|tz|tez|mutez|)\\b"},"operators":{"name":"keyword.operator.religo","match":"\\s+(\\-|\\+|mod|land|lor|lxor|lsl|lsr|\u0026\u0026|\\|\\||\u003e|!=|\u003c=|=\u003e|\u003c|\u003e)\\s+"},"string":{"name":"string.quoted.double.religo","begin":"\\\"","end":"\\\""},"typedefinition":{"name":"entity.name.type.religo","match":"\\b(type)\\b"}}}
@@ -1 +1 @@
1
- {"name":"ReScript","scopeName":"source.rescript","patterns":[{"include":"#storage"},{"include":"#constant"},{"include":"#commentLine"},{"include":"#commentBlock"},{"include":"#character"},{"include":"#typeParameter"},{"include":"#string"},{"include":"#attribute"},{"include":"#function"},{"include":"#list"},{"include":"#bracketAccess"},{"include":"#jsx"},{"include":"#operator"},{"include":"#number"},{"include":"#openOrIncludeModule"},{"include":"#moduleDeclaration"},{"include":"#moduleAccess"},{"include":"#constructor"},{"include":"#keyword"},{"include":"#punctuations"}],"repository":{"RE_ATTRIBUTE":{"match":"[A-Za-z_][A-Za-z0-9_\\.]*"},"RE_IDENT":{"match":"[a-z_][0-9a-zA-Z_]*"},"RE_KEYWORDS":{"name":"keyword.control","match":"\\b(and|as|assert|constraint|downto|else|exception|external|false|for|if|in|include|lazy|let|module|mutable|of|open|rec|switch|to|true|try|type|when|while|with)\\b"},"RE_LITERAL":{"name":"constant.language","match":"\\b(true|false)\\b"},"RE_MODULE_IDENT":{"name":"entity.name.namespace","match":"[A-Z_][0-9a-zA-Z_]*"},"attribute":{"patterns":[{"match":"(%%?|@@?)([A-Za-z_][A-Za-z0-9_\\.]*)","captures":{"1":{"name":"storage.modifier punctuation.definition.annotation"},"2":{"patterns":[{"name":"invalid.deprecated","match":"bs\\.send\\.pipe"},{"name":"invalid.illegal","match":"splice"},{"match":"(bs\\.)?([A-Za-z_][A-Za-z0-9_\\.]*)","captures":{"1":{"name":"invalid.deprecated"},"2":{"name":"variable.annotation"}}},{"name":"variable.annotation","match":"[A-Za-z_][A-Za-z0-9_\\.]*"}]}}}]},"bracketAccess":{"patterns":[{"name":"punctuation.section.brackets.begin","match":"\\["},{"name":"punctuation.section.brackets.end","match":"\\]"}]},"character":{"patterns":[{"name":"string.quoted.single","match":"'[\\x00-\\x7F]'"}]},"commentBlock":{"name":"comment.block","begin":"/\\*","end":"\\*/","patterns":[{"include":"#commentBlock"}]},"commentLine":{"name":"comment.line","match":"//.*"},"constant":{"patterns":[{"include":"#RE_LITERAL"}]},"constructor":{"patterns":[{"name":"variable.function variable.other","match":"\\b[A-Z][0-9a-zA-Z_]*\\b"},{"match":"(#)(\\.\\.\\.)?([a-zA-Z][0-9a-zA-Z_]*)\\b","captures":{"1":{"name":"punctuation.definition.keyword"},"2":{"name":"punctuation.definition.keyword"},"3":{"name":"variable.function variable.other"}}},{"match":"(#)","captures":{"1":{"name":"punctuation.definition.keyword"}}}]},"function":{"patterns":[{"name":"storage.type.function keyword.declaration.function","match":"=\u003e"}]},"jsx":{"patterns":[{"match":"\u003c\u003e|\u003c/\u003e|/\u003e"},{"match":"\u003c/([A-Z_][0-9a-zA-Z_]*)","captures":{"1":{"name":"entity.name.namespace"}}},{"match":"\u003c/([a-z_][0-9a-zA-Z_]*)"},{"match":"\u003c([A-Z_][0-9a-zA-Z_]*)","captures":{"1":{"name":"entity.name.namespace"}}}]},"keyword":{"patterns":[{"include":"#RE_KEYWORDS"}]},"list":{"patterns":[{"match":"\\b(list)(\\{)","captures":{"1":{"name":"keyword"},"2":{"name":"punctuation.section.braces.begin"}}},{"name":"punctuation.section.braces.end","match":"\\}"}]},"moduleAccess":{"patterns":[{"match":"\\b([A-Z_][0-9a-zA-Z_]*)(\\.)","captures":{"1":{"name":"entity.name.namespace"},"2":{"name":"punctuation.accessor"}}}]},"moduleAccessEndsWithModule":{"patterns":[{"name":"entity.name.namespace","match":"[A-Z_][0-9a-zA-Z_]*"},{"match":"(\\.)([A-Z_][0-9a-zA-Z_]*)","captures":{"1":{"name":"punctuation.accessor"},"2":{"name":"entity.name.namespace"}}}]},"moduleDeclaration":{"patterns":[{"match":"\\b(module)\\s+(type\\s+)?(of\\s+)?([A-Z_][0-9a-zA-Z_]*)","patterns":[{"match":"\\s*:\\s*([A-Z_][0-9a-zA-Z_]*)","captures":{"1":{"name":"entity.name.namespace"}}}],"captures":{"1":{"name":"keyword"},"2":{"name":"keyword"},"3":{"name":"keyword"},"4":{"name":"entity.name.namespace"}}}]},"number":{"patterns":[{"name":"constant.numeric","match":"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]+)?([eE][-+]?[0-9_]+)?)?)\\b"}]},"openOrIncludeModule":{"patterns":[{"match":"\\b(open|include)\\s+([A-Z_][0-9a-zA-Z_]*((\\.)([A-Z_][0-9a-zA-Z_]*))*)","captures":{"1":{"name":"keyword"},"2":{"patterns":[{"include":"#moduleAccessEndsWithModule"}]}}},{"name":"keyword","match":"\\b(open|include)\\s+"}]},"operator":{"patterns":[{"name":"keyword.operator keyword","match":"-\u003e|\\|\\||\u0026\u0026|\\+\\+|\\*\\*|\\+\\.|\\+|-\\.|-|\\*\\.|\\*|/\\.|/|\\.\\.\\.|\\.\\.|===|==|\\^|:=|!|\u003e=(?! *\\?)|\u003c=|="},{"name":"invalid.deprecated","match":"\\|\u003e"}]},"punctuations":{"patterns":[{"name":"punctuation.definition.keyword","match":"~"},{"name":"punctuation.terminator","match":";"},{"name":"punctuation.accessor","match":"\\."},{"name":"punctuation.separator","match":"\\,"},{"name":"punctuation.separator","match":"\\?|:"},{"name":"punctuation.separator","match":"\\|(?!\\|)"},{"name":"punctuation.section.braces.begin","match":"\\{"},{"name":"punctuation.section.braces.end","match":"\\}"},{"name":"punctuation.section.parens.begin","match":"\\("},{"name":"punctuation.section.parens.end","match":"\\)"}]},"storage":{"patterns":[{"name":"storage.type","match":"\\btype\\b"}]},"string":{"patterns":[{"name":"string.quoted.double","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end"}}},{"name":"string.template","begin":"([a-z_][0-9a-zA-Z_]*)?(`)","end":"(?\u003c!\\\\)`","patterns":[{"name":"meta.template.expression","begin":"\\$\\{","end":"\\}","patterns":[{"match":"[a-z_][0-9a-zA-Z_]*"},{"include":"#operator"},{"include":"#punctuations"},{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.section.interpolation.begin"}},"endCaptures":{"0":{"name":"punctuation.section.interpolation.end"}}}],"beginCaptures":{"1":{"name":"variables.annotation"},"2":{"name":"punctuation.definition.string.template.begin"}},"endCaptures":{"1":{"name":"punctuation.definition.string.template.end"}}}]},"typeParameter":{"patterns":[{"name":"support.type","match":"'[A-Za-z][A-Za-z0-9_]*"}]}}}
1
+ {"name":"ReScript","scopeName":"source.rescript","patterns":[{"include":"#storage"},{"include":"#constant"},{"include":"#commentLine"},{"include":"#commentBlock"},{"include":"#character"},{"include":"#typeParameter"},{"include":"#string"},{"include":"#attribute"},{"include":"#function"},{"include":"#list"},{"include":"#bracketAccess"},{"include":"#jsx"},{"include":"#operator"},{"include":"#number"},{"include":"#openOrIncludeModule"},{"include":"#moduleDeclaration"},{"include":"#moduleAccess"},{"include":"#constructor"},{"include":"#keyword"},{"include":"#punctuations"},{"include":"#defaultIdIsVariable"}],"repository":{"RE_CONSTANTS_BOOL":{"name":"constant.language.boolean","match":"\\b(false|true)\\b"},"RE_KEYWORD":{"name":"keyword","match":"\\b(include|let|module|of|open|type)\\b"},"RE_KEYWORD_CONTROL":{"name":"keyword.control","match":"\\b(and|as|assert|constraint|downto|else|exception|external|for|if|in|lazy|mutable|rec|switch|to|try|when|while|with)\\b"},"RE_TO_DOWNTO_AS_LABELS":{"patterns":[{"match":"(to|downto)\\s*(=)","captures":{"1":{"name":"variable"},"2":{"name":"keyword.operator keyword"}}},{"match":"(to|downto)\\s*(as)","captures":{"1":{"name":"variable"},"2":{"name":"keyword.control"}}}]},"attribute":{"patterns":[{"match":"(%%?|@@?)([A-Za-z_][A-Za-z0-9_\\.]*)","captures":{"1":{"name":"punctuation.decorator"},"2":{"patterns":[{"name":"invalid.deprecated","match":"bs\\.send\\.pipe"},{"name":"invalid.illegal","match":"splice"},{"match":"(bs\\.)?([A-Za-z_][A-Za-z0-9_\\.]*)","captures":{"1":{"name":"invalid.deprecated"},"2":{"name":"entity.name.function"}}},{"name":"entity.name.function","match":"[A-Za-z_][A-Za-z0-9_\\.]*"}]}}}]},"bracketAccess":{"patterns":[{"name":"punctuation.section.brackets.begin","match":"\\["},{"name":"punctuation.section.brackets.end","match":"\\]"}]},"character":{"patterns":[{"name":"string.quoted.single","match":"'[\\x00-\\x7F]'"}]},"commentBlock":{"name":"comment.block","begin":"/\\*","end":"\\*/","patterns":[{"include":"#commentBlock"}]},"commentLine":{"name":"comment.line","match":"//.*"},"constant":{"patterns":[{"include":"#RE_CONSTANTS_BOOL"}]},"constructor":{"patterns":[{"match":"(#)\\s*([a-zA-Z][0-9a-zA-Z_]*)\\b","captures":{"1":{"name":"variable.other.enummember"},"2":{"name":"variable.other.enummember"}}},{"match":"(#)\\s*(\\.\\.\\.)\\b","captures":{"1":{"name":"variable.other.enummember"},"2":{"name":"variable.other.enummember"}}},{"match":"(#)","captures":{"1":{"name":"variable.other.enummember"}}}]},"defaultIdIsVariable":{"patterns":[{"name":"variable","match":"[A-Za-z_][A-Za-z0-9_]*"}]},"function":{"patterns":[{"name":"storage.type.function keyword.declaration.function","match":"=\u003e"}]},"jsx":{"name":"punctuation.definition.tag","match":"\u003c\u003e|\u003c/\u003e|\u003c/|/\u003e"},"keyword":{"patterns":[{"include":"#RE_TO_DOWNTO_AS_LABELS"},{"include":"#RE_KEYWORD_CONTROL"},{"include":"#RE_KEYWORD"}]},"list":{"patterns":[{"match":"\\b(list)(\\{)","captures":{"1":{"name":"keyword"},"2":{"name":"punctuation.section.braces.begin"}}},{"name":"punctuation.section.braces.end","match":"\\}"}]},"number":{"patterns":[{"name":"constant.numeric","match":"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]+)?([eE][-+]?[0-9_]+)?)?)\\b"}]},"operator":{"patterns":[{"name":"keyword.operator","match":"-\u003e|\\|\\||\u0026\u0026|\\+\\+|\\*\\*|\\+\\.|\\+|-\\.|-|\\*\\.|\\*|/\\.|/|\\.\\.\\.|\\.\\.|===|==|\\^|:=|!|\u003e=(?! *\\?)|\u003c=|="},{"name":"invalid.deprecated","match":"\\|\u003e"}]},"punctuations":{"patterns":[{"name":"punctuation.definition.keyword","match":"~"},{"name":"punctuation.terminator","match":";"},{"name":"punctuation.accessor","match":"\\."},{"name":"punctuation.separator","match":"\\,"},{"name":"punctuation.separator","match":"\\?|:"},{"name":"punctuation.separator","match":"\\|(?!\\|)"},{"name":"punctuation.section.braces.begin","match":"\\{"},{"name":"punctuation.section.braces.end","match":"\\}"},{"name":"punctuation.section.parens.begin","match":"\\("},{"name":"punctuation.section.parens.end","match":"\\)"}]},"string":{"patterns":[{"name":"string.quoted.double","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end"}}},{"name":"string.template","begin":"([a-z_][0-9a-zA-Z_]*)?(`)","end":"(?\u003c!\\\\)`","patterns":[{"name":"meta.template.expression","begin":"\\$\\{","end":"\\}","patterns":[{"match":"[a-z_][0-9a-zA-Z_]*"},{"include":"#operator"},{"include":"#punctuations"},{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.template-expression.end"}}}],"beginCaptures":{"1":{"name":"variables.annotation"},"2":{"name":"punctuation.definition.string.template.begin"}},"endCaptures":{"1":{"name":"punctuation.definition.string.template.end"}}}]},"typeParameter":{"patterns":[{"name":"support.type","match":"'[A-Za-z][A-Za-z0-9_]*"}]}}}