{ "keywords": { "keyword": "ABORT ACC ADJUST AND AP_LD BREAK CALL CNT COL CONDITION CONFIG DA DB DIV DETECT ELSE END ENDFOR ERR_NUM ERROR_PROG FINE FOR GP GUARD INC IF JMP LINEAR_MAX_SPEED LOCK MOD MONITOR OFFSET Offset OR OVERRIDE PAUSE PREG PTH RT_LD RUN SELECT SKIP Skip TA TB TO TOOL_OFFSET Tool_Offset UF UT UFRAME_NUM UTOOL_NUM UNLOCK WAIT X Y Z W P R STRLEN SUBSTR FINDSTR VOFFSET PROG ATTR MN POS", "literal": "ON OFF max_speed LPOS JPOS ENABLE DISABLE START STOP RESET" }, "contains": [ { "className": "built_in", "begin": "(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[", "end": "\\]", "contains": [ "self", { "className": "number", "begin": "[1-9][0-9]*", "relevance": 0 }, { "className": "symbol", "begin": ":[^\\]]+" } ] }, { "className": "built_in", "begin": "(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[", "end": "\\]", "contains": [ "self", { "$ref": "#contains.0.contains.1" }, { "className": "string", "begin": "\"", "end": "\"", "illegal": "\\n", "contains": [ { "begin": "\\\\[\\s\\S]", "relevance": 0 } ] }, { "$ref": "#contains.0.contains.2" } ] }, { "className": "keyword", "begin": "\/(PROG|ATTR|MN|POS|END)\\b" }, { "className": "keyword", "begin": "(CALL|RUN|POINT_LOGIC|LBL)\\b" }, { "className": "keyword", "begin": "\\b(ACC|CNT|Skip|Offset|PSPD|RT_LD|AP_LD|Tool_Offset)" }, { "className": "number", "begin": "\\d+(sec|msec|mm\/sec|cm\/min|inch\/min|deg\/sec|mm|in|cm)?\\b", "relevance": 0 }, { "className": "comment", "begin": "\/\/", "end": "[;$]", "contains": [ { "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" }, { "className": "doctag", "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):", "relevance": 0 } ] }, { "className": "comment", "begin": "!", "end": "[;$]", "contains": [ { "$ref": "#contains.6.contains.0" }, { "className": "doctag", "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):", "relevance": 0 } ] }, { "className": "comment", "begin": "--eg:", "end": "$", "contains": [ { "$ref": "#contains.6.contains.0" }, { "className": "doctag", "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):", "relevance": 0 } ] }, { "$ref": "#contains.1.contains.2" }, { "className": "string", "begin": "'", "end": "'" }, { "className": "number", "begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)", "relevance": 0 }, { "className": "variable", "begin": "\\$[A-Za-z0-9_]+" } ] }