basic.json 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. {
  2. "case_insensitive": true,
  3. "illegal": "^.",
  4. "lexemes": "[a-zA-Z][a-zA-Z0-9_$%!#]*",
  5. "keywords": {
  6. "keyword": "ABS ASC AND ATN AUTO|0 BEEP BLOAD|10 BSAVE|10 CALL CALLS CDBL CHAIN CHDIR CHR$|10 CINT CIRCLE CLEAR CLOSE CLS COLOR COM COMMON CONT COS CSNG CSRLIN CVD CVI CVS DATA DATE$ DEFDBL DEFINT DEFSNG DEFSTR DEF|0 SEG USR DELETE DIM DRAW EDIT END ENVIRON ENVIRON$ EOF EQV ERASE ERDEV ERDEV$ ERL ERR ERROR EXP FIELD FILES FIX FOR|0 FRE GET GOSUB|10 GOTO HEX$ IF THEN ELSE|0 INKEY$ INP INPUT INPUT# INPUT$ INSTR IMP INT IOCTL IOCTL$ KEY ON OFF LIST KILL LEFT$ LEN LET LINE LLIST LOAD LOC LOCATE LOF LOG LPRINT USING LSET MERGE MID$ MKDIR MKD$ MKI$ MKS$ MOD NAME NEW NEXT NOISE NOT OCT$ ON OR PEN PLAY STRIG OPEN OPTION BASE OUT PAINT PALETTE PCOPY PEEK PMAP POINT POKE POS PRINT PRINT] PSET PRESET PUT RANDOMIZE READ REM RENUM RESET|0 RESTORE RESUME RETURN|0 RIGHT$ RMDIR RND RSET RUN SAVE SCREEN SGN SHELL SIN SOUND SPACE$ SPC SQR STEP STICK STOP STR$ STRING$ SWAP SYSTEM TAB TAN TIME$ TIMER TROFF TRON TO USR VAL VARPTR VARPTR$ VIEW WAIT WHILE WEND WIDTH WINDOW WRITE XOR"
  7. },
  8. "contains": [
  9. {
  10. "className": "string",
  11. "begin": "\"",
  12. "end": "\"",
  13. "illegal": "\\n",
  14. "contains": [
  15. {
  16. "begin": "\\\\[\\s\\S]",
  17. "relevance": 0
  18. }
  19. ]
  20. },
  21. {
  22. "className": "comment",
  23. "begin": "REM",
  24. "end": "$",
  25. "contains": [
  26. {
  27. "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"
  28. },
  29. {
  30. "className": "doctag",
  31. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  32. "relevance": 0
  33. }
  34. ],
  35. "relevance": 10
  36. },
  37. {
  38. "className": "comment",
  39. "begin": "'",
  40. "end": "$",
  41. "contains": [
  42. {
  43. "$ref": "#contains.1.contains.0"
  44. },
  45. {
  46. "className": "doctag",
  47. "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
  48. "relevance": 0
  49. }
  50. ],
  51. "relevance": 0
  52. },
  53. {
  54. "className": "symbol",
  55. "begin": "^[0-9]+ ",
  56. "relevance": 10
  57. },
  58. {
  59. "className": "number",
  60. "begin": "\\b([0-9]+[0-9edED.]*[#!]?)",
  61. "relevance": 0
  62. },
  63. {
  64. "className": "number",
  65. "begin": "(&[hH][0-9a-fA-F]{1,4})"
  66. },
  67. {
  68. "className": "number",
  69. "begin": "(&[oO][0-7]{1,6})"
  70. }
  71. ]
  72. }