From 457557dee81955183b4fde2176c68fb1da353125 Mon Sep 17 00:00:00 2001 From: cnc Date: Wed, 3 Jun 2026 15:13:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=82=E8=80=83=E6=89=80=E6=9C=89=E5=88=86?= =?UTF-8?q?=E7=BB=84=EF=BC=8C=E5=AE=8C=E6=88=90=E5=B0=BD=E9=87=8F=E5=A4=9A?= =?UTF-8?q?=E7=9A=84=E5=86=85=E5=AE=B9=E3=80=82=E7=A6=81=E6=AD=A2=E9=A1=BA?= =?UTF-8?q?=E6=89=8B=E6=89=A9=E5=8A=9F=E8=83=BD=20smoke?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 结论:按 LinuxCNC source policy 将 TOOL_TABLE 恢复为 source coverage only,撤回生成 API/browser switchkins cases,并增加 checker/native 守护;表校验、native、source-link 均通过。 --- check-linuxcnc-switchkins-remap-table.sh | 154 +++++++++++++++++- core/src/cnc_sim_api.cpp | 2 - core/src/linuxcnc_switchkins_remap_table.inc | 23 +-- ...linuxcnc_switchkins_remap_config_cases.inc | 130 +-------------- generate-linuxcnc-switchkins-remap-table.sh | 64 +------- test-native.sh | 24 +-- ...inuxcnc_switchkins_remap_config_cases.json | 128 --------------- web/src/index.ts | 4 - web/src/wasm-core.js | 4 - 9 files changed, 163 insertions(+), 370 deletions(-) diff --git a/check-linuxcnc-switchkins-remap-table.sh b/check-linuxcnc-switchkins-remap-table.sh index ff2d784..ff96ef6 100755 --- a/check-linuxcnc-switchkins-remap-table.sh +++ b/check-linuxcnc-switchkins-remap-table.sh @@ -2556,6 +2556,144 @@ JS fi } +validate_tool_table_source_coverage_only() { + local table_file=$1 + local cpp_file=$2 + local json_file=$3 + local api_file=$4 + local wasm_core_file=$5 + local types_file=$6 + local label=$7 + if command -v python3 >/dev/null 2>&1; then + if ! python3 - "$table_file" "$cpp_file" "$json_file" "$api_file" "$wasm_core_file" "$types_file" "$label" <<'PY' +import json +import re +import sys + +table_file, cpp_file, json_file, api_file, wasm_core_file, types_file, label = sys.argv[1:] +table_row_re = re.compile( + r'^\s*\{("(?:(?:\\.)|[^"\\])*"),\s*' + r'(-?\d+),\s*(-?\d+),\s*(-?\d+)\},?\s*$' +) +case_row_re = re.compile( + r'^\s*\{("(?:(?:\\.)|[^"\\])*"),\s*' + r'("(?:(?:\\.)|[^"\\])*"),\s*' + r'(-?\d+),\s*(-?\d+),\s*(-?\d+)\},?\s*$' +) + +bad_aliases = [] +with open(table_file, encoding="utf-8") as handle: + for line_number, line in enumerate(handle, 1): + match = table_row_re.match(line) + if match: + alias = json.loads(match.group(1)).lower() + if alias.endswith(".tbl") or "/tool" in alias or "tool_table" in alias or "tooltable" in alias: + bad_aliases.append((line_number, alias)) + +bad_cases = [] +with open(cpp_file, encoding="utf-8") as handle: + for line_number, line in enumerate(handle, 1): + match = case_row_re.match(line) + if match: + field = json.loads(match.group(1)).lower() + value = json.loads(match.group(2)).lower() + if "tool" in field or value.endswith(".tbl"): + bad_cases.append((line_number, field, value)) + +with open(json_file, encoding="utf-8") as handle: + for index, entry in enumerate(json.load(handle)): + field = entry["field"].lower() + value = entry["value"].lower() + if "tool" in field or value.endswith(".tbl"): + bad_cases.append((index, field, value)) + +with open(api_file, encoding="utf-8") as handle: + api_text = handle.read() +with open(wasm_core_file, encoding="utf-8") as handle: + wasm_text = handle.read() +with open(types_file, encoding="utf-8") as handle: + types_text = handle.read() + +bad_bridge_tokens = [] +for token, text in { + "api": api_text, + "wasm": wasm_text, + "types": types_text, +}.items(): + if re.search(r'\btoolTable\b|\btooltable\b|\btool_table\b|\bTOOL_TABLE\b', text): + bad_bridge_tokens.append(token) + +if bad_aliases: + raise SystemExit(f"{label} generated TOOL_TABLE alias(es), but TOOL_TABLE is source coverage only: {bad_aliases}") +if bad_cases: + raise SystemExit(f"{label} generated TOOL_TABLE case(s), but TOOL_TABLE is source coverage only: {bad_cases}") +if bad_bridge_tokens: + raise SystemExit(f"{label} exposes TOOL_TABLE through switchkins API/web bridge: {bad_bridge_tokens}") +PY + then + exit 1 + fi + elif command -v node >/dev/null 2>&1; then + if ! node - "$table_file" "$cpp_file" "$json_file" "$api_file" "$wasm_core_file" "$types_file" "$label" <<'JS' +const fs = require("fs"); +const [tableFile, cppFile, jsonFile, apiFile, wasmCoreFile, typesFile, label] = process.argv.slice(2); +const tableRowRe = /^\s*\{("(?:(?:\\.)|[^"\\])*"),\s*(-?\d+),\s*(-?\d+),\s*(-?\d+)\},?\s*$/; +const caseRowRe = /^\s*\{("(?:(?:\\.)|[^"\\])*"),\s*("(?:(?:\\.)|[^"\\])*"),\s*(-?\d+),\s*(-?\d+),\s*(-?\d+)\},?\s*$/; +const badAliases = []; +fs.readFileSync(tableFile, "utf8").split(/\r?\n/).forEach((line, index) => { + const match = tableRowRe.exec(line); + if (!match) { + return; + } + const alias = JSON.parse(match[1]).toLowerCase(); + if (alias.endsWith(".tbl") || alias.includes("/tool") || alias.includes("tool_table") || alias.includes("tooltable")) { + badAliases.push([index + 1, alias]); + } +}); +const badCases = []; +fs.readFileSync(cppFile, "utf8").split(/\r?\n/).forEach((line, index) => { + const match = caseRowRe.exec(line); + if (!match) { + return; + } + const field = JSON.parse(match[1]).toLowerCase(); + const value = JSON.parse(match[2]).toLowerCase(); + if (field.includes("tool") || value.endsWith(".tbl")) { + badCases.push([index + 1, field, value]); + } +}); +JSON.parse(fs.readFileSync(jsonFile, "utf8")).forEach((entry, index) => { + const field = entry.field.toLowerCase(); + const value = entry.value.toLowerCase(); + if (field.includes("tool") || value.endsWith(".tbl")) { + badCases.push([index, field, value]); + } +}); +const bridgeTokenRe = /\btoolTable\b|\btooltable\b|\btool_table\b|\bTOOL_TABLE\b/; +const badBridgeTokens = [ + ["api", fs.readFileSync(apiFile, "utf8")], + ["wasm", fs.readFileSync(wasmCoreFile, "utf8")], + ["types", fs.readFileSync(typesFile, "utf8")], +].filter(([_name, text]) => bridgeTokenRe.test(text)).map(([name]) => name); +if (badAliases.length > 0) { + throw new Error(`${label} generated TOOL_TABLE alias(es), but TOOL_TABLE is source coverage only: ${JSON.stringify(badAliases)}`); +} +if (badCases.length > 0) { + throw new Error(`${label} generated TOOL_TABLE case(s), but TOOL_TABLE is source coverage only: ${JSON.stringify(badCases)}`); +} +if (badBridgeTokens.length > 0) { + throw new Error(`${label} exposes TOOL_TABLE through switchkins API/web bridge: ${badBridgeTokens.join(",")}`); +} +JS + then + exit 1 + fi + else + echo "missing python3 or node for switchkins TOOL_TABLE source-only validation" >&2 + exit 1 + fi +} + for generated_file in \ linuxcnc_switchkins_remap_table.inc \ linuxcnc_switchkins_remap_config_cases.inc \ @@ -2576,6 +2714,14 @@ validate_web_switchkins_case_fields \ web/src/wasm-core.js \ web/src/index.ts \ "generated" +validate_tool_table_source_coverage_only \ + "$generated_dir/linuxcnc_switchkins_remap_table.inc" \ + "$generated_dir/linuxcnc_switchkins_remap_config_cases.inc" \ + "$generated_dir/linuxcnc_switchkins_remap_config_cases.json" \ + core/src/cnc_sim_api.cpp \ + web/src/wasm-core.js \ + web/src/index.ts \ + "generated" validate_generated_header \ "$generated_dir/linuxcnc_switchkins_remap_table.inc" \ @@ -2596,22 +2742,22 @@ validate_generated_header \ validate_generated_source_notes \ "$generated_dir/linuxcnc_switchkins_remap_table.inc" \ "table" \ - "// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/TOOL_TABLE/SUBROUTINE_PATH/REMAP entries and" \ + "// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/SUBROUTINE_PATH/REMAP entries and" \ "// adjacent remap_subs/{428,429,430}remap.ngc # assignments." validate_generated_source_notes \ core/src/linuxcnc_switchkins_remap_table.inc \ "tracked table" \ - "// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/TOOL_TABLE/SUBROUTINE_PATH/REMAP entries and" \ + "// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/SUBROUTINE_PATH/REMAP entries and" \ "// adjacent remap_subs/{428,429,430}remap.ngc # assignments." validate_generated_source_notes \ "$generated_dir/linuxcnc_switchkins_remap_config_cases.inc" \ "config cases" \ - "// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, TOOL_TABLE," \ + "// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE," \ "// SUBROUTINE_PATH-resolved remap_subs entries, and adjacent M428/M429/M430 # assignments." validate_generated_source_notes \ core/tests/linuxcnc_switchkins_remap_config_cases.inc \ "tracked config cases" \ - "// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, TOOL_TABLE," \ + "// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE," \ "// SUBROUTINE_PATH-resolved remap_subs entries, and adjacent M428/M429/M430 # assignments." validate_json "$generated_dir/linuxcnc_switchkins_remap_config_cases.json" "generated linuxcnc_switchkins_remap_config_cases.json" diff --git a/core/src/cnc_sim_api.cpp b/core/src/cnc_sim_api.cpp index 30d8043..afbfdc0 100644 --- a/core/src/cnc_sim_api.cpp +++ b/core/src/cnc_sim_api.cpp @@ -175,8 +175,6 @@ bool contains_switchkins_config_alias(const std::string &compact, const char *al contains_string_value(compact, "postgui_hal_file", alias) || contains_string_value(compact, "subroutinepath", alias) || contains_string_value(compact, "subroutine_path", alias) || - contains_string_value(compact, "tooltable", alias) || - contains_string_value(compact, "tool_table", alias) || contains_string_value(compact, "config", alias) || contains_string_value(compact, "configpath", alias) || contains_string_value(compact, "config_path", alias) || diff --git a/core/src/linuxcnc_switchkins_remap_table.inc b/core/src/linuxcnc_switchkins_remap_table.inc index 88f8f9f..e4e1c46 100644 --- a/core/src/linuxcnc_switchkins_remap_table.inc +++ b/core/src/linuxcnc_switchkins_remap_table.inc @@ -1,5 +1,5 @@ // Generated by ./generate-linuxcnc-switchkins-remap-table.sh. -// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/TOOL_TABLE/SUBROUTINE_PATH/REMAP entries and +// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/SUBROUTINE_PATH/REMAP entries and // adjacent remap_subs/{428,429,430}remap.ngc # assignments. {"configs/sim/axis/vismach/5axis/bridgemill/5axis.ini", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/bridgemill", 0, 1, 2}, @@ -15,8 +15,6 @@ {"configs/sim/axis/vismach/5axis/bridgemill/5axis_postgui.hal", 0, 1, 2}, {"5axis_postgui.hal", 0, 1, 2}, {"5axis_postgui", 0, 1, 2}, - {"configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl", 0, 1, 2}, - {"5axis.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/bridgemill/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/bridgemill/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/bridgemill/remap_subs/429remap.ngc", 0, 1, 2}, @@ -33,8 +31,6 @@ {"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr-postgui.hal", 1, 0, -1}, {"xyzab-tdr-postgui.hal", 1, 0, -1}, {"xyzab-tdr-postgui", 1, 0, -1}, - {"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl", 1, 0, -1}, - {"xyzab-tdr.tbl", 1, 0, -1}, {"configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs/428remap.ngc", 1, 0, -1}, {"configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs", 1, 0, -1}, {"configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs/429remap.ngc", 1, 0, -1}, @@ -49,8 +45,6 @@ {"configs/sim/axis/vismach/5axis/table-rotary-tilting/switchkins_postgui.hal", 1, 0, 2}, {"switchkins_postgui.hal", 1, 0, 2}, {"switchkins_postgui", 1, 0, 2}, - {"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl", 1, 0, 2}, - {"xyzac-trt.tbl", 1, 0, 2}, {"configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc", 1, 0, 2}, {"configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs", 1, 0, 2}, {"configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/429remap.ngc", 1, 0, 2}, @@ -61,8 +55,6 @@ {"sim-xyzbc-trt-kins", 1, 0, 2}, {"xyzbc-trt-kinssparm=identityfirst", 1, 0, 2}, {"xyzbc-trt-kins", 1, 0, 2}, - {"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl", 1, 0, 2}, - {"xyzbc-trt.tbl", 1, 0, 2}, {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp", 0, 1, 2}, {"xyzacb-trsrn_twp", 0, 1, 2}, @@ -72,8 +64,6 @@ {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn_postgui.hal", 0, 1, 2}, {"xyzacb-trsrn_postgui.hal", 0, 1, 2}, {"xyzacb-trsrn_postgui", 0, 1, 2}, - {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl", 0, 1, 2}, - {"xyzacb-trsrn.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating", 0, 1, 2}, @@ -89,8 +79,6 @@ {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn_postgui.hal", 0, 1, 2}, {"xyzbca-trsrn_postgui.hal", 0, 1, 2}, {"xyzbca-trsrn_postgui", 0, 1, 2}, - {"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl", 0, 1, 2}, - {"xyzbca-trsrn.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/hexapod-sim/hexapod.ini", 0, 1, 2}, {"configs/sim/axis/vismach/hexapod-sim", 0, 1, 2}, {"hexapod-sim", 0, 1, 2}, @@ -103,7 +91,6 @@ {"configs/sim/axis/vismach/hexapod-sim/hexapod_postgui.hal", 0, 1, 2}, {"hexapod_postgui.hal", 0, 1, 2}, {"hexapod_postgui", 0, 1, 2}, - {"hexapod.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/hexapod-sim/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/hexapod-sim/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/hexapod-sim/remap_subs/429remap.ngc", 0, 1, 2}, @@ -120,8 +107,6 @@ {"configs/sim/axis/vismach/melfa-sim/melfa-postgui.hal", 0, 1, 2}, {"melfa-postgui.hal", 0, 1, 2}, {"melfa-postgui", 0, 1, 2}, - {"configs/sim/axis/vismach/melfa-sim/melfa.tbl", 0, 1, 2}, - {"melfa.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/melfa-sim/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/melfa-sim/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/melfa-sim/remap_subs/429remap.ngc", 0, 1, 2}, @@ -135,8 +120,6 @@ {"configs/sim/axis/vismach/millturn/millturn-postgui.hal", 0, 1, -1}, {"millturn-postgui.hal", 0, 1, -1}, {"millturn-postgui", 0, 1, -1}, - {"configs/sim/axis/vismach/millturn/millturn.tbl", 0, 1, -1}, - {"millturn.tbl", 0, 1, -1}, {"configs/sim/axis/vismach/millturn/remap_subs/428remap.ngc", 0, 1, -1}, {"configs/sim/axis/vismach/millturn/remap_subs", 0, 1, -1}, {"configs/sim/axis/vismach/millturn/remap_subs/429remap.ngc", 0, 1, -1}, @@ -151,8 +134,6 @@ {"configs/sim/axis/vismach/puma/puma_postgui.hal", 0, 1, 2}, {"puma_postgui.hal", 0, 1, 2}, {"puma_postgui", 0, 1, 2}, - {"configs/sim/axis/vismach/puma/puma.tbl", 0, 1, 2}, - {"puma.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/puma/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/puma/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/puma/remap_subs/429remap.ngc", 0, 1, 2}, @@ -181,14 +162,12 @@ {"configs/sim/axis/vismach/scara/scara_postgui.hal", 0, 1, 2}, {"scara_postgui.hal", 0, 1, 2}, {"scara_postgui", 0, 1, 2}, - {"scara.tbl", 0, 1, 2}, {"configs/sim/axis/vismach/scara/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/scara/remap_subs", 0, 1, 2}, {"configs/sim/axis/vismach/scara/remap_subs/429remap.ngc", 0, 1, 2}, {"configs/sim/axis/vismach/scara/remap_subs/430remap.ngc", 0, 1, 2}, {"configs/sim/qtaxis/non-trivial/scara/scara.ini", 0, 1, 2}, {"configs/sim/qtaxis/non-trivial/scara", 0, 1, 2}, - {"configs/sim/qtaxis/non-trivial/scara/scara.tbl", 0, 1, 2}, {"configs/sim/qtaxis/non-trivial/scara/remap_subs/428remap.ngc", 0, 1, 2}, {"configs/sim/qtaxis/non-trivial/scara/remap_subs", 0, 1, 2}, {"configs/sim/qtaxis/non-trivial/scara/remap_subs/429remap.ngc", 0, 1, 2}, diff --git a/core/tests/linuxcnc_switchkins_remap_config_cases.inc b/core/tests/linuxcnc_switchkins_remap_config_cases.inc index 1f977bc..9ec874f 100644 --- a/core/tests/linuxcnc_switchkins_remap_config_cases.inc +++ b/core/tests/linuxcnc_switchkins_remap_config_cases.inc @@ -1,5 +1,5 @@ // Generated by ./generate-linuxcnc-switchkins-remap-table.sh --config-cases. -// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, TOOL_TABLE, +// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, // SUBROUTINE_PATH-resolved remap_subs entries, and adjacent M428/M429/M430 # assignments. {"config", "configs/sim/axis/vismach/5axis/bridgemill/5axis.ini", 0, 1, 2}, {"configPath", "configs/sim/axis/vismach/5axis/bridgemill/5axis.ini", 0, 1, 2}, @@ -48,18 +48,6 @@ {"postgui_hal_file", "5axis_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "5axis_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "5axis_postgui", 0, 1, 2}, - {"toolTable", "configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl", 0, 1, 2}, - {"toolTable", "5axis.tbl", 0, 1, 2}, - {"toolTable", "5axis", 0, 1, 2}, - {"tooltable", "5axis.tbl", 0, 1, 2}, - {"tooltable", "5axis", 0, 1, 2}, - {"tool_table", "5axis.tbl", 0, 1, 2}, - {"tool_table", "5axis", 0, 1, 2}, - {"TOOL_TABLE", "5axis.tbl", 0, 1, 2}, - {"TOOL_TABLE", "5axis", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/bridgemill/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/bridgemill/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/bridgemill", 0, 1, 2}, @@ -106,18 +94,6 @@ {"postgui_hal_file", "xyzab-tdr-postgui", 1, 0, -1}, {"POSTGUI_HALFILE", "xyzab-tdr-postgui.hal", 1, 0, -1}, {"POSTGUI_HALFILE", "xyzab-tdr-postgui", 1, 0, -1}, - {"toolTable", "configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl", 1, 0, -1}, - {"tooltable", "configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl", 1, 0, -1}, - {"tool_table", "configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl", 1, 0, -1}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl", 1, 0, -1}, - {"toolTable", "xyzab-tdr.tbl", 1, 0, -1}, - {"toolTable", "xyzab-tdr", 1, 0, -1}, - {"tooltable", "xyzab-tdr.tbl", 1, 0, -1}, - {"tooltable", "xyzab-tdr", 1, 0, -1}, - {"tool_table", "xyzab-tdr.tbl", 1, 0, -1}, - {"tool_table", "xyzab-tdr", 1, 0, -1}, - {"TOOL_TABLE", "xyzab-tdr.tbl", 1, 0, -1}, - {"TOOL_TABLE", "xyzab-tdr", 1, 0, -1}, {"remap", "configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs/428remap.ngc", 1, 0, -1}, {"remap", "configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs", 1, 0, -1}, {"remap", "configs/sim/axis/vismach/5axis/table-dual-rotary", 1, 0, -1}, @@ -162,18 +138,6 @@ {"postgui_hal_file", "switchkins_postgui", 1, 0, 2}, {"POSTGUI_HALFILE", "switchkins_postgui.hal", 1, 0, 2}, {"POSTGUI_HALFILE", "switchkins_postgui", 1, 0, 2}, - {"toolTable", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl", 1, 0, 2}, - {"tooltable", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl", 1, 0, 2}, - {"tool_table", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl", 1, 0, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl", 1, 0, 2}, - {"toolTable", "xyzac-trt.tbl", 1, 0, 2}, - {"toolTable", "xyzac-trt", 1, 0, 2}, - {"tooltable", "xyzac-trt.tbl", 1, 0, 2}, - {"tooltable", "xyzac-trt", 1, 0, 2}, - {"tool_table", "xyzac-trt.tbl", 1, 0, 2}, - {"tool_table", "xyzac-trt", 1, 0, 2}, - {"TOOL_TABLE", "xyzac-trt.tbl", 1, 0, 2}, - {"TOOL_TABLE", "xyzac-trt", 1, 0, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc", 1, 0, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs", 1, 0, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary-tilting", 1, 0, 2}, @@ -203,18 +167,6 @@ {"switchkins", "sim-xyzbc-trt-kins", 1, 0, 2}, {"switchkins", "xyzbc-trt-kins sparm=identityfirst", 1, 0, 2}, {"switchkins", "xyzbc-trt-kins", 1, 0, 2}, - {"toolTable", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl", 1, 0, 2}, - {"tooltable", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl", 1, 0, 2}, - {"tool_table", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl", 1, 0, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl", 1, 0, 2}, - {"toolTable", "xyzbc-trt.tbl", 1, 0, 2}, - {"toolTable", "xyzbc-trt", 1, 0, 2}, - {"tooltable", "xyzbc-trt.tbl", 1, 0, 2}, - {"tooltable", "xyzbc-trt", 1, 0, 2}, - {"tool_table", "xyzbc-trt.tbl", 1, 0, 2}, - {"tool_table", "xyzbc-trt", 1, 0, 2}, - {"TOOL_TABLE", "xyzbc-trt.tbl", 1, 0, 2}, - {"TOOL_TABLE", "xyzbc-trt", 1, 0, 2}, {"config", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini", 0, 1, 2}, {"configPath", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini", 0, 1, 2}, {"configpath", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini", 0, 1, 2}, @@ -248,18 +200,6 @@ {"postgui_hal_file", "xyzacb-trsrn_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "xyzacb-trsrn_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "xyzacb-trsrn_postgui", 0, 1, 2}, - {"toolTable", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl", 0, 1, 2}, - {"toolTable", "xyzacb-trsrn.tbl", 0, 1, 2}, - {"toolTable", "xyzacb-trsrn", 0, 1, 2}, - {"tooltable", "xyzacb-trsrn.tbl", 0, 1, 2}, - {"tooltable", "xyzacb-trsrn", 0, 1, 2}, - {"tool_table", "xyzacb-trsrn.tbl", 0, 1, 2}, - {"tool_table", "xyzacb-trsrn", 0, 1, 2}, - {"TOOL_TABLE", "xyzacb-trsrn.tbl", 0, 1, 2}, - {"TOOL_TABLE", "xyzacb-trsrn", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating", 0, 1, 2}, @@ -303,18 +243,6 @@ {"postgui_hal_file", "xyzbca-trsrn_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "xyzbca-trsrn_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "xyzbca-trsrn_postgui", 0, 1, 2}, - {"toolTable", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl", 0, 1, 2}, - {"toolTable", "xyzbca-trsrn.tbl", 0, 1, 2}, - {"toolTable", "xyzbca-trsrn", 0, 1, 2}, - {"tooltable", "xyzbca-trsrn.tbl", 0, 1, 2}, - {"tooltable", "xyzbca-trsrn", 0, 1, 2}, - {"tool_table", "xyzbca-trsrn.tbl", 0, 1, 2}, - {"tool_table", "xyzbca-trsrn", 0, 1, 2}, - {"TOOL_TABLE", "xyzbca-trsrn.tbl", 0, 1, 2}, - {"TOOL_TABLE", "xyzbca-trsrn", 0, 1, 2}, {"config", "configs/sim/axis/vismach/hexapod-sim/hexapod.ini", 0, 1, 2}, {"configPath", "configs/sim/axis/vismach/hexapod-sim/hexapod.ini", 0, 1, 2}, {"configpath", "configs/sim/axis/vismach/hexapod-sim/hexapod.ini", 0, 1, 2}, @@ -360,14 +288,6 @@ {"postgui_hal_file", "hexapod_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "hexapod_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "hexapod_postgui", 0, 1, 2}, - {"toolTable", "hexapod.tbl", 0, 1, 2}, - {"toolTable", "hexapod", 0, 1, 2}, - {"tooltable", "hexapod.tbl", 0, 1, 2}, - {"tooltable", "hexapod", 0, 1, 2}, - {"tool_table", "hexapod.tbl", 0, 1, 2}, - {"tool_table", "hexapod", 0, 1, 2}, - {"TOOL_TABLE", "hexapod.tbl", 0, 1, 2}, - {"TOOL_TABLE", "hexapod", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/hexapod-sim/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/hexapod-sim/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/hexapod-sim", 0, 1, 2}, @@ -423,18 +343,6 @@ {"postgui_hal_file", "melfa-postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "melfa-postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "melfa-postgui", 0, 1, 2}, - {"toolTable", "configs/sim/axis/vismach/melfa-sim/melfa.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/axis/vismach/melfa-sim/melfa.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/axis/vismach/melfa-sim/melfa.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/melfa-sim/melfa.tbl", 0, 1, 2}, - {"toolTable", "melfa.tbl", 0, 1, 2}, - {"toolTable", "melfa", 0, 1, 2}, - {"tooltable", "melfa.tbl", 0, 1, 2}, - {"tooltable", "melfa", 0, 1, 2}, - {"tool_table", "melfa.tbl", 0, 1, 2}, - {"tool_table", "melfa", 0, 1, 2}, - {"TOOL_TABLE", "melfa.tbl", 0, 1, 2}, - {"TOOL_TABLE", "melfa", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/melfa-sim/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/melfa-sim/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/melfa-sim", 0, 1, 2}, @@ -488,18 +396,6 @@ {"postgui_hal_file", "millturn-postgui", 0, 1, -1}, {"POSTGUI_HALFILE", "millturn-postgui.hal", 0, 1, -1}, {"POSTGUI_HALFILE", "millturn-postgui", 0, 1, -1}, - {"toolTable", "configs/sim/axis/vismach/millturn/millturn.tbl", 0, 1, -1}, - {"tooltable", "configs/sim/axis/vismach/millturn/millturn.tbl", 0, 1, -1}, - {"tool_table", "configs/sim/axis/vismach/millturn/millturn.tbl", 0, 1, -1}, - {"TOOL_TABLE", "configs/sim/axis/vismach/millturn/millturn.tbl", 0, 1, -1}, - {"toolTable", "millturn.tbl", 0, 1, -1}, - {"toolTable", "millturn", 0, 1, -1}, - {"tooltable", "millturn.tbl", 0, 1, -1}, - {"tooltable", "millturn", 0, 1, -1}, - {"tool_table", "millturn.tbl", 0, 1, -1}, - {"tool_table", "millturn", 0, 1, -1}, - {"TOOL_TABLE", "millturn.tbl", 0, 1, -1}, - {"TOOL_TABLE", "millturn", 0, 1, -1}, {"remap", "configs/sim/axis/vismach/millturn/remap_subs/428remap.ngc", 0, 1, -1}, {"remap", "configs/sim/axis/vismach/millturn/remap_subs", 0, 1, -1}, {"remap", "configs/sim/axis/vismach/millturn", 0, 1, -1}, @@ -554,18 +450,6 @@ {"postgui_hal_file", "puma_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "puma_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "puma_postgui", 0, 1, 2}, - {"toolTable", "configs/sim/axis/vismach/puma/puma.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/axis/vismach/puma/puma.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/axis/vismach/puma/puma.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/axis/vismach/puma/puma.tbl", 0, 1, 2}, - {"toolTable", "puma.tbl", 0, 1, 2}, - {"toolTable", "puma", 0, 1, 2}, - {"tooltable", "puma.tbl", 0, 1, 2}, - {"tooltable", "puma", 0, 1, 2}, - {"tool_table", "puma.tbl", 0, 1, 2}, - {"tool_table", "puma", 0, 1, 2}, - {"TOOL_TABLE", "puma.tbl", 0, 1, 2}, - {"TOOL_TABLE", "puma", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/puma/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/puma/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/puma", 0, 1, 2}, @@ -681,14 +565,6 @@ {"postgui_hal_file", "scara_postgui", 0, 1, 2}, {"POSTGUI_HALFILE", "scara_postgui.hal", 0, 1, 2}, {"POSTGUI_HALFILE", "scara_postgui", 0, 1, 2}, - {"toolTable", "scara.tbl", 0, 1, 2}, - {"toolTable", "scara", 0, 1, 2}, - {"tooltable", "scara.tbl", 0, 1, 2}, - {"tooltable", "scara", 0, 1, 2}, - {"tool_table", "scara.tbl", 0, 1, 2}, - {"tool_table", "scara", 0, 1, 2}, - {"TOOL_TABLE", "scara.tbl", 0, 1, 2}, - {"TOOL_TABLE", "scara", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/scara/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/scara/remap_subs", 0, 1, 2}, {"remap", "configs/sim/axis/vismach/scara", 0, 1, 2}, @@ -711,10 +587,6 @@ {"ini_file", "configs/sim/qtaxis/non-trivial/scara/scara.ini", 0, 1, 2}, {"ini_file_name", "configs/sim/qtaxis/non-trivial/scara/scara.ini", 0, 1, 2}, {"INI_FILE_NAME", "configs/sim/qtaxis/non-trivial/scara/scara.ini", 0, 1, 2}, - {"toolTable", "configs/sim/qtaxis/non-trivial/scara/scara.tbl", 0, 1, 2}, - {"tooltable", "configs/sim/qtaxis/non-trivial/scara/scara.tbl", 0, 1, 2}, - {"tool_table", "configs/sim/qtaxis/non-trivial/scara/scara.tbl", 0, 1, 2}, - {"TOOL_TABLE", "configs/sim/qtaxis/non-trivial/scara/scara.tbl", 0, 1, 2}, {"remap", "configs/sim/qtaxis/non-trivial/scara/remap_subs/428remap.ngc", 0, 1, 2}, {"remap", "configs/sim/qtaxis/non-trivial/scara/remap_subs", 0, 1, 2}, {"remap", "configs/sim/qtaxis/non-trivial/scara", 0, 1, 2}, diff --git a/generate-linuxcnc-switchkins-remap-table.sh b/generate-linuxcnc-switchkins-remap-table.sh index 32abd6e..4c5984d 100755 --- a/generate-linuxcnc-switchkins-remap-table.sh +++ b/generate-linuxcnc-switchkins-remap-table.sh @@ -649,59 +649,6 @@ add_subroutine_path_cases() { add_case "SUBROUTINE_PATH" "$subroutine_path" "$m428" "$m429" "$m430" } -add_tool_table_case_fields() { - local field=$1 - local tool_table=$2 - local m428=$3 - local m429=$4 - local m430=$5 - - local tool_base=${tool_table##*/} - local tool_stem=${tool_base%.tbl} - add_case "$field" "$tool_table" "$m428" "$m429" "$m430" - add_case "$field" "$tool_base" "$m428" "$m429" "$m430" - add_case "$field" "$tool_stem" "$m428" "$m429" "$m430" -} - -add_tool_table_cases() { - local tool_table=$1 - local m428=$2 - local m429=$3 - local m430=$4 - [[ -n "$tool_table" ]] || return 0 - - add_tool_table_case_fields "toolTable" "$tool_table" "$m428" "$m429" "$m430" - add_tool_table_case_fields "tooltable" "$tool_table" "$m428" "$m429" "$m430" - add_tool_table_case_fields "tool_table" "$tool_table" "$m428" "$m429" "$m430" - add_tool_table_case_fields "TOOL_TABLE" "$tool_table" "$m428" "$m429" "$m430" -} - -add_tool_table_source_cases() { - local source=$1 - local m428=$2 - local m429=$3 - local m430=$4 - [[ -n "$source" ]] || return 0 - - add_case "toolTable" "$source" "$m428" "$m429" "$m430" - add_case "tooltable" "$source" "$m428" "$m429" "$m430" - add_case "tool_table" "$source" "$m428" "$m429" "$m430" - add_case "TOOL_TABLE" "$source" "$m428" "$m429" "$m430" -} - -add_tool_table_aliases() { - local tool_table=$1 - local m428=$2 - local m429=$3 - local m430=$4 - [[ -n "$tool_table" ]] || return 0 - - add_alias "$tool_table" "$m428" "$m429" "$m430" - local tool_base=${tool_table##*/} - add_alias "$tool_base" "$m428" "$m429" "$m430" - add_alias "${tool_base%.tbl}" "$m428" "$m429" "$m430" -} - while IFS=: read -r group path _note; do [[ "$group" == "config" && "$path" == *.ini ]] || continue @@ -849,13 +796,8 @@ while IFS=: read -r group path _note; do done <<<"$postgui_halfiles" while IFS= read -r tool_table; do if tooldata_source_for_tool_table "$config" "$tool_table"; then - tool_source=$resolved_tooldata_source - record_tooldata_source "$path" "$tool_source" - add_alias "$tool_source" "$m428" "$m429" "$m430" - add_tool_table_source_cases "$tool_source" "$m428" "$m429" "$m430" + record_tooldata_source "$path" "$resolved_tooldata_source" fi - add_tool_table_cases "$tool_table" "$m428" "$m429" "$m430" - add_tool_table_aliases "$tool_table" "$m428" "$m429" "$m430" done <<<"$tool_tables" for remap_source in "$remap_source_428" "$remap_source_429" "$remap_source_430"; do @@ -958,7 +900,7 @@ validate_generated_content write_table() { cat <<'EOF' // Generated by ./generate-linuxcnc-switchkins-remap-table.sh. -// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/TOOL_TABLE/SUBROUTINE_PATH/REMAP entries and +// Source: LinuxCNC INI MACHINE/KINEMATICS/HALFILE/POSTGUI_HALFILE/SUBROUTINE_PATH/REMAP entries and // adjacent remap_subs/{428,429,430}remap.ngc # assignments. EOF @@ -968,7 +910,7 @@ EOF write_config_cases() { cat <<'EOF' // Generated by ./generate-linuxcnc-switchkins-remap-table.sh --config-cases. -// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, TOOL_TABLE, +// Source: LinuxCNC INI config path, MACHINE, KINEMATICS, non-LIB HALFILE/POSTGUI_HALFILE, // SUBROUTINE_PATH-resolved remap_subs entries, and adjacent M428/M429/M430 # assignments. EOF diff --git a/test-native.sh b/test-native.sh index 22fc496..960b45c 100755 --- a/test-native.sh +++ b/test-native.sh @@ -196,10 +196,6 @@ grep -F 'subroutinePath: options.subroutinePath' web/src/wasm-core.js >/dev/null grep -F 'subroutinepath: options.subroutinepath' web/src/wasm-core.js >/dev/null grep -F 'subroutine_path: options.subroutine_path' web/src/wasm-core.js >/dev/null grep -F 'SUBROUTINE_PATH: options.SUBROUTINE_PATH' web/src/wasm-core.js >/dev/null -grep -F 'toolTable: options.toolTable' web/src/wasm-core.js >/dev/null -grep -F 'tooltable: options.tooltable' web/src/wasm-core.js >/dev/null -grep -F 'tool_table: options.tool_table' web/src/wasm-core.js >/dev/null -grep -F 'TOOL_TABLE: options.TOOL_TABLE' web/src/wasm-core.js >/dev/null grep -F 'kinematics: options.kinematics' web/src/wasm-core.js >/dev/null grep -F 'trt: options.trt' web/src/wasm-core.js >/dev/null grep -F 'pivotLength: options.pivotLength' web/src/wasm-core.js >/dev/null @@ -244,10 +240,6 @@ grep -F 'subroutinePath?: string;' web/src/index.ts >/dev/null grep -F 'subroutinepath?: string;' web/src/index.ts >/dev/null grep -F 'subroutine_path?: string;' web/src/index.ts >/dev/null grep -F 'SUBROUTINE_PATH?: string;' web/src/index.ts >/dev/null -grep -F 'toolTable?: string;' web/src/index.ts >/dev/null -grep -F 'tooltable?: string;' web/src/index.ts >/dev/null -grep -F 'tool_table?: string;' web/src/index.ts >/dev/null -grep -F 'TOOL_TABLE?: string;' web/src/index.ts >/dev/null grep -F 'kinematics?: string;' web/src/index.ts >/dev/null grep -F 'trt?: "xyzbc" | "xyzac" | string;' web/src/index.ts >/dev/null grep -F 'pivotLength?: number;' web/src/index.ts >/dev/null @@ -304,10 +296,10 @@ grep -F '"field":"subroutinePath"' web/public/linuxcnc_switchkins_remap_config_c grep -F '"field":"subroutinepath"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null grep -F '"field":"subroutine_path"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null grep -F '"field":"SUBROUTINE_PATH"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null -grep -F '"field":"toolTable"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null -grep -F '"field":"tooltable"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null -grep -F '"field":"tool_table"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null -grep -F '"field":"TOOL_TABLE"' web/public/linuxcnc_switchkins_remap_config_cases.json >/dev/null +if grep -F '"field":"tool' web/public/linuxcnc_switchkins_remap_config_cases.json; then + echo "LinuxCNC TOOL_TABLE must remain source coverage only, not generated browser switchkins cases" >&2 + exit 1 +fi grep -F '{"switchkins", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null grep -F '{"remap", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null grep -F '{"machine", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null @@ -337,10 +329,10 @@ grep -F '{"subroutinePath", ' core/tests/linuxcnc_switchkins_remap_config_cases. grep -F '{"subroutinepath", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null grep -F '{"subroutine_path", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null grep -F '{"SUBROUTINE_PATH", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null -grep -F '{"toolTable", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null -grep -F '{"tooltable", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null -grep -F '{"tool_table", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null -grep -F '{"TOOL_TABLE", ' core/tests/linuxcnc_switchkins_remap_config_cases.inc >/dev/null +if grep -F '{"tool' core/tests/linuxcnc_switchkins_remap_config_cases.inc; then + echo "LinuxCNC TOOL_TABLE must remain source coverage only, not generated C++ switchkins cases" >&2 + exit 1 +fi grep -F '"moduleResolution": "Bundler"' web/tsconfig.json >/dev/null grep -F '"include": ["src/index.ts", "src/**/*.d.ts"]' web/tsconfig.json >/dev/null grep -F 'createWasmSimulator' test-web-wasm-node-smoke.cjs >/dev/null diff --git a/web/public/linuxcnc_switchkins_remap_config_cases.json b/web/public/linuxcnc_switchkins_remap_config_cases.json index b2a8d3e..4b86d47 100644 --- a/web/public/linuxcnc_switchkins_remap_config_cases.json +++ b/web/public/linuxcnc_switchkins_remap_config_cases.json @@ -46,18 +46,6 @@ {"field":"postgui_hal_file","value":"5axis_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"5axis_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"5axis_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/bridgemill/5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"5axis","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"5axis","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"5axis","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"5axis.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"5axis","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/bridgemill/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/bridgemill/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/bridgemill","m428":0,"m429":1,"m430":2}, @@ -104,18 +92,6 @@ {"field":"postgui_hal_file","value":"xyzab-tdr-postgui","m428":1,"m429":0,"m430":-1}, {"field":"POSTGUI_HALFILE","value":"xyzab-tdr-postgui.hal","m428":1,"m429":0,"m430":-1}, {"field":"POSTGUI_HALFILE","value":"xyzab-tdr-postgui","m428":1,"m429":0,"m430":-1}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"toolTable","value":"xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"toolTable","value":"xyzab-tdr","m428":1,"m429":0,"m430":-1}, - {"field":"tooltable","value":"xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"tooltable","value":"xyzab-tdr","m428":1,"m429":0,"m430":-1}, - {"field":"tool_table","value":"xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"tool_table","value":"xyzab-tdr","m428":1,"m429":0,"m430":-1}, - {"field":"TOOL_TABLE","value":"xyzab-tdr.tbl","m428":1,"m429":0,"m430":-1}, - {"field":"TOOL_TABLE","value":"xyzab-tdr","m428":1,"m429":0,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs/428remap.ngc","m428":1,"m429":0,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-dual-rotary/remap_subs","m428":1,"m429":0,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-dual-rotary","m428":1,"m429":0,"m430":-1}, @@ -160,18 +136,6 @@ {"field":"postgui_hal_file","value":"switchkins_postgui","m428":1,"m429":0,"m430":2}, {"field":"POSTGUI_HALFILE","value":"switchkins_postgui.hal","m428":1,"m429":0,"m430":2}, {"field":"POSTGUI_HALFILE","value":"switchkins_postgui","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"xyzac-trt","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"xyzac-trt","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"xyzac-trt","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzac-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzac-trt","m428":1,"m429":0,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc","m428":1,"m429":0,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs","m428":1,"m429":0,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting","m428":1,"m429":0,"m430":2}, @@ -201,18 +165,6 @@ {"field":"switchkins","value":"sim-xyzbc-trt-kins","m428":1,"m429":0,"m430":2}, {"field":"switchkins","value":"xyzbc-trt-kins sparm=identityfirst","m428":1,"m429":0,"m430":2}, {"field":"switchkins","value":"xyzbc-trt-kins","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"toolTable","value":"xyzbc-trt","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tooltable","value":"xyzbc-trt","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"tool_table","value":"xyzbc-trt","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzbc-trt.tbl","m428":1,"m429":0,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzbc-trt","m428":1,"m429":0,"m430":2}, {"field":"config","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini","m428":0,"m429":1,"m430":2}, {"field":"configPath","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini","m428":0,"m429":1,"m430":2}, {"field":"configpath","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.ini","m428":0,"m429":1,"m430":2}, @@ -246,18 +198,6 @@ {"field":"postgui_hal_file","value":"xyzacb-trsrn_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"xyzacb-trsrn_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"xyzacb-trsrn_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzacb-trsrn_twp/xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"xyzacb-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"xyzacb-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"xyzacb-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzacb-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzacb-trsrn","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating","m428":0,"m429":1,"m430":2}, @@ -301,18 +241,6 @@ {"field":"postgui_hal_file","value":"xyzbca-trsrn_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"xyzbca-trsrn_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"xyzbca-trsrn_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/5axis/table-rotary_spindle-rotary-nutating/xyzbca-trsrn_twp/xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"xyzbca-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"xyzbca-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"xyzbca-trsrn","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzbca-trsrn.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"xyzbca-trsrn","m428":0,"m429":1,"m430":2}, {"field":"config","value":"configs/sim/axis/vismach/hexapod-sim/hexapod.ini","m428":0,"m429":1,"m430":2}, {"field":"configPath","value":"configs/sim/axis/vismach/hexapod-sim/hexapod.ini","m428":0,"m429":1,"m430":2}, {"field":"configpath","value":"configs/sim/axis/vismach/hexapod-sim/hexapod.ini","m428":0,"m429":1,"m430":2}, @@ -358,14 +286,6 @@ {"field":"postgui_hal_file","value":"hexapod_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"hexapod_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"hexapod_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"hexapod.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"hexapod","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"hexapod.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"hexapod","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"hexapod.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"hexapod","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"hexapod.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"hexapod","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/hexapod-sim/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/hexapod-sim/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/hexapod-sim","m428":0,"m429":1,"m430":2}, @@ -421,18 +341,6 @@ {"field":"postgui_hal_file","value":"melfa-postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"melfa-postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"melfa-postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/melfa-sim/melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/melfa-sim/melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/melfa-sim/melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/melfa-sim/melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"melfa","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"melfa","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"melfa","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"melfa.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"melfa","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/melfa-sim/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/melfa-sim/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/melfa-sim","m428":0,"m429":1,"m430":2}, @@ -486,18 +394,6 @@ {"field":"postgui_hal_file","value":"millturn-postgui","m428":0,"m429":1,"m430":-1}, {"field":"POSTGUI_HALFILE","value":"millturn-postgui.hal","m428":0,"m429":1,"m430":-1}, {"field":"POSTGUI_HALFILE","value":"millturn-postgui","m428":0,"m429":1,"m430":-1}, - {"field":"toolTable","value":"configs/sim/axis/vismach/millturn/millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"tooltable","value":"configs/sim/axis/vismach/millturn/millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"tool_table","value":"configs/sim/axis/vismach/millturn/millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/millturn/millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"toolTable","value":"millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"toolTable","value":"millturn","m428":0,"m429":1,"m430":-1}, - {"field":"tooltable","value":"millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"tooltable","value":"millturn","m428":0,"m429":1,"m430":-1}, - {"field":"tool_table","value":"millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"tool_table","value":"millturn","m428":0,"m429":1,"m430":-1}, - {"field":"TOOL_TABLE","value":"millturn.tbl","m428":0,"m429":1,"m430":-1}, - {"field":"TOOL_TABLE","value":"millturn","m428":0,"m429":1,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/millturn/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/millturn/remap_subs","m428":0,"m429":1,"m430":-1}, {"field":"remap","value":"configs/sim/axis/vismach/millturn","m428":0,"m429":1,"m430":-1}, @@ -552,18 +448,6 @@ {"field":"postgui_hal_file","value":"puma_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"puma_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"puma_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/axis/vismach/puma/puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/axis/vismach/puma/puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/axis/vismach/puma/puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/axis/vismach/puma/puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"puma","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"puma","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"puma","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"puma.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"puma","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/puma/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/puma/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/puma","m428":0,"m429":1,"m430":2}, @@ -679,14 +563,6 @@ {"field":"postgui_hal_file","value":"scara_postgui","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"scara_postgui.hal","m428":0,"m429":1,"m430":2}, {"field":"POSTGUI_HALFILE","value":"scara_postgui","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"scara","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"scara","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"scara","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"scara","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/scara/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/scara/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/axis/vismach/scara","m428":0,"m429":1,"m430":2}, @@ -709,10 +585,6 @@ {"field":"ini_file","value":"configs/sim/qtaxis/non-trivial/scara/scara.ini","m428":0,"m429":1,"m430":2}, {"field":"ini_file_name","value":"configs/sim/qtaxis/non-trivial/scara/scara.ini","m428":0,"m429":1,"m430":2}, {"field":"INI_FILE_NAME","value":"configs/sim/qtaxis/non-trivial/scara/scara.ini","m428":0,"m429":1,"m430":2}, - {"field":"toolTable","value":"configs/sim/qtaxis/non-trivial/scara/scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tooltable","value":"configs/sim/qtaxis/non-trivial/scara/scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"tool_table","value":"configs/sim/qtaxis/non-trivial/scara/scara.tbl","m428":0,"m429":1,"m430":2}, - {"field":"TOOL_TABLE","value":"configs/sim/qtaxis/non-trivial/scara/scara.tbl","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/qtaxis/non-trivial/scara/remap_subs/428remap.ngc","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/qtaxis/non-trivial/scara/remap_subs","m428":0,"m429":1,"m430":2}, {"field":"remap","value":"configs/sim/qtaxis/non-trivial/scara","m428":0,"m429":1,"m430":2}, diff --git a/web/src/index.ts b/web/src/index.ts index d72416e..4168d78 100644 --- a/web/src/index.ts +++ b/web/src/index.ts @@ -106,10 +106,6 @@ export type CncParseOptions = { subroutinepath?: string; subroutine_path?: string; SUBROUTINE_PATH?: string; - toolTable?: string; - tooltable?: string; - tool_table?: string; - TOOL_TABLE?: string; kinematics?: string; trt?: "xyzbc" | "xyzac" | string; pivotLength?: number; diff --git a/web/src/wasm-core.js b/web/src/wasm-core.js index 60e5225..513a692 100644 --- a/web/src/wasm-core.js +++ b/web/src/wasm-core.js @@ -664,10 +664,6 @@ export async function createWasmSimulator(moduleOptions = {}) { ...(options.subroutinepath ? { subroutinepath: options.subroutinepath } : {}), ...(options.subroutine_path ? { subroutine_path: options.subroutine_path } : {}), ...(options.SUBROUTINE_PATH ? { SUBROUTINE_PATH: options.SUBROUTINE_PATH } : {}), - ...(options.toolTable ? { toolTable: options.toolTable } : {}), - ...(options.tooltable ? { tooltable: options.tooltable } : {}), - ...(options.tool_table ? { tool_table: options.tool_table } : {}), - ...(options.TOOL_TABLE ? { TOOL_TABLE: options.TOOL_TABLE } : {}), ...(options.kinematics ? { kinematics: options.kinematics } : {}), ...(options.trt ? { trt: options.trt } : {}), ...(options.pivotLength !== undefined ? { pivotLength: options.pivotLength } : {}),