hy.json 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. {
  2. "aliases": [
  3. "hylang"
  4. ],
  5. "illegal": "\\S",
  6. "contains": [
  7. {
  8. "className": "meta",
  9. "begin": "^#!",
  10. "end": "$"
  11. },
  12. {
  13. "begin": "\\(",
  14. "end": "\\)",
  15. "contains": [
  16. {
  17. "className": "comment",
  18. "begin": "comment",
  19. "end": "",
  20. "contains": [
  21. {
  22. "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"
  23. },
  24. {
  25. "className": "doctag",
  26. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  27. "relevance": 0
  28. }
  29. ]
  30. },
  31. {
  32. "keywords": {
  33. "builtin-name": "!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . \/ \/\/ \/\/= \/= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro\/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile\/calls profile\/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"
  34. },
  35. "lexemes": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
  36. "className": "name",
  37. "begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
  38. "starts": {
  39. "endsWithParent": true,
  40. "relevance": 0,
  41. "contains": [
  42. {
  43. "$ref": "#contains.1"
  44. },
  45. {
  46. "className": "string",
  47. "begin": "\"",
  48. "end": "\"",
  49. "illegal": null,
  50. "contains": [
  51. {
  52. "begin": "\\\\[\\s\\S]",
  53. "relevance": 0
  54. }
  55. ]
  56. },
  57. {
  58. "className": "comment",
  59. "begin": "\\^[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
  60. },
  61. {
  62. "className": "comment",
  63. "begin": "\\^\\{",
  64. "end": "\\}",
  65. "contains": [
  66. {
  67. "$ref": "#contains.1.contains.0.contains.0"
  68. },
  69. {
  70. "className": "doctag",
  71. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  72. "relevance": 0
  73. }
  74. ]
  75. },
  76. {
  77. "className": "comment",
  78. "begin": ";",
  79. "end": "$",
  80. "contains": [
  81. {
  82. "$ref": "#contains.1.contains.0.contains.0"
  83. },
  84. {
  85. "className": "doctag",
  86. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  87. "relevance": 0
  88. }
  89. ],
  90. "relevance": 0
  91. },
  92. {
  93. "className": "symbol",
  94. "begin": "[:]{1,2}[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
  95. },
  96. {
  97. "begin": "[\\[\\{]",
  98. "end": "[\\]\\}]",
  99. "contains": {
  100. "$ref": "#contains.1.contains.1.starts.contains"
  101. }
  102. },
  103. {
  104. "className": "number",
  105. "begin": "[-+]?\\d+(\\.\\d+)?",
  106. "relevance": 0
  107. },
  108. {
  109. "className": "literal",
  110. "begin": "\\b([Tt]rue|[Ff]alse|nil|None)\\b"
  111. },
  112. {
  113. "begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
  114. "relevance": 0
  115. }
  116. ]
  117. }
  118. },
  119. {
  120. "$ref": "#contains.1.contains.1.starts"
  121. }
  122. ]
  123. },
  124. {
  125. "$ref": "#contains.1.contains.1.starts.contains.1"
  126. },
  127. {
  128. "$ref": "#contains.1.contains.1.starts.contains.2"
  129. },
  130. {
  131. "$ref": "#contains.1.contains.1.starts.contains.3"
  132. },
  133. {
  134. "$ref": "#contains.1.contains.1.starts.contains.4"
  135. },
  136. {
  137. "$ref": "#contains.1.contains.1.starts.contains.5"
  138. },
  139. {
  140. "$ref": "#contains.1.contains.1.starts.contains.6"
  141. },
  142. {
  143. "$ref": "#contains.1.contains.1.starts.contains.7"
  144. },
  145. {
  146. "$ref": "#contains.1.contains.1.starts.contains.8"
  147. }
  148. ]
  149. }