angelscript.json 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. {
  2. "aliases": [
  3. "asc"
  4. ],
  5. "keywords": "for in|0 break continue while do|0 return if else case switch namespace is cast or and xor not get|0 in inout|10 out override set|0 private public const default|0 final shared external mixin|10 enum typedef funcdef this super import from interface abstract|0 try catch protected explicit property",
  6. "illegal": "(^using\\s+[A-Za-z0-9_\\.]+;$|\\bfunctions*[^\\(])",
  7. "contains": [
  8. {
  9. "className": "string",
  10. "begin": "'",
  11. "end": "'",
  12. "illegal": "\\n",
  13. "contains": [
  14. {
  15. "begin": "\\\\[\\s\\S]",
  16. "relevance": 0
  17. }
  18. ],
  19. "relevance": 0
  20. },
  21. {
  22. "className": "string",
  23. "begin": "\"",
  24. "end": "\"",
  25. "illegal": "\\n",
  26. "contains": [
  27. {
  28. "$ref": "#contains.0.contains.0"
  29. }
  30. ],
  31. "relevance": 0
  32. },
  33. {
  34. "className": "string",
  35. "begin": "\"\"\"",
  36. "end": "\"\"\""
  37. },
  38. {
  39. "className": "comment",
  40. "begin": "\/\/",
  41. "end": "$",
  42. "contains": [
  43. {
  44. "begin": "\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b"
  45. },
  46. {
  47. "className": "doctag",
  48. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  49. "relevance": 0
  50. }
  51. ]
  52. },
  53. {
  54. "className": "comment",
  55. "begin": "\/\\*",
  56. "end": "\\*\/",
  57. "contains": [
  58. {
  59. "$ref": "#contains.3.contains.0"
  60. },
  61. {
  62. "className": "doctag",
  63. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  64. "relevance": 0
  65. }
  66. ]
  67. },
  68. {
  69. "beginKeywords": "interface namespace",
  70. "end": "{",
  71. "illegal": "[;.\\-]",
  72. "contains": [
  73. {
  74. "className": "symbol",
  75. "begin": "[a-zA-Z0-9_]+"
  76. }
  77. ]
  78. },
  79. {
  80. "beginKeywords": "class",
  81. "end": "{",
  82. "illegal": "[;.\\-]",
  83. "contains": [
  84. {
  85. "className": "symbol",
  86. "begin": "[a-zA-Z0-9_]+",
  87. "contains": [
  88. {
  89. "begin": "[:,]\\s*",
  90. "contains": [
  91. {
  92. "className": "symbol",
  93. "begin": "[a-zA-Z0-9_]+"
  94. }
  95. ]
  96. }
  97. ]
  98. }
  99. ]
  100. },
  101. {
  102. "className": "built_in",
  103. "begin": "\\b(void|bool|int|int8|int16|int32|int64|uint|uint8|uint16|uint32|uint64|string|ref|array|double|float|auto|dictionary)",
  104. "contains": [
  105. {
  106. "className": "keyword",
  107. "begin": "<",
  108. "end": ">",
  109. "contains": [
  110. {
  111. "$ref": "#contains.7"
  112. },
  113. {
  114. "className": "symbol",
  115. "begin": "[a-zA-Z0-9_]+@",
  116. "contains": [
  117. {
  118. "$ref": "#contains.7.contains.0"
  119. }
  120. ]
  121. }
  122. ]
  123. }
  124. ]
  125. },
  126. {
  127. "$ref": "#contains.7.contains.0.contains.1"
  128. },
  129. {
  130. "className": "literal",
  131. "begin": "\\b(null|true|false)"
  132. },
  133. {
  134. "className": "number",
  135. "begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?f?|\\.\\d+f?)([eE][-+]?\\d+f?)?)"
  136. }
  137. ]
  138. }