1{ 2 "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json", 3 "name": "Torque", 4 "patterns": [ 5 { 6 "include": "#keywords" 7 }, 8 { 9 "include": "#strings" 10 }, 11 { 12 "name": "comment.line.double-slash.torque", 13 "begin": "//", 14 "end": "$" 15 }, 16 { 17 "name": "comment.block.torque", 18 "begin": "/\\*", 19 "end": "\\*/" 20 }, 21 { 22 "name": "string.quoted.single.torque", 23 "begin": "'", 24 "end": "'", 25 "patterns": [ 26 { 27 "name": "constant.character.escape.torque", 28 "match": "\\\\." 29 }] 30 }, 31 { 32 "name": "support.function.torque", 33 "match": "\\b(min|max|assert|check|debug|unreachable)\\b" 34 }, 35 { 36 "name": "support.variable.torque", 37 "match": "\\b(true|True|false|False|Undefined|Hole|Null)\\b" 38 }, 39 { 40 "begin": "<(?=[A-Za-z][0-9A-Za-z_]*>)", 41 "end": ">", 42 "patterns": [ 43 { 44 "name": "support.type.torque", 45 "match": "([A-Za-z][0-9A-Za-z_]*)" 46 } 47 ] 48 }, 49 { 50 "begin": ":(\\s*)?", 51 "end": "(?=[^0-9A-Za-z_])", 52 "patterns": [ 53 { 54 "name": "support.type.torque", 55 "match": "([A-Za-z][0-9A-Za-z_]*)" 56 } 57 ] 58 } 59 ], 60 "repository": { 61 "keywords": { 62 "patterns": [{ 63 "name": "keyword.control.torque", 64 "match": "\\b(if|else|while|for|return|continue|break|goto|otherwise|try|catch)\\b" 65 }, 66 { 67 "name": "keyword.other.torque", 68 "match": "\\b(constexpr|module|macro|builtin|runtime|javascript|implicit|deferred|cast|convert|label|labels|tail|isnt|is|let|generates|type|extends|extern|const)\\b" 69 }, 70 { 71 "name": "keyword.operator.torque", 72 "match": "\\b(=|\\*=)\\b" 73 }] 74 }, 75 "strings": { 76 "name": "string.quoted.double.torque", 77 "begin": "\"", 78 "end": "\"", 79 "patterns": [ 80 { 81 "name": "constant.character.escape.torque", 82 "match": "\\\\." 83 } 84 ] 85 } 86 }, 87 "scopeName": "source.torque" 88}