1 |
- {"ast":null,"code":"/*\nLanguage: BASIC\nAuthor: Raphaël Assénat <raph@raphnet.net>\nDescription: Based on the BASIC reference from the Tandy 1000 guide\nWebsite: https://en.wikipedia.org/wiki/Tandy_1000\nCategory: system\n*/\n\n/** @type LanguageFn */\nfunction basic(hljs) {\n const KEYWORDS = [\"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\"];\n return {\n name: 'BASIC',\n case_insensitive: true,\n illegal: '^\\.',\n // Support explicitly typed variables that end with $%! or #.\n keywords: {\n $pattern: '[a-zA-Z][a-zA-Z0-9_$%!#]*',\n keyword: KEYWORDS\n },\n contains: [hljs.QUOTE_STRING_MODE, hljs.COMMENT('REM', '$', {\n relevance: 10\n }), hljs.COMMENT('\\'', '$', {\n relevance: 0\n }), {\n // Match line numbers\n className: 'symbol',\n begin: '^[0-9]+ ',\n relevance: 10\n }, {\n // Match typed numeric constants (1000, 12.34!, 1.2e5, 1.5#, 1.2D2)\n className: 'number',\n begin: '\\\\b\\\\d+(\\\\.\\\\d+)?([edED]\\\\d+)?[#\\!]?',\n relevance: 0\n }, {\n // Match hexadecimal numbers (&Hxxxx)\n className: 'number',\n begin: '(&[hH][0-9a-fA-F]{1,4})'\n }, {\n // Match octal numbers (&Oxxxxxx)\n className: 'number',\n begin: '(&[oO][0-7]{1,6})'\n }]\n };\n}\nmodule.exports = basic;","map":{"version":3,"names":["basic","hljs","KEYWORDS","name","case_insensitive","illegal","keywords","$pattern","keyword","contains","QUOTE_STRING_MODE","COMMENT","relevance","className","begin","module","exports"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/highlight.js/lib/languages/basic.js"],"sourcesContent":["/*\nLanguage: BASIC\nAuthor: Raphaël Assénat <raph@raphnet.net>\nDescription: Based on the BASIC reference from the Tandy 1000 guide\nWebsite: https://en.wikipedia.org/wiki/Tandy_1000\nCategory: system\n*/\n\n/** @type LanguageFn */\nfunction basic(hljs) {\n const KEYWORDS = [\n \"ABS\",\n \"ASC\",\n \"AND\",\n \"ATN\",\n \"AUTO|0\",\n \"BEEP\",\n \"BLOAD|10\",\n \"BSAVE|10\",\n \"CALL\",\n \"CALLS\",\n \"CDBL\",\n \"CHAIN\",\n \"CHDIR\",\n \"CHR$|10\",\n \"CINT\",\n \"CIRCLE\",\n \"CLEAR\",\n \"CLOSE\",\n \"CLS\",\n \"COLOR\",\n \"COM\",\n \"COMMON\",\n \"CONT\",\n \"COS\",\n \"CSNG\",\n \"CSRLIN\",\n \"CVD\",\n \"CVI\",\n \"CVS\",\n \"DATA\",\n \"DATE$\",\n \"DEFDBL\",\n \"DEFINT\",\n \"DEFSNG\",\n \"DEFSTR\",\n \"DEF|0\",\n \"SEG\",\n \"USR\",\n \"DELETE\",\n \"DIM\",\n \"DRAW\",\n \"EDIT\",\n \"END\",\n \"ENVIRON\",\n \"ENVIRON$\",\n \"EOF\",\n \"EQV\",\n \"ERASE\",\n \"ERDEV\",\n \"ERDEV$\",\n \"ERL\",\n \"ERR\",\n \"ERROR\",\n \"EXP\",\n \"FIELD\",\n \"FILES\",\n \"FIX\",\n \"FOR|0\",\n \"FRE\",\n \"GET\",\n \"GOSUB|10\",\n \"GOTO\",\n \"HEX$\",\n \"IF\",\n \"THEN\",\n \"ELSE|0\",\n \"INKEY$\",\n \"INP\",\n \"INPUT\",\n \"INPUT#\",\n \"INPUT$\",\n \"INSTR\",\n \"IMP\",\n \"INT\",\n \"IOCTL\",\n \"IOCTL$\",\n \"KEY\",\n \"ON\",\n \"OFF\",\n \"LIST\",\n \"KILL\",\n \"LEFT$\",\n \"LEN\",\n \"LET\",\n \"LINE\",\n \"LLIST\",\n \"LOAD\",\n \"LOC\",\n \"LOCATE\",\n \"LOF\",\n \"LOG\",\n \"LPRINT\",\n \"USING\",\n \"LSET\",\n \"MERGE\",\n \"MID$\",\n \"MKDIR\",\n \"MKD$\",\n \"MKI$\",\n \"MKS$\",\n \"MOD\",\n \"NAME\",\n \"NEW\",\n \"NEXT\",\n \"NOISE\",\n \"NOT\",\n \"OCT$\",\n \"ON\",\n \"OR\",\n \"PEN\",\n \"PLAY\",\n \"STRIG\",\n \"OPEN\",\n \"OPTION\",\n \"BASE\",\n \"OUT\",\n \"PAINT\",\n \"PALETTE\",\n \"PCOPY\",\n \"PEEK\",\n \"PMAP\",\n \"POINT\",\n \"POKE\",\n \"POS\",\n \"PRINT\",\n \"PRINT]\",\n \"PSET\",\n \"PRESET\",\n \"PUT\",\n \"RANDOMIZE\",\n \"READ\",\n \"REM\",\n \"RENUM\",\n \"RESET|0\",\n \"RESTORE\",\n \"RESUME\",\n \"RETURN|0\",\n \"RIGHT$\",\n \"RMDIR\",\n \"RND\",\n \"RSET\",\n \"RUN\",\n \"SAVE\",\n \"SCREEN\",\n \"SGN\",\n \"SHELL\",\n \"SIN\",\n \"SOUND\",\n \"SPACE$\",\n \"SPC\",\n \"SQR\",\n \"STEP\",\n \"STICK\",\n \"STOP\",\n \"STR$\",\n \"STRING$\",\n \"SWAP\",\n \"SYSTEM\",\n \"TAB\",\n \"TAN\",\n \"TIME$\",\n \"TIMER\",\n \"TROFF\",\n \"TRON\",\n \"TO\",\n \"USR\",\n \"VAL\",\n \"VARPTR\",\n \"VARPTR$\",\n \"VIEW\",\n \"WAIT\",\n \"WHILE\",\n \"WEND\",\n \"WIDTH\",\n \"WINDOW\",\n \"WRITE\",\n \"XOR\"\n ];\n\n return {\n name: 'BASIC',\n case_insensitive: true,\n illegal: '^\\.',\n // Support explicitly typed variables that end with $%! or #.\n keywords: {\n $pattern: '[a-zA-Z][a-zA-Z0-9_$%!#]*',\n keyword: KEYWORDS\n },\n contains: [\n hljs.QUOTE_STRING_MODE,\n hljs.COMMENT('REM', '$', { relevance: 10 }),\n hljs.COMMENT('\\'', '$', { relevance: 0 }),\n {\n // Match line numbers\n className: 'symbol',\n begin: '^[0-9]+ ',\n relevance: 10\n },\n {\n // Match typed numeric constants (1000, 12.34!, 1.2e5, 1.5#, 1.2D2)\n className: 'number',\n begin: '\\\\b\\\\d+(\\\\.\\\\d+)?([edED]\\\\d+)?[#\\!]?',\n relevance: 0\n },\n {\n // Match hexadecimal numbers (&Hxxxx)\n className: 'number',\n begin: '(&[hH][0-9a-fA-F]{1,4})'\n },\n {\n // Match octal numbers (&Oxxxxxx)\n className: 'number',\n begin: '(&[oO][0-7]{1,6})'\n }\n ]\n };\n}\n\nmodule.exports = basic;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}
|