lisp.json 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. {
  2. "illegal": "\\S",
  3. "contains": [
  4. {
  5. "className": "number",
  6. "variants": [
  7. {
  8. "begin": "(\\-|\\+)?\\d+(\\.\\d+|\\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|\\-)?\\d+)?",
  9. "relevance": 0
  10. },
  11. {
  12. "begin": "#(b|B)[0-1]+(\/[0-1]+)?"
  13. },
  14. {
  15. "begin": "#(o|O)[0-7]+(\/[0-7]+)?"
  16. },
  17. {
  18. "begin": "#(x|X)[0-9a-fA-F]+(\/[0-9a-fA-F]+)?"
  19. },
  20. {
  21. "begin": "#(c|C)\\((\\-|\\+)?\\d+(\\.\\d+|\\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|\\-)?\\d+)? +(\\-|\\+)?\\d+(\\.\\d+|\\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|\\-)?\\d+)?",
  22. "end": "\\)"
  23. }
  24. ]
  25. },
  26. {
  27. "className": "meta",
  28. "begin": "^#!",
  29. "end": "$"
  30. },
  31. {
  32. "className": "literal",
  33. "begin": "\\b(t{1}|nil)\\b"
  34. },
  35. {
  36. "className": "string",
  37. "begin": "\"",
  38. "end": "\"",
  39. "illegal": null,
  40. "contains": [
  41. {
  42. "begin": "\\\\[\\s\\S]",
  43. "relevance": 0
  44. }
  45. ]
  46. },
  47. {
  48. "className": "comment",
  49. "begin": ";",
  50. "end": "$",
  51. "contains": [
  52. {
  53. "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"
  54. },
  55. {
  56. "className": "doctag",
  57. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  58. "relevance": 0
  59. }
  60. ],
  61. "relevance": 0
  62. },
  63. {
  64. "contains": [
  65. {
  66. "$ref": "#contains.0"
  67. },
  68. {
  69. "$ref": "#contains.3"
  70. },
  71. {
  72. "begin": "\\*",
  73. "end": "\\*"
  74. },
  75. {
  76. "className": "symbol",
  77. "begin": "[:&][a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*"
  78. },
  79. {
  80. "begin": "\\(",
  81. "end": "\\)",
  82. "contains": [
  83. "self",
  84. {
  85. "$ref": "#contains.2"
  86. },
  87. {
  88. "$ref": "#contains.3"
  89. },
  90. {
  91. "$ref": "#contains.0"
  92. },
  93. {
  94. "begin": "[a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*",
  95. "relevance": 0
  96. }
  97. ]
  98. },
  99. {
  100. "$ref": "#contains.5.contains.4.contains.4"
  101. }
  102. ],
  103. "variants": [
  104. {
  105. "begin": "['`]\\(",
  106. "end": "\\)"
  107. },
  108. {
  109. "begin": "\\(quote ",
  110. "end": "\\)",
  111. "keywords": {
  112. "name": "quote"
  113. }
  114. },
  115. {
  116. "begin": "'\\|[^|]*?\\|"
  117. }
  118. ]
  119. },
  120. {
  121. "variants": [
  122. {
  123. "begin": "'[a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*"
  124. },
  125. {
  126. "begin": "#'[a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*(::[a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*)*"
  127. }
  128. ]
  129. },
  130. {
  131. "begin": "\\(\\s*",
  132. "end": "\\)",
  133. "contains": [
  134. {
  135. "className": "name",
  136. "variants": [
  137. {
  138. "begin": "[a-zA-Z_\\-\\+\\*\\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\\/\\<\\=\\>\\&\\#!]*"
  139. },
  140. {
  141. "begin": "\\|[^|]*?\\|"
  142. }
  143. ]
  144. },
  145. {
  146. "endsWithParent": true,
  147. "relevance": 0,
  148. "contains": [
  149. {
  150. "$ref": "#contains.5"
  151. },
  152. {
  153. "$ref": "#contains.6"
  154. },
  155. {
  156. "$ref": "#contains.7"
  157. },
  158. {
  159. "$ref": "#contains.2"
  160. },
  161. {
  162. "$ref": "#contains.0"
  163. },
  164. {
  165. "$ref": "#contains.3"
  166. },
  167. {
  168. "$ref": "#contains.4"
  169. },
  170. {
  171. "$ref": "#contains.5.contains.2"
  172. },
  173. {
  174. "$ref": "#contains.5.contains.3"
  175. },
  176. {
  177. "begin": "\\|[^|]*?\\|"
  178. },
  179. {
  180. "$ref": "#contains.5.contains.4.contains.4"
  181. }
  182. ]
  183. }
  184. ]
  185. },
  186. {
  187. "$ref": "#contains.5.contains.4.contains.4"
  188. }
  189. ]
  190. }