HEX
Server: LiteSpeed
System: Linux d8 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User: wbwebdes (3015)
PHP: 8.1.31
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/wbwebdes/domains/files.wb-cloud.nl/public_html/apps/text/js/gcode-BU3QtNC8.chunk.mjs.map
{"version":3,"file":"gcode-BU3QtNC8.chunk.mjs","sources":["../node_modules/highlight.js/lib/languages/gcode.js"],"sourcesContent":["/*\n Language: G-code (ISO 6983)\n Contributors: Adam Joseph Cook <[email protected]>\n Description: G-code syntax highlighter for Fanuc and other common CNC machine tool controls.\n Website: https://www.sis.se/api/document/preview/911952/\n Category: hardware\n */\n\nfunction gcode(hljs) {\n  const regex = hljs.regex;\n  const GCODE_KEYWORDS = {\n    $pattern: /[A-Z]+|%/,\n    keyword: [\n      // conditions\n      'THEN',\n      'ELSE',\n      'ENDIF',\n      'IF',\n\n      // controls\n      'GOTO',\n      'DO',\n      'WHILE',\n      'WH',\n      'END',\n      'CALL',\n\n      // scoping\n      'SUB',\n      'ENDSUB',\n\n      // comparisons\n      'EQ',\n      'NE',\n      'LT',\n      'GT',\n      'LE',\n      'GE',\n      'AND',\n      'OR',\n      'XOR',\n\n      // start/end of program\n      '%'\n    ],\n    built_in: [\n      'ATAN',\n      'ABS',\n      'ACOS',\n      'ASIN',\n      'COS',\n      'EXP',\n      'FIX',\n      'FUP',\n      'ROUND',\n      'LN',\n      'SIN',\n      'SQRT',\n      'TAN',\n      'EXISTS'\n    ]\n  };\n\n\n  // TODO: post v12 lets use look-behind, until then \\b and a callback filter will be used\n  // const LETTER_BOUNDARY_RE = /(?<![A-Z])/;\n  const LETTER_BOUNDARY_RE = /\\b/;\n\n  function LETTER_BOUNDARY_CALLBACK(matchdata, response) {\n    if (matchdata.index === 0) {\n      return;\n    }\n\n    const charBeforeMatch = matchdata.input[matchdata.index - 1];\n    if (charBeforeMatch >= '0' && charBeforeMatch <= '9') {\n      return;\n    }\n\n    if (charBeforeMatch === '_') {\n      return;\n    }\n\n    response.ignoreMatch();\n  }\n\n  const NUMBER_RE = /[+-]?((\\.\\d+)|(\\d+)(\\.\\d*)?)/;\n\n  const GENERAL_MISC_FUNCTION_RE = /[GM]\\s*\\d+(\\.\\d+)?/;\n  const TOOLS_RE = /T\\s*\\d+/;\n  const SUBROUTINE_RE = /O\\s*\\d+/;\n  const SUBROUTINE_NAMED_RE = /O<.+>/;\n  const AXES_RE = /[ABCUVWXYZ]\\s*/;\n  const PARAMETERS_RE = /[FHIJKPQRS]\\s*/;\n\n  const GCODE_CODE = [\n    // comments\n    hljs.COMMENT(/\\(/, /\\)/),\n    hljs.COMMENT(/;/, /$/),\n    hljs.APOS_STRING_MODE,\n    hljs.QUOTE_STRING_MODE,\n    hljs.C_NUMBER_MODE,\n\n    // gcodes\n    {\n      scope: 'title.function',\n      variants: [\n        // G General functions: G0, G5.1, G5.2, …\n        // M Misc functions: M0, M55.6, M199, …\n        { match: regex.concat(LETTER_BOUNDARY_RE, GENERAL_MISC_FUNCTION_RE) },\n        {\n          begin: GENERAL_MISC_FUNCTION_RE,\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        },\n        // T Tools\n        { match: regex.concat(LETTER_BOUNDARY_RE, TOOLS_RE), },\n        {\n          begin: TOOLS_RE,\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        }\n      ]\n    },\n\n    {\n      scope: 'symbol',\n      variants: [\n        // O Subroutine ID: O100, O110, …\n        { match: regex.concat(LETTER_BOUNDARY_RE, SUBROUTINE_RE) },\n        {\n          begin: SUBROUTINE_RE,\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        },\n        // O Subroutine name: O<some>, …\n        { match: regex.concat(LETTER_BOUNDARY_RE, SUBROUTINE_NAMED_RE) },\n        {\n          begin: SUBROUTINE_NAMED_RE,\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        },\n        // Checksum at end of line: *71, *199, …\n        { match: /\\*\\s*\\d+\\s*$/ }\n      ]\n    },\n\n    {\n      scope: 'operator', // N Line number: N1, N2, N1020, …\n      match: /^N\\s*\\d+/\n    },\n\n    {\n      scope: 'variable',\n      match: /-?#\\s*\\d+/\n    },\n\n    {\n      scope: 'property', // Physical axes,\n      variants: [\n        { match: regex.concat(LETTER_BOUNDARY_RE, AXES_RE, NUMBER_RE) },\n        {\n          begin: regex.concat(AXES_RE, NUMBER_RE),\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        },\n      ]\n    },\n\n    {\n      scope: 'params', // Different types of parameters\n      variants: [\n        { match: regex.concat(LETTER_BOUNDARY_RE, PARAMETERS_RE, NUMBER_RE) },\n        {\n          begin: regex.concat(PARAMETERS_RE, NUMBER_RE),\n          'on:begin': LETTER_BOUNDARY_CALLBACK\n        },\n      ]\n    },\n  ];\n\n  return {\n    name: 'G-code (ISO 6983)',\n    aliases: [ 'nc' ],\n    // Some implementations (CNC controls) of G-code are interoperable with uppercase and lowercase letters seamlessly.\n    // However, most prefer all uppercase and uppercase is customary.\n    case_insensitive: true,\n    // TODO: post v12 with the use of look-behind this can be enabled\n    disableAutodetect: true,\n    keywords: GCODE_KEYWORDS,\n    contains: GCODE_CODE\n  };\n}\n\nmodule.exports = gcode;\n"],"names":["gcode","hljs","regex","GCODE_KEYWORDS","LETTER_BOUNDARY_RE","LETTER_BOUNDARY_CALLBACK","matchdata","response","charBeforeMatch","NUMBER_RE","GENERAL_MISC_FUNCTION_RE","TOOLS_RE","SUBROUTINE_RE","SUBROUTINE_NAMED_RE","AXES_RE","PARAMETERS_RE","GCODE_CODE","gcode_1"],"mappings":"uCAQA,SAASA,EAAMC,EAAM,CACnB,MAAMC,EAAQD,EAAK,MACbE,EAAiB,CACrB,SAAU,WACV,QAAS,CAEP,OACA,OACA,QACA,KAGA,OACA,KACA,QACA,KACA,MACA,OAGA,MACA,SAGA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,KACA,MAGA,GACD,EACD,SAAU,CACR,OACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,QACA,KACA,MACA,OACA,MACA,QACN,CACG,EAKKC,EAAqB,KAE3B,SAASC,EAAyBC,EAAWC,EAAU,CACrD,GAAID,EAAU,QAAU,EACtB,OAGF,MAAME,EAAkBF,EAAU,MAAMA,EAAU,MAAQ,CAAC,EACvDE,GAAmB,KAAOA,GAAmB,KAI7CA,IAAoB,KAIxBD,EAAS,YAAa,CAC1B,CAEE,MAAME,EAAY,+BAEZC,EAA2B,qBAC3BC,EAAW,UACXC,EAAgB,UAChBC,EAAsB,QACtBC,EAAU,iBACVC,EAAgB,iBAEhBC,EAAa,CAEjBf,EAAK,QAAQ,KAAM,IAAI,EACvBA,EAAK,QAAQ,IAAK,GAAG,EACrBA,EAAK,iBACLA,EAAK,kBACLA,EAAK,cAGL,CACE,MAAO,iBACP,SAAU,CAGR,CAAE,MAAOC,EAAM,OAAOE,EAAoBM,CAAwB,CAAG,EACrE,CACE,MAAOA,EACP,WAAYL,CACb,EAED,CAAE,MAAOH,EAAM,OAAOE,EAAoBO,CAAQ,CAAI,EACtD,CACE,MAAOA,EACP,WAAYN,CACtB,CACA,CACK,EAED,CACE,MAAO,SACP,SAAU,CAER,CAAE,MAAOH,EAAM,OAAOE,EAAoBQ,CAAa,CAAG,EAC1D,CACE,MAAOA,EACP,WAAYP,CACb,EAED,CAAE,MAAOH,EAAM,OAAOE,EAAoBS,CAAmB,CAAG,EAChE,CACE,MAAOA,EACP,WAAYR,CACb,EAED,CAAE,MAAO,cAAc,CAC/B,CACK,EAED,CACE,MAAO,WACP,MAAO,UACR,EAED,CACE,MAAO,WACP,MAAO,WACR,EAED,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOH,EAAM,OAAOE,EAAoBU,EAASL,CAAS,CAAG,EAC/D,CACE,MAAOP,EAAM,OAAOY,EAASL,CAAS,EACtC,WAAYJ,CACb,CACT,CACK,EAED,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAOH,EAAM,OAAOE,EAAoBW,EAAeN,CAAS,CAAG,EACrE,CACE,MAAOP,EAAM,OAAOa,EAAeN,CAAS,EAC5C,WAAYJ,CACb,CACT,CACK,CACF,EAED,MAAO,CACL,KAAM,oBACN,QAAS,CAAE,IAAM,EAGjB,iBAAkB,GAElB,kBAAmB,GACnB,SAAUF,EACV,SAAUa,CACX,CACH,CAEA,OAAAC,EAAiBjB","x_google_ignoreList":[0]}