{ "boundaries": [ "inventory-only; no runtime authority or protocol mutation", "selected 3axis-tutorial only", "missing web mappings remain blocked", "desktop AXIS controls are Web-equivalent workflows, not copied host windows" ], "case": { "ini": { "line_count": 224, "path": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini", "sha256": "07e4fafa71e13ac3749fd860ee7549b762f521b9ca58c32110a9f582554882dc", "values": { "DISPLAY": { "DISPLAY": "axis", "INCREMENTS": "1 mm, .01 in, .1mm, 1 mil, .1 mil, 1/8000 in", "INTRO_GRAPHIC": "linuxcnc.gif", "OPEN_FILE": "configs/nc_files/3dtest.ngc", "POSITION_FEEDBACK": "ACTUAL", "POSITION_OFFSET": "RELATIVE" }, "EMC": { "MACHINE": "3axis-tutorial", "VERSION": "1.1" }, "EMCIO": { "TOOL_TABLE": "tool.tbl" }, "HAL": { "HALFILE": "3axis-tutorial.hal", "HALUI": "halui" }, "KINS": { "JOINTS": "3", "KINEMATICS": "trivkins" }, "TRAJ": { "AXES": "3", "COORDINATES": "X Y Z", "LINEAR_UNITS": "mm", "POSITION_FILE": "position_mm.txt" } } }, "path": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini", "status": "indexed" }, "checks": { "control_ids_unique": { "count": 187, "status": "verified" }, "manual_axis_execution": { "evidence_count": 2, "status": "verified", "tool": "tool/linuxcnc-axis-manual-execution" }, "menu_inventory": { "count": 80, "minimum": 40, "status": "verified" }, "panel_inventory": { "panels": [ "MANUAL", "MDI", "AUTO", "DRO", "DIAGNOSTICS" ], "status": "verified" }, "react_feature_inventory": { "count": 29, "status": "verified" }, "shortcut_inventory": { "count": 82, "minimum": 20, "status": "verified" }, "source_inputs": { "count": 4, "status": "verified" }, "toolbar_inventory": { "count": 20, "minimum": 15, "status": "verified" }, "web_mapping": { "gaps": 153, "mapped": 34, "status": "blocked" } }, "context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1", "controls": { "control_id_contract": [ { "category": "menu", "control_id": "AXIS-MENU-FILE-OPEN", "label": "Open...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 58, "lines": "58-58", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RECENT_FILES", "label": "Recent Files", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 62, "lines": "62-62", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-EDIT", "label": "Edit...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 66, "lines": "66-66", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RELOAD", "label": "Reload", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 71, "lines": "71-71", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-SAVE_G_CODE_AS", "label": "Save G-code as...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 76, "lines": "76-76", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-PROPERTIES", "label": "Properties...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 80, "lines": "80-80", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-EDIT_TOOL_DATA", "label": "Edit tool data...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 86, "lines": "86-86", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RELOAD_TOOL_DATA", "label": "Reload tool data", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 90, "lines": "90-90", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-LADDER_EDITOR", "label": "Ladder Editor...", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 96, "lines": "96-96", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-QUIT", "label": "Quit", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 102, "lines": "102-102", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOGGLE_EMERGENCY_STOP", "label": "Toggle Emergency Stop", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 108, "lines": "108-108", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOGGLE_MACHINE_POWER", "label": "Toggle Machine Power", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 113, "lines": "113-113", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RUN_PROGRAM", "label": "Run program", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 120, "lines": "120-120", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RUN_FROM_SELECTED_LINE", "label": "Run from selected line", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 124, "lines": "124-124", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STEP", "label": "Step", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 129, "lines": "129-129", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-PAUSE", "label": "Pause", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 134, "lines": "134-134", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RESUME", "label": "Resume", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 139, "lines": "139-139", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STOP", "label": "Stop", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 144, "lines": "144-144", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STOP_AT_M1", "label": "Stop at M1", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 149, "lines": "149-149", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SKIP_LINES_WITH", "label": "Skip lines with '/'", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 154, "lines": "154-154", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-CLEAR_MDI_HISTORY", "label": "Clear MDI history", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 161, "lines": "161-161", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-COPY_FROM_MDI_HISTORY", "label": "Copy from MDI history", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 165, "lines": "165-165", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-PASTE_TO_MDI_HISTORY", "label": "Paste to MDI history", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 169, "lines": "169-169", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-CALIBRATION", "label": "Calibration", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 175, "lines": "175-175", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SHOW_HAL_CONFIGURATION", "label": "Show Hal Configuration", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 179, "lines": "179-179", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HAL_METER", "label": "Hal Meter", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 183, "lines": "183-183", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HAL_SCOPE", "label": "Hal Scope", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 187, "lines": "187-187", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SHOW_LINUXCNC_STATUS", "label": "Show LinuxCNC Status", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 191, "lines": "191-191", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SET_DEBUG_LEVEL", "label": "Set Debug Level", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 195, "lines": "195-195", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HOMING", "label": "Homing", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 201, "lines": "201-201", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-UNHOMING", "label": "Unhoming", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 205, "lines": "205-205", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-ZERO_COORDINATE_SYSTEM", "label": "Zero coordinate system", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 209, "lines": "209-209", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P1_G54", "label": "P1 G54", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 213, "lines": "213-213", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P2_G55", "label": "P2 G55", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 217, "lines": "217-217", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P3_G56", "label": "P3 G56", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 221, "lines": "221-221", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P4_G57", "label": "P4 G57", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 225, "lines": "225-225", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P5_G58", "label": "P5 G58", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 229, "lines": "229-229", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P6_G59", "label": "P6 G59", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 233, "lines": "233-233", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P7_G59_1", "label": "P7 G59.1", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 237, "lines": "237-237", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P8_G59_2", "label": "P8 G59.2", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 241, "lines": "241-241", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P9_G59_3", "label": "P9 G59.3", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 245, "lines": "245-245", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-G92", "label": "G92", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine.clearoffset", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 249, "lines": "249-249", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO_WORKPIECE", "label": "Tool touch off to workpiece", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 257, "lines": "257-257", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO_FIXTURE", "label": "Tool touch off to fixture", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.machine", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 263, "lines": "263-263", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-TOP_VIEW", "label": "Top view", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 271, "lines": "271-271", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-ROTATED_TOP_VIEW", "label": "Rotated Top view", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 278, "lines": "278-278", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SIDE_VIEW", "label": "Side view", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 285, "lines": "285-285", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-FRONT_VIEW", "label": "Front view", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 292, "lines": "292-292", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-PERSPECTIVE_VIEW", "label": "Perspective view", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 299, "lines": "299-299", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-DISPLAY_INCHES", "label": "Display Inches", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 308, "lines": "308-308", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-DISPLAY_MM", "label": "Display MM", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 315, "lines": "315-315", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PROGRAM", "label": "Show program", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 322, "lines": "322-322", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PROGRAM_RAPIDS", "label": "Show program rapids", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 327, "lines": "327-327", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-ALPHA_BLEND_PROGRAM", "label": "Alpha-blend program", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 332, "lines": "332-332", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_LIVE_PLOT", "label": "Show live plot", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 337, "lines": "337-337", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_TOOL", "label": "Show tool", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 342, "lines": "342-342", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_EXTENTS", "label": "Show extents", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 347, "lines": "347-347", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-GRID", "label": "Grid", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 351, "lines": "351-351", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_OFFSETS", "label": "Show offsets", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 356, "lines": "356-356", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_MACHINE_LIMITS", "label": "Show machine limits", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 361, "lines": "361-361", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_VELOCITY", "label": "Show velocity", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 366, "lines": "366-366", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_DISTANCE_TO_GO", "label": "Show distance to go", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 371, "lines": "371-371", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-LARGE_COORDINATE_FONT", "label": "Large coordinate font", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 376, "lines": "376-376", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-CLEAR_LIVE_PLOT", "label": "Clear live plot", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 381, "lines": "381-381", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PYVCP_PANEL", "label": "Show PyVCP panel", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 387, "lines": "387-387", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_COMMANDED_POSITION", "label": "Show commanded position", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 396, "lines": "396-396", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_ACTUAL_POSITION", "label": "Show actual position", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 403, "lines": "403-403", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_MACHINE_POSITION", "label": "Show machine position", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 412, "lines": "412-412", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_RELATIVE_POSITION", "label": "Show relative position", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 419, "lines": "419-419", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-JOINT_MODE", "label": "Joint mode", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 428, "lines": "428-428", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-WORLD_MODE", "label": "World mode", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 435, "lines": "435-435", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW_GRID-OFF", "label": "Off", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view.grid", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 443, "lines": "443-443", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW_GRID-CUSTOM", "label": "Custom", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.view.grid", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 449, "lines": "449-449", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-HELP-ABOUT_AXIS", "label": "About AXIS", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.help", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 460, "lines": "460-460", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-HELP-QUICK_REFERENCE", "label": "Quick Reference", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.help", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 464, "lines": "464-464", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-FILE", "label": "File", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 470, "lines": "470-470", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-MACHINE", "label": "Machine", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 474, "lines": "474-474", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-VIEW", "label": "View", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 478, "lines": "478-478", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-HELP", "label": "Help", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 482, "lines": "482-482", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE_RECENT-CLEAR_RECENTS_LIST", "label": "Clear Recents List", "mapping_reason": "MenuAction has no per-action stable data-axis-feature.", "mapping_status": "container_only", "menu_path": ".menu.file.recent", "react_feature_ids": [ "AXIS-UI-02" ], "source": { "line": 2230, "lines": "2230-2230", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "toolbar", "command": null, "control_id": "AXIS-TOOLBAR-MACHINE_ESTOP", "helptext": "Toggle Emergency Stop [F1]", "image": "tool_estop", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-01" ], "source": { "line": 490, "lines": "490-497", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.machine_estop" }, { "category": "toolbar", "command": "onoff_clicked \\", "control_id": "AXIS-TOOLBAR-MACHINE_POWER", "helptext": "Toggle Machine power [F2]", "image": "tool_power", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-02" ], "source": { "line": 498, "lines": "498-508", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.machine_power" }, { "category": "toolbar", "command": "open_file", "control_id": "AXIS-TOOLBAR-FILE_OPEN", "helptext": "Open G-Code file [O]", "image": "tool_open", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-FILE-01" ], "source": { "line": 509, "lines": "509-516", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.file_open" }, { "category": "toolbar", "command": "reload_file", "control_id": "AXIS-TOOLBAR-RELOAD", "helptext": "Reopen current file [Ctrl-R]", "image": "tool_reload", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-FILE-04" ], "source": { "line": 517, "lines": "517-526", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.reload" }, { "category": "toolbar", "command": "task_run \\", "control_id": "AXIS-TOOLBAR-PROGRAM_RUN", "helptext": "Begin executing current file [R]", "image": "tool_run", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-03" ], "source": { "line": 527, "lines": "527-534", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_run" }, { "category": "toolbar", "command": "task_step \\", "control_id": "AXIS-TOOLBAR-PROGRAM_STEP", "helptext": "Execute next line [T]", "image": "tool_step", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-05" ], "source": { "line": 535, "lines": "535-542", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_step" }, { "category": "toolbar", "command": "task_pauseresume \\", "control_id": "AXIS-TOOLBAR-PROGRAM_PAUSE", "helptext": "Pause [P] / resume [S] execution", "image": "tool_pause", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-06" ], "source": { "line": 543, "lines": "543-557", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_pause" }, { "category": "toolbar", "command": "task_stop \\", "control_id": "AXIS-TOOLBAR-PROGRAM_STOP", "helptext": "Stop program execution [ESC]", "image": "tool_stop", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-07" ], "source": { "line": 558, "lines": "558-567", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_stop" }, { "category": "toolbar", "command": "set block_delete [expr {!$block_delete", "control_id": "AXIS-TOOLBAR-PROGRAM_BLOCKDELETE", "helptext": "Toggle skip lines with '/' [Alt-M /]", "image": "tool_blockdelete", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-09" ], "source": { "line": 568, "lines": "568-574", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_blockdelete" }, { "category": "toolbar", "command": "set optional_stop [expr {!$optional_stop", "control_id": "AXIS-TOOLBAR-PROGRAM_OPTPAUSE", "helptext": "Toggle optional pause [Alt-M 1]", "image": "tool_optpause", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-08" ], "source": { "line": 575, "lines": "575-583", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_optpause" }, { "category": "toolbar", "command": "zoomin \\", "control_id": "AXIS-TOOLBAR-VIEW_ZOOMIN", "helptext": "Zoom in", "image": "tool_zoomin", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 584, "lines": "584-591", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_zoomin" }, { "category": "toolbar", "command": "zoomout \\", "control_id": "AXIS-TOOLBAR-VIEW_ZOOMOUT", "helptext": "Zoom out", "image": "tool_zoomout", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 592, "lines": "592-599", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_zoomout" }, { "category": "toolbar", "command": "set_view_z \\", "control_id": "AXIS-TOOLBAR-VIEW_Z", "helptext": "Top view", "image": "tool_axis_z", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 600, "lines": "600-607", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_z" }, { "category": "toolbar", "command": "set_view_z2 \\", "control_id": "AXIS-TOOLBAR-VIEW_Z2", "helptext": "Rotated top view", "image": "tool_axis_z2", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 608, "lines": "608-615", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_z2" }, { "category": "toolbar", "command": "set_view_x \\", "control_id": "AXIS-TOOLBAR-VIEW_X", "helptext": "Side view", "image": "tool_axis_x", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 616, "lines": "616-623", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_x" }, { "category": "toolbar", "command": "set_view_y \\", "control_id": "AXIS-TOOLBAR-VIEW_Y", "helptext": "Front view", "image": "tool_axis_y", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 624, "lines": "624-631", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_y" }, { "category": "toolbar", "command": "set_view_y2 \\", "control_id": "AXIS-TOOLBAR-VIEW_Y2", "helptext": "Inverted Front view", "image": "tool_axis_y2", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 632, "lines": "632-639", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_y2" }, { "category": "toolbar", "command": "set_view_p \\", "control_id": "AXIS-TOOLBAR-VIEW_P", "helptext": "Perspective view", "image": "tool_axis_p", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-01" ], "source": { "line": 640, "lines": "640-647", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_p" }, { "category": "toolbar", "command": "set rotate_mode [expr {!$rotate_mode", "control_id": "AXIS-TOOLBAR-ROTATE", "helptext": "Toggle between Drag and Rotate Mode [D]", "image": "tool_rotate", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-02" ], "source": { "line": 648, "lines": "648-662", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.rotate" }, { "category": "toolbar", "command": "clear_live_plot \\", "control_id": "AXIS-TOOLBAR-CLEAR_PLOT", "helptext": "Clear live plot [Ctrl-K]", "image": "tool_clear", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-VIEW-15" ], "source": { "line": 663, "lines": "663-682", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.clear_plot" }, { "category": "shortcut", "command": "cancel_open", "control_id": "AXIS-SHORTCUT-ESCAPE-CANCEL_OPEN", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 1229, "lines": "1229-1229", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_stop", "control_id": "AXIS-SHORTCUT-ESCAPE-COMMANDS_TASK_STOP", "key": "", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-07" ], "source": { "line": 3109, "lines": "3109-3109", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_override_limits", "control_id": "AXIS-SHORTCUT-L-COMMANDS_TOGGLE_OVERRIDE_LIMITS", "key": "l", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3110, "lines": "3110-3110", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.open_file", "control_id": "AXIS-SHORTCUT-O-COMMANDS_OPEN_FILE", "key": "o", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-FILE-01" ], "source": { "line": 3111, "lines": "3111-3111", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_resume", "control_id": "AXIS-SHORTCUT-S-COMMANDS_TASK_RESUME", "key": "s", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-06" ], "source": { "line": 3112, "lines": "3112-3112", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_step", "control_id": "AXIS-SHORTCUT-T-COMMANDS_TASK_STEP", "key": "t", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-05" ], "source": { "line": 3113, "lines": "3113-3113", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_pause", "control_id": "AXIS-SHORTCUT-P-COMMANDS_TASK_PAUSE", "key": "p", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-06" ], "source": { "line": 3114, "lines": "3114-3114", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_reverse", "control_id": "AXIS-SHORTCUT-R-COMMANDS_TASK_REVERSE", "key": "R", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3115, "lines": "3115-3115", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_forward", "control_id": "AXIS-SHORTCUT-F-COMMANDS_TASK_FORWARD", "key": "F", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3116, "lines": "3116-3116", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.cycle_view", "control_id": "AXIS-SHORTCUT-V-COMMANDS_CYCLE_VIEW", "key": "v", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3117, "lines": "3117-3117", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "#nothing", "control_id": "AXIS-SHORTCUT-ALT_P-NOTHING", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3118, "lines": "3118-3118", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_run", "control_id": "AXIS-SHORTCUT-R-COMMANDS_TASK_RUN", "key": "r", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-03" ], "source": { "line": 3119, "lines": "3119-3119", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.reload_file", "control_id": "AXIS-SHORTCUT-CONTROL_R-COMMANDS_RELOAD_FILE", "key": "", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-FILE-04" ], "source": { "line": 3120, "lines": "3120-3120", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.save_gcode", "control_id": "AXIS-SHORTCUT-CONTROL_S-COMMANDS_SAVE_GCODE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3121, "lines": "3121-3121", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.estop_clicked", "control_id": "AXIS-SHORTCUT-KEY_F1-COMMANDS_ESTOP_CLICKED", "key": "", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-01" ], "source": { "line": 3122, "lines": "3122-3122", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.onoff_clicked", "control_id": "AXIS-SHORTCUT-KEY_F2-COMMANDS_ONOFF_CLICKED", "key": "", "mapping_reason": null, "mapping_status": "mapped", "react_feature_ids": [ "AXIS-MACHINE-02" ], "source": { "line": 3123, "lines": "3123-3123", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.mist_toggle", "control_id": "AXIS-SHORTCUT-KEY_F7-COMMANDS_MIST_TOGGLE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3124, "lines": "3124-3124", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.flood_toggle", "control_id": "AXIS-SHORTCUT-KEY_F8-COMMANDS_FLOOD_TOGGLE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3125, "lines": "3125-3125", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_forward_toggle", "control_id": "AXIS-SHORTCUT-KEY_F9-COMMANDS_SPINDLE_FORWARD_TOGGLE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3126, "lines": "3126-3126", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_backward_toggle", "control_id": "AXIS-SHORTCUT-KEY_F10-COMMANDS_SPINDLE_BACKWARD_TOGGLE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3127, "lines": "3127-3127", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_decrease", "control_id": "AXIS-SHORTCUT-KEY_F11-COMMANDS_SPINDLE_DECREASE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3128, "lines": "3128-3128", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_increase", "control_id": "AXIS-SHORTCUT-KEY_F12-COMMANDS_SPINDLE_INCREASE", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3129, "lines": "3129-3129", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.brake_on", "control_id": "AXIS-SHORTCUT-B-COMMANDS_BRAKE_ON", "key": "B", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3130, "lines": "3130-3130", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.brake_off", "control_id": "AXIS-SHORTCUT-B-COMMANDS_BRAKE_OFF", "key": "b", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3131, "lines": "3131-3131", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.clear_live_plot", "control_id": "AXIS-SHORTCUT-CONTROL_K-COMMANDS_CLEAR_LIVE_PLOT", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3132, "lines": "3132-3132", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "x", "control_id": "AXIS-SHORTCUT-X-X", "key": "x", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3136, "lines": "3136-3136", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "y", "control_id": "AXIS-SHORTCUT-Y-Y", "key": "y", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3137, "lines": "3137-3137", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "z", "control_id": "AXIS-SHORTCUT-Z-Z", "key": "z", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3138, "lines": "3138-3138", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "a", "control_id": "AXIS-SHORTCUT-A-A", "key": "a", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3139, "lines": "3139-3139", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(0", "control_id": "AXIS-SHORTCUT-UNNAMED-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_0", "key": "`", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3142, "lines": "3142-3142", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(1", "control_id": "AXIS-SHORTCUT-1-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_1", "key": "1", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3143, "lines": "3143-3143", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(2", "control_id": "AXIS-SHORTCUT-2-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_2", "key": "2", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3144, "lines": "3144-3144", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(3", "control_id": "AXIS-SHORTCUT-3-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_3", "key": "3", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3145, "lines": "3145-3145", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(4", "control_id": "AXIS-SHORTCUT-4-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_4", "key": "4", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3146, "lines": "3146-3146", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(5", "control_id": "AXIS-SHORTCUT-5-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_5", "key": "5", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3147, "lines": "3147-3147", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(6", "control_id": "AXIS-SHORTCUT-6-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_6", "key": "6", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3148, "lines": "3148-3148", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(7", "control_id": "AXIS-SHORTCUT-7-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_7", "key": "7", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3149, "lines": "3149-3149", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(8", "control_id": "AXIS-SHORTCUT-8-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_8", "key": "8", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3150, "lines": "3150-3150", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(9", "control_id": "AXIS-SHORTCUT-9-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_9", "key": "9", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3151, "lines": "3151-3151", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(10", "control_id": "AXIS-SHORTCUT-0-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_10", "key": "0", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3152, "lines": "3152-3152", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_continuous(", "control_id": "AXIS-SHORTCUT-C-LAMBDA_EVENT_JOGSPEED_CONTINUOUS", "key": "c", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3154, "lines": "3154-3154", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: widgets.rotate.invoke(", "control_id": "AXIS-SHORTCUT-D-LAMBDA_EVENT_WIDGETS_ROTATE_INVOKE", "key": "d", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3155, "lines": "3155-3155", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_incremental(", "control_id": "AXIS-SHORTCUT-I-LAMBDA_EVENT_JOGSPEED_INCREMENTAL", "key": "i", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3156, "lines": "3156-3156", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_incremental(-1", "control_id": "AXIS-SHORTCUT-I-LAMBDA_EVENT_JOGSPEED_INCREMENTAL_1", "key": "I", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3157, "lines": "3157-3157", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "set metric [expr {!$metric}]; redraw", "control_id": "AXIS-SHORTCUT-UNNAMED-SET_METRIC_EXPR_METRIC_REDRAW", "key": "!", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3158, "lines": "3158-3158", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_display_type", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_DISPLAY_TYPE", "key": "@", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3159, "lines": "3159-3159", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_coord_type", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_COORD_TYPE", "key": "#", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3160, "lines": "3160-3160", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_teleop_mode", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_TELEOP_MODE", "key": "$", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3161, "lines": "3161-3161", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.home_joint", "control_id": "AXIS-SHORTCUT-HOME-COMMANDS_HOME_JOINT", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3163, "lines": "3163-3163", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KP_HOME-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3164, "lines": "3164-3164", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.home_all_joints", "control_id": "AXIS-SHORTCUT-CONTROL_HOME-COMMANDS_HOME_ALL_JOINTS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3165, "lines": "3165-3165", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_axis_offset", "control_id": "AXIS-SHORTCUT-SHIFT_HOME-COMMANDS_SET_AXIS_OFFSET", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3166, "lines": "3166-3166", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.touch_off_system", "control_id": "AXIS-SHORTCUT-END-COMMANDS_TOUCH_OFF_SYSTEM", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3167, "lines": "3167-3167", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.touch_off_tool", "control_id": "AXIS-SHORTCUT-CONTROL_END-COMMANDS_TOUCH_OFF_TOOL", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3168, "lines": "3168-3168", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-CONTROL_KP_HOME-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3169, "lines": "3169-3169", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-SHIFT_KP_HOME-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3170, "lines": "3170-3170", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KP_END-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3171, "lines": "3171-3171", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_S-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3320, "lines": "3320-3320", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_S-KEYPRESS-2", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3321, "lines": "3321-3321", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "-get_max_jog_speed_map(d", "control_id": "AXIS-SHORTCUT-SHIFT_KEYPRESS_S-GET_MAX_JOG_SPEED_MAP_D", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3322, "lines": "3322-3322", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "get_max_jog_speed_map(d", "control_id": "AXIS-SHORTCUT-SHIFT_KEYPRESS_S-GET_MAX_JOG_SPEED_MAP_D-2", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3323, "lines": "3323-3323", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda e: jog_off_map(d", "control_id": "AXIS-SHORTCUT-KEYRELEASE_S-LAMBDA_E_JOG_OFF_MAP_D", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3324, "lines": "3324-3324", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda e: jog_off_map(d", "control_id": "AXIS-SHORTCUT-KEYRELEASE_S-LAMBDA_E_JOG_OFF_MAP_D-2", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3325, "lines": "3325-3325", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".", "control_id": "AXIS-SHORTCUT-FOCUSOUT-UNNAMED", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3327, "lines": "3327-3327", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_BEGIN-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3731, "lines": "3731-3731", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_INSERT-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3732, "lines": "3732-3732", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_NEXT-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3771, "lines": "3771-3771", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_PRIOR-KEYPRESS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3772, "lines": "3772-3772", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "nomodifier(commands.jog_minus", "control_id": "AXIS-SHORTCUT-KEYPRESS_MINUS-NOMODIFIER_COMMANDS_JOG_MINUS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3774, "lines": "3774-3774", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "nomodifier(commands.jog_plus", "control_id": "AXIS-SHORTCUT-KEYPRESS_EQUAL-NOMODIFIER_COMMANDS_JOG_PLUS", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3775, "lines": "3775-3775", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.jog_stop", "control_id": "AXIS-SHORTCUT-KEYRELEASE_MINUS-COMMANDS_JOG_STOP", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3776, "lines": "3776-3776", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.jog_stop", "control_id": "AXIS-SHORTCUT-KEYRELEASE_EQUAL-COMMANDS_JOG_STOP", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3777, "lines": "3777-3777", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".tabs raise manual", "control_id": "AXIS-SHORTCUT-KEY_F3-TABS_RAISE_MANUAL", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3854, "lines": "3854-3854", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".tabs raise mdi", "control_id": "AXIS-SHORTCUT-KEY_F5-TABS_RAISE_MDI", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3855, "lines": "3855-3855", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "+", "control_id": "AXIS-SHORTCUT-KEY_F5-UNNAMED", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3856, "lines": "3856-3856", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.next_tab", "control_id": "AXIS-SHORTCUT-KEY_F4-COMMANDS_NEXT_TAB", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3857, "lines": "3857-3857", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_show_pyvcppanel", "control_id": "AXIS-SHORTCUT-CONTROL_E-COMMANDS_TOGGLE_SHOW_PYVCPPANEL", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3933, "lines": "3933-3933", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: notifications.clear(", "control_id": "AXIS-SHORTCUT-CONTROL_SPACE-LAMBDA_EVENT_NOTIFICATIONS_CLEAR", "key": "", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 3968, "lines": "3968-3968", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "\"\"", "control_id": "AXIS-SHORTCUT-UNNAMED-UNSPECIFIED", "key": "$", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 4134, "lines": "4134-4134", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_view_y2", "control_id": "AXIS-SHORTCUT-V-COMMANDS_SET_VIEW_Y2", "key": "v", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 4140, "lines": "4140-4140", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_view_y", "control_id": "AXIS-SHORTCUT-V-COMMANDS_SET_VIEW_Y", "key": "v", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 4143, "lines": "4143-4143", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "\"\"", "control_id": "AXIS-SHORTCUT-D-UNSPECIFIED", "key": "d", "mapping_reason": "Shortcut is source-defined but no matching React keyboard contract is declared.", "mapping_status": "missing", "react_feature_ids": [], "source": { "line": 4144, "lines": "4144-4144", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "panel", "control_id": "AXIS-PANEL-MANUAL", "mapping_reason": null, "mapping_status": "mapped", "panel": "MANUAL", "react_feature_ids": [ "AXIS-MANUAL-01" ], "source": [ { "line": 820, "lines": "820-820", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "Manual notebook tab" }, { "line": 2574, "lines": "2574-2574", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "ensure_manual" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-MDI", "mapping_reason": null, "mapping_status": "mapped", "panel": "MDI", "react_feature_ids": [ "AXIS-CTRL-03" ], "source": [ { "line": 821, "lines": "821-821", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "MDI notebook tab" }, { "line": 2587, "lines": "2587-2587", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "ensure_mdi" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-AUTO", "mapping_reason": "AUTO has no dedicated React tab; program controls are only an inferred shared pane.", "mapping_status": "mapped", "note": "AXIS uses the shared program pane; it has no separate Auto notebook tab.", "panel": "AUTO", "react_feature_ids": [ "AXIS-CTRL-02", "AXIS-UI-07" ], "source": [ { "line": 120, "lines": "120-120", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "Auto program menu" }, { "line": 2343, "lines": "2343-2343", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "task_run" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-DRO", "mapping_reason": null, "mapping_status": "mapped", "panel": "DRO", "react_feature_ids": [ "AXIS-VIEW-04" ], "source": [ { "line": 1296, "lines": "1296-1296", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "DRO notebook" }, { "line": 1331, "lines": "1331-1331", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "position label" }, { "line": 1967, "lines": "1967-1967", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "state projection" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-DIAGNOSTICS", "mapping_reason": null, "mapping_status": "mapped", "panel": "DIAGNOSTICS", "react_feature_ids": [ "AXIS-EDIT-01", "AXIS-UI-07" ], "source": [ { "line": 1356, "lines": "1356-1356", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "program text editor" }, { "line": 1387, "lines": "1387-1387", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "active G-code display" }, { "line": 1978, "lines": "1978-1978", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "interpreter state" } ] } ], "menus": [ { "category": "menu", "control_id": "AXIS-MENU-FILE-OPEN", "label": "Open...", "menu_path": ".menu.file", "source": { "line": 58, "lines": "58-58", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RECENT_FILES", "label": "Recent Files", "menu_path": ".menu.file", "source": { "line": 62, "lines": "62-62", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-EDIT", "label": "Edit...", "menu_path": ".menu.file", "source": { "line": 66, "lines": "66-66", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RELOAD", "label": "Reload", "menu_path": ".menu.file", "source": { "line": 71, "lines": "71-71", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-SAVE_G_CODE_AS", "label": "Save G-code as...", "menu_path": ".menu.file", "source": { "line": 76, "lines": "76-76", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-PROPERTIES", "label": "Properties...", "menu_path": ".menu.file", "source": { "line": 80, "lines": "80-80", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-EDIT_TOOL_DATA", "label": "Edit tool data...", "menu_path": ".menu.file", "source": { "line": 86, "lines": "86-86", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-RELOAD_TOOL_DATA", "label": "Reload tool data", "menu_path": ".menu.file", "source": { "line": 90, "lines": "90-90", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-LADDER_EDITOR", "label": "Ladder Editor...", "menu_path": ".menu.file", "source": { "line": 96, "lines": "96-96", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE-QUIT", "label": "Quit", "menu_path": ".menu.file", "source": { "line": 102, "lines": "102-102", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOGGLE_EMERGENCY_STOP", "label": "Toggle Emergency Stop", "menu_path": ".menu.machine", "source": { "line": 108, "lines": "108-108", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOGGLE_MACHINE_POWER", "label": "Toggle Machine Power", "menu_path": ".menu.machine", "source": { "line": 113, "lines": "113-113", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RUN_PROGRAM", "label": "Run program", "menu_path": ".menu.machine", "source": { "line": 120, "lines": "120-120", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RUN_FROM_SELECTED_LINE", "label": "Run from selected line", "menu_path": ".menu.machine", "source": { "line": 124, "lines": "124-124", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STEP", "label": "Step", "menu_path": ".menu.machine", "source": { "line": 129, "lines": "129-129", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-PAUSE", "label": "Pause", "menu_path": ".menu.machine", "source": { "line": 134, "lines": "134-134", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-RESUME", "label": "Resume", "menu_path": ".menu.machine", "source": { "line": 139, "lines": "139-139", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STOP", "label": "Stop", "menu_path": ".menu.machine", "source": { "line": 144, "lines": "144-144", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-STOP_AT_M1", "label": "Stop at M1", "menu_path": ".menu.machine", "source": { "line": 149, "lines": "149-149", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SKIP_LINES_WITH", "label": "Skip lines with '/'", "menu_path": ".menu.machine", "source": { "line": 154, "lines": "154-154", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-CLEAR_MDI_HISTORY", "label": "Clear MDI history", "menu_path": ".menu.machine", "source": { "line": 161, "lines": "161-161", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-COPY_FROM_MDI_HISTORY", "label": "Copy from MDI history", "menu_path": ".menu.machine", "source": { "line": 165, "lines": "165-165", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-PASTE_TO_MDI_HISTORY", "label": "Paste to MDI history", "menu_path": ".menu.machine", "source": { "line": 169, "lines": "169-169", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-CALIBRATION", "label": "Calibration", "menu_path": ".menu.machine", "source": { "line": 175, "lines": "175-175", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SHOW_HAL_CONFIGURATION", "label": "Show Hal Configuration", "menu_path": ".menu.machine", "source": { "line": 179, "lines": "179-179", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HAL_METER", "label": "Hal Meter", "menu_path": ".menu.machine", "source": { "line": 183, "lines": "183-183", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HAL_SCOPE", "label": "Hal Scope", "menu_path": ".menu.machine", "source": { "line": 187, "lines": "187-187", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SHOW_LINUXCNC_STATUS", "label": "Show LinuxCNC Status", "menu_path": ".menu.machine", "source": { "line": 191, "lines": "191-191", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-SET_DEBUG_LEVEL", "label": "Set Debug Level", "menu_path": ".menu.machine", "source": { "line": 195, "lines": "195-195", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-HOMING", "label": "Homing", "menu_path": ".menu.machine", "source": { "line": 201, "lines": "201-201", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-UNHOMING", "label": "Unhoming", "menu_path": ".menu.machine", "source": { "line": 205, "lines": "205-205", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-ZERO_COORDINATE_SYSTEM", "label": "Zero coordinate system", "menu_path": ".menu.machine", "source": { "line": 209, "lines": "209-209", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P1_G54", "label": "P1 G54", "menu_path": ".menu.machine.clearoffset", "source": { "line": 213, "lines": "213-213", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P2_G55", "label": "P2 G55", "menu_path": ".menu.machine.clearoffset", "source": { "line": 217, "lines": "217-217", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P3_G56", "label": "P3 G56", "menu_path": ".menu.machine.clearoffset", "source": { "line": 221, "lines": "221-221", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P4_G57", "label": "P4 G57", "menu_path": ".menu.machine.clearoffset", "source": { "line": 225, "lines": "225-225", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P5_G58", "label": "P5 G58", "menu_path": ".menu.machine.clearoffset", "source": { "line": 229, "lines": "229-229", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P6_G59", "label": "P6 G59", "menu_path": ".menu.machine.clearoffset", "source": { "line": 233, "lines": "233-233", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P7_G59_1", "label": "P7 G59.1", "menu_path": ".menu.machine.clearoffset", "source": { "line": 237, "lines": "237-237", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P8_G59_2", "label": "P8 G59.2", "menu_path": ".menu.machine.clearoffset", "source": { "line": 241, "lines": "241-241", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-P9_G59_3", "label": "P9 G59.3", "menu_path": ".menu.machine.clearoffset", "source": { "line": 245, "lines": "245-245", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE_CLEAROFFSET-G92", "label": "G92", "menu_path": ".menu.machine.clearoffset", "source": { "line": 249, "lines": "249-249", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO_WORKPIECE", "label": "Tool touch off to workpiece", "menu_path": ".menu.machine", "source": { "line": 257, "lines": "257-257", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO_FIXTURE", "label": "Tool touch off to fixture", "menu_path": ".menu.machine", "source": { "line": 263, "lines": "263-263", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-TOP_VIEW", "label": "Top view", "menu_path": ".menu.view", "source": { "line": 271, "lines": "271-271", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-ROTATED_TOP_VIEW", "label": "Rotated Top view", "menu_path": ".menu.view", "source": { "line": 278, "lines": "278-278", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SIDE_VIEW", "label": "Side view", "menu_path": ".menu.view", "source": { "line": 285, "lines": "285-285", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-FRONT_VIEW", "label": "Front view", "menu_path": ".menu.view", "source": { "line": 292, "lines": "292-292", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-PERSPECTIVE_VIEW", "label": "Perspective view", "menu_path": ".menu.view", "source": { "line": 299, "lines": "299-299", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-DISPLAY_INCHES", "label": "Display Inches", "menu_path": ".menu.view", "source": { "line": 308, "lines": "308-308", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-DISPLAY_MM", "label": "Display MM", "menu_path": ".menu.view", "source": { "line": 315, "lines": "315-315", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PROGRAM", "label": "Show program", "menu_path": ".menu.view", "source": { "line": 322, "lines": "322-322", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PROGRAM_RAPIDS", "label": "Show program rapids", "menu_path": ".menu.view", "source": { "line": 327, "lines": "327-327", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-ALPHA_BLEND_PROGRAM", "label": "Alpha-blend program", "menu_path": ".menu.view", "source": { "line": 332, "lines": "332-332", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_LIVE_PLOT", "label": "Show live plot", "menu_path": ".menu.view", "source": { "line": 337, "lines": "337-337", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_TOOL", "label": "Show tool", "menu_path": ".menu.view", "source": { "line": 342, "lines": "342-342", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_EXTENTS", "label": "Show extents", "menu_path": ".menu.view", "source": { "line": 347, "lines": "347-347", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-GRID", "label": "Grid", "menu_path": ".menu.view", "source": { "line": 351, "lines": "351-351", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_OFFSETS", "label": "Show offsets", "menu_path": ".menu.view", "source": { "line": 356, "lines": "356-356", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_MACHINE_LIMITS", "label": "Show machine limits", "menu_path": ".menu.view", "source": { "line": 361, "lines": "361-361", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_VELOCITY", "label": "Show velocity", "menu_path": ".menu.view", "source": { "line": 366, "lines": "366-366", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_DISTANCE_TO_GO", "label": "Show distance to go", "menu_path": ".menu.view", "source": { "line": 371, "lines": "371-371", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-LARGE_COORDINATE_FONT", "label": "Large coordinate font", "menu_path": ".menu.view", "source": { "line": 376, "lines": "376-376", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-CLEAR_LIVE_PLOT", "label": "Clear live plot", "menu_path": ".menu.view", "source": { "line": 381, "lines": "381-381", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_PYVCP_PANEL", "label": "Show PyVCP panel", "menu_path": ".menu.view", "source": { "line": 387, "lines": "387-387", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_COMMANDED_POSITION", "label": "Show commanded position", "menu_path": ".menu.view", "source": { "line": 396, "lines": "396-396", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_ACTUAL_POSITION", "label": "Show actual position", "menu_path": ".menu.view", "source": { "line": 403, "lines": "403-403", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_MACHINE_POSITION", "label": "Show machine position", "menu_path": ".menu.view", "source": { "line": 412, "lines": "412-412", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-SHOW_RELATIVE_POSITION", "label": "Show relative position", "menu_path": ".menu.view", "source": { "line": 419, "lines": "419-419", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-JOINT_MODE", "label": "Joint mode", "menu_path": ".menu.view", "source": { "line": 428, "lines": "428-428", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW-WORLD_MODE", "label": "World mode", "menu_path": ".menu.view", "source": { "line": 435, "lines": "435-435", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW_GRID-OFF", "label": "Off", "menu_path": ".menu.view.grid", "source": { "line": 443, "lines": "443-443", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-VIEW_GRID-CUSTOM", "label": "Custom", "menu_path": ".menu.view.grid", "source": { "line": 449, "lines": "449-449", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-HELP-ABOUT_AXIS", "label": "About AXIS", "menu_path": ".menu.help", "source": { "line": 460, "lines": "460-460", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-HELP-QUICK_REFERENCE", "label": "Quick Reference", "menu_path": ".menu.help", "source": { "line": 464, "lines": "464-464", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-FILE", "label": "File", "menu_path": ".menu", "source": { "line": 470, "lines": "470-470", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-MACHINE", "label": "Machine", "menu_path": ".menu", "source": { "line": 474, "lines": "474-474", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-VIEW", "label": "View", "menu_path": ".menu", "source": { "line": 478, "lines": "478-478", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-MENU-HELP", "label": "Help", "menu_path": ".menu", "source": { "line": 482, "lines": "482-482", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } }, { "category": "menu", "control_id": "AXIS-MENU-FILE_RECENT-CLEAR_RECENTS_LIST", "label": "Clear Recents List", "menu_path": ".menu.file.recent", "source": { "line": 2230, "lines": "2230-2230", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl menu accelerator" } } ], "panels": [ { "category": "panel", "control_id": "AXIS-PANEL-MANUAL", "panel": "MANUAL", "source": [ { "line": 820, "lines": "820-820", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "Manual notebook tab" }, { "line": 2574, "lines": "2574-2574", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "ensure_manual" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-MDI", "panel": "MDI", "source": [ { "line": 821, "lines": "821-821", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "MDI notebook tab" }, { "line": 2587, "lines": "2587-2587", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "ensure_mdi" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-AUTO", "note": "AXIS uses the shared program pane; it has no separate Auto notebook tab.", "panel": "AUTO", "source": [ { "line": 120, "lines": "120-120", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "Auto program menu" }, { "line": 2343, "lines": "2343-2343", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "task_run" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-DRO", "panel": "DRO", "source": [ { "line": 1296, "lines": "1296-1296", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "DRO notebook" }, { "line": 1331, "lines": "1331-1331", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "position label" }, { "line": 1967, "lines": "1967-1967", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "state projection" } ] }, { "category": "panel", "control_id": "AXIS-PANEL-DIAGNOSTICS", "panel": "DIAGNOSTICS", "source": [ { "line": 1356, "lines": "1356-1356", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "program text editor" }, { "line": 1387, "lines": "1387-1387", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "active G-code display" }, { "line": 1978, "lines": "1978-1978", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "interpreter state" } ] } ], "shortcuts": [ { "category": "shortcut", "command": "cancel_open", "control_id": "AXIS-SHORTCUT-ESCAPE-CANCEL_OPEN", "key": "", "source": { "line": 1229, "lines": "1229-1229", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_stop", "control_id": "AXIS-SHORTCUT-ESCAPE-COMMANDS_TASK_STOP", "key": "", "source": { "line": 3109, "lines": "3109-3109", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_override_limits", "control_id": "AXIS-SHORTCUT-L-COMMANDS_TOGGLE_OVERRIDE_LIMITS", "key": "l", "source": { "line": 3110, "lines": "3110-3110", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.open_file", "control_id": "AXIS-SHORTCUT-O-COMMANDS_OPEN_FILE", "key": "o", "source": { "line": 3111, "lines": "3111-3111", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_resume", "control_id": "AXIS-SHORTCUT-S-COMMANDS_TASK_RESUME", "key": "s", "source": { "line": 3112, "lines": "3112-3112", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_step", "control_id": "AXIS-SHORTCUT-T-COMMANDS_TASK_STEP", "key": "t", "source": { "line": 3113, "lines": "3113-3113", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_pause", "control_id": "AXIS-SHORTCUT-P-COMMANDS_TASK_PAUSE", "key": "p", "source": { "line": 3114, "lines": "3114-3114", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_reverse", "control_id": "AXIS-SHORTCUT-R-COMMANDS_TASK_REVERSE", "key": "R", "source": { "line": 3115, "lines": "3115-3115", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_forward", "control_id": "AXIS-SHORTCUT-F-COMMANDS_TASK_FORWARD", "key": "F", "source": { "line": 3116, "lines": "3116-3116", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.cycle_view", "control_id": "AXIS-SHORTCUT-V-COMMANDS_CYCLE_VIEW", "key": "v", "source": { "line": 3117, "lines": "3117-3117", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "#nothing", "control_id": "AXIS-SHORTCUT-ALT_P-NOTHING", "key": "", "source": { "line": 3118, "lines": "3118-3118", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.task_run", "control_id": "AXIS-SHORTCUT-R-COMMANDS_TASK_RUN", "key": "r", "source": { "line": 3119, "lines": "3119-3119", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.reload_file", "control_id": "AXIS-SHORTCUT-CONTROL_R-COMMANDS_RELOAD_FILE", "key": "", "source": { "line": 3120, "lines": "3120-3120", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.save_gcode", "control_id": "AXIS-SHORTCUT-CONTROL_S-COMMANDS_SAVE_GCODE", "key": "", "source": { "line": 3121, "lines": "3121-3121", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.estop_clicked", "control_id": "AXIS-SHORTCUT-KEY_F1-COMMANDS_ESTOP_CLICKED", "key": "", "source": { "line": 3122, "lines": "3122-3122", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.onoff_clicked", "control_id": "AXIS-SHORTCUT-KEY_F2-COMMANDS_ONOFF_CLICKED", "key": "", "source": { "line": 3123, "lines": "3123-3123", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.mist_toggle", "control_id": "AXIS-SHORTCUT-KEY_F7-COMMANDS_MIST_TOGGLE", "key": "", "source": { "line": 3124, "lines": "3124-3124", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.flood_toggle", "control_id": "AXIS-SHORTCUT-KEY_F8-COMMANDS_FLOOD_TOGGLE", "key": "", "source": { "line": 3125, "lines": "3125-3125", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_forward_toggle", "control_id": "AXIS-SHORTCUT-KEY_F9-COMMANDS_SPINDLE_FORWARD_TOGGLE", "key": "", "source": { "line": 3126, "lines": "3126-3126", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_backward_toggle", "control_id": "AXIS-SHORTCUT-KEY_F10-COMMANDS_SPINDLE_BACKWARD_TOGGLE", "key": "", "source": { "line": 3127, "lines": "3127-3127", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_decrease", "control_id": "AXIS-SHORTCUT-KEY_F11-COMMANDS_SPINDLE_DECREASE", "key": "", "source": { "line": 3128, "lines": "3128-3128", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.spindle_increase", "control_id": "AXIS-SHORTCUT-KEY_F12-COMMANDS_SPINDLE_INCREASE", "key": "", "source": { "line": 3129, "lines": "3129-3129", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.brake_on", "control_id": "AXIS-SHORTCUT-B-COMMANDS_BRAKE_ON", "key": "B", "source": { "line": 3130, "lines": "3130-3130", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.brake_off", "control_id": "AXIS-SHORTCUT-B-COMMANDS_BRAKE_OFF", "key": "b", "source": { "line": 3131, "lines": "3131-3131", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.clear_live_plot", "control_id": "AXIS-SHORTCUT-CONTROL_K-COMMANDS_CLEAR_LIVE_PLOT", "key": "", "source": { "line": 3132, "lines": "3132-3132", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "x", "control_id": "AXIS-SHORTCUT-X-X", "key": "x", "source": { "line": 3136, "lines": "3136-3136", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "y", "control_id": "AXIS-SHORTCUT-Y-Y", "key": "y", "source": { "line": 3137, "lines": "3137-3137", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "z", "control_id": "AXIS-SHORTCUT-Z-Z", "key": "z", "source": { "line": 3138, "lines": "3138-3138", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "a", "control_id": "AXIS-SHORTCUT-A-A", "key": "a", "source": { "line": 3139, "lines": "3139-3139", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(0", "control_id": "AXIS-SHORTCUT-UNNAMED-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_0", "key": "`", "source": { "line": 3142, "lines": "3142-3142", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(1", "control_id": "AXIS-SHORTCUT-1-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_1", "key": "1", "source": { "line": 3143, "lines": "3143-3143", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(2", "control_id": "AXIS-SHORTCUT-2-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_2", "key": "2", "source": { "line": 3144, "lines": "3144-3144", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(3", "control_id": "AXIS-SHORTCUT-3-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_3", "key": "3", "source": { "line": 3145, "lines": "3145-3145", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(4", "control_id": "AXIS-SHORTCUT-4-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_4", "key": "4", "source": { "line": 3146, "lines": "3146-3146", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(5", "control_id": "AXIS-SHORTCUT-5-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_5", "key": "5", "source": { "line": 3147, "lines": "3147-3147", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(6", "control_id": "AXIS-SHORTCUT-6-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_6", "key": "6", "source": { "line": 3148, "lines": "3148-3148", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(7", "control_id": "AXIS-SHORTCUT-7-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_7", "key": "7", "source": { "line": 3149, "lines": "3149-3149", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(8", "control_id": "AXIS-SHORTCUT-8-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_8", "key": "8", "source": { "line": 3150, "lines": "3150-3150", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(9", "control_id": "AXIS-SHORTCUT-9-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_9", "key": "9", "source": { "line": 3151, "lines": "3151-3151", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: activate_ja_widget_or_set_feedrate(10", "control_id": "AXIS-SHORTCUT-0-LAMBDA_EVENT_ACTIVATE_JA_WIDGET_OR_SET_FEEDRATE_10", "key": "0", "source": { "line": 3152, "lines": "3152-3152", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_continuous(", "control_id": "AXIS-SHORTCUT-C-LAMBDA_EVENT_JOGSPEED_CONTINUOUS", "key": "c", "source": { "line": 3154, "lines": "3154-3154", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: widgets.rotate.invoke(", "control_id": "AXIS-SHORTCUT-D-LAMBDA_EVENT_WIDGETS_ROTATE_INVOKE", "key": "d", "source": { "line": 3155, "lines": "3155-3155", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_incremental(", "control_id": "AXIS-SHORTCUT-I-LAMBDA_EVENT_JOGSPEED_INCREMENTAL", "key": "i", "source": { "line": 3156, "lines": "3156-3156", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: jogspeed_incremental(-1", "control_id": "AXIS-SHORTCUT-I-LAMBDA_EVENT_JOGSPEED_INCREMENTAL_1", "key": "I", "source": { "line": 3157, "lines": "3157-3157", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "set metric [expr {!$metric}]; redraw", "control_id": "AXIS-SHORTCUT-UNNAMED-SET_METRIC_EXPR_METRIC_REDRAW", "key": "!", "source": { "line": 3158, "lines": "3158-3158", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_display_type", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_DISPLAY_TYPE", "key": "@", "source": { "line": 3159, "lines": "3159-3159", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_coord_type", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_COORD_TYPE", "key": "#", "source": { "line": 3160, "lines": "3160-3160", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_teleop_mode", "control_id": "AXIS-SHORTCUT-UNNAMED-COMMANDS_TOGGLE_TELEOP_MODE", "key": "$", "source": { "line": 3161, "lines": "3161-3161", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.home_joint", "control_id": "AXIS-SHORTCUT-HOME-COMMANDS_HOME_JOINT", "key": "", "source": { "line": 3163, "lines": "3163-3163", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KP_HOME-KEYPRESS", "key": "", "source": { "line": 3164, "lines": "3164-3164", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.home_all_joints", "control_id": "AXIS-SHORTCUT-CONTROL_HOME-COMMANDS_HOME_ALL_JOINTS", "key": "", "source": { "line": 3165, "lines": "3165-3165", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_axis_offset", "control_id": "AXIS-SHORTCUT-SHIFT_HOME-COMMANDS_SET_AXIS_OFFSET", "key": "", "source": { "line": 3166, "lines": "3166-3166", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.touch_off_system", "control_id": "AXIS-SHORTCUT-END-COMMANDS_TOUCH_OFF_SYSTEM", "key": "", "source": { "line": 3167, "lines": "3167-3167", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.touch_off_tool", "control_id": "AXIS-SHORTCUT-CONTROL_END-COMMANDS_TOUCH_OFF_TOOL", "key": "", "source": { "line": 3168, "lines": "3168-3168", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-CONTROL_KP_HOME-KEYPRESS", "key": "", "source": { "line": 3169, "lines": "3169-3169", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-SHIFT_KP_HOME-KEYPRESS", "key": "", "source": { "line": 3170, "lines": "3170-3170", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KP_END-KEYPRESS", "key": "", "source": { "line": 3171, "lines": "3171-3171", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_S-KEYPRESS", "key": "", "source": { "line": 3320, "lines": "3320-3320", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_S-KEYPRESS-2", "key": "", "source": { "line": 3321, "lines": "3321-3321", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "-get_max_jog_speed_map(d", "control_id": "AXIS-SHORTCUT-SHIFT_KEYPRESS_S-GET_MAX_JOG_SPEED_MAP_D", "key": "", "source": { "line": 3322, "lines": "3322-3322", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "get_max_jog_speed_map(d", "control_id": "AXIS-SHORTCUT-SHIFT_KEYPRESS_S-GET_MAX_JOG_SPEED_MAP_D-2", "key": "", "source": { "line": 3323, "lines": "3323-3323", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda e: jog_off_map(d", "control_id": "AXIS-SHORTCUT-KEYRELEASE_S-LAMBDA_E_JOG_OFF_MAP_D", "key": "", "source": { "line": 3324, "lines": "3324-3324", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda e: jog_off_map(d", "control_id": "AXIS-SHORTCUT-KEYRELEASE_S-LAMBDA_E_JOG_OFF_MAP_D-2", "key": "", "source": { "line": 3325, "lines": "3325-3325", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".", "control_id": "AXIS-SHORTCUT-FOCUSOUT-UNNAMED", "key": "", "source": { "line": 3327, "lines": "3327-3327", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_BEGIN-KEYPRESS", "key": "", "source": { "line": 3731, "lines": "3731-3731", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_INSERT-KEYPRESS", "key": "", "source": { "line": 3732, "lines": "3732-3732", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_NEXT-KEYPRESS", "key": "", "source": { "line": 3771, "lines": "3771-3771", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "KeyPress", "control_id": "AXIS-SHORTCUT-KEYPRESS_KP_PRIOR-KEYPRESS", "key": "", "source": { "line": 3772, "lines": "3772-3772", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "nomodifier(commands.jog_minus", "control_id": "AXIS-SHORTCUT-KEYPRESS_MINUS-NOMODIFIER_COMMANDS_JOG_MINUS", "key": "", "source": { "line": 3774, "lines": "3774-3774", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "nomodifier(commands.jog_plus", "control_id": "AXIS-SHORTCUT-KEYPRESS_EQUAL-NOMODIFIER_COMMANDS_JOG_PLUS", "key": "", "source": { "line": 3775, "lines": "3775-3775", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.jog_stop", "control_id": "AXIS-SHORTCUT-KEYRELEASE_MINUS-COMMANDS_JOG_STOP", "key": "", "source": { "line": 3776, "lines": "3776-3776", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.jog_stop", "control_id": "AXIS-SHORTCUT-KEYRELEASE_EQUAL-COMMANDS_JOG_STOP", "key": "", "source": { "line": 3777, "lines": "3777-3777", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".tabs raise manual", "control_id": "AXIS-SHORTCUT-KEY_F3-TABS_RAISE_MANUAL", "key": "", "source": { "line": 3854, "lines": "3854-3854", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": ".tabs raise mdi", "control_id": "AXIS-SHORTCUT-KEY_F5-TABS_RAISE_MDI", "key": "", "source": { "line": 3855, "lines": "3855-3855", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "+", "control_id": "AXIS-SHORTCUT-KEY_F5-UNNAMED", "key": "", "source": { "line": 3856, "lines": "3856-3856", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.next_tab", "control_id": "AXIS-SHORTCUT-KEY_F4-COMMANDS_NEXT_TAB", "key": "", "source": { "line": 3857, "lines": "3857-3857", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.toggle_show_pyvcppanel", "control_id": "AXIS-SHORTCUT-CONTROL_E-COMMANDS_TOGGLE_SHOW_PYVCPPANEL", "key": "", "source": { "line": 3933, "lines": "3933-3933", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "lambda event: notifications.clear(", "control_id": "AXIS-SHORTCUT-CONTROL_SPACE-LAMBDA_EVENT_NOTIFICATIONS_CLEAR", "key": "", "source": { "line": 3968, "lines": "3968-3968", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "\"\"", "control_id": "AXIS-SHORTCUT-UNNAMED-UNSPECIFIED", "key": "$", "source": { "line": 4134, "lines": "4134-4134", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_view_y2", "control_id": "AXIS-SHORTCUT-V-COMMANDS_SET_VIEW_Y2", "key": "v", "source": { "line": 4140, "lines": "4140-4140", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "commands.set_view_y", "control_id": "AXIS-SHORTCUT-V-COMMANDS_SET_VIEW_Y", "key": "v", "source": { "line": 4143, "lines": "4143-4143", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } }, { "category": "shortcut", "command": "\"\"", "control_id": "AXIS-SHORTCUT-D-UNSPECIFIED", "key": "d", "source": { "line": 4144, "lines": "4144-4144", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python keyboard binding" } } ], "toolbar": [ { "category": "toolbar", "command": null, "control_id": "AXIS-TOOLBAR-MACHINE_ESTOP", "helptext": "Toggle Emergency Stop [F1]", "image": "tool_estop", "source": { "line": 490, "lines": "490-497", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.machine_estop" }, { "category": "toolbar", "command": "onoff_clicked \\", "control_id": "AXIS-TOOLBAR-MACHINE_POWER", "helptext": "Toggle Machine power [F2]", "image": "tool_power", "source": { "line": 498, "lines": "498-508", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.machine_power" }, { "category": "toolbar", "command": "open_file", "control_id": "AXIS-TOOLBAR-FILE_OPEN", "helptext": "Open G-Code file [O]", "image": "tool_open", "source": { "line": 509, "lines": "509-516", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.file_open" }, { "category": "toolbar", "command": "reload_file", "control_id": "AXIS-TOOLBAR-RELOAD", "helptext": "Reopen current file [Ctrl-R]", "image": "tool_reload", "source": { "line": 517, "lines": "517-526", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.reload" }, { "category": "toolbar", "command": "task_run \\", "control_id": "AXIS-TOOLBAR-PROGRAM_RUN", "helptext": "Begin executing current file [R]", "image": "tool_run", "source": { "line": 527, "lines": "527-534", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_run" }, { "category": "toolbar", "command": "task_step \\", "control_id": "AXIS-TOOLBAR-PROGRAM_STEP", "helptext": "Execute next line [T]", "image": "tool_step", "source": { "line": 535, "lines": "535-542", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_step" }, { "category": "toolbar", "command": "task_pauseresume \\", "control_id": "AXIS-TOOLBAR-PROGRAM_PAUSE", "helptext": "Pause [P] / resume [S] execution", "image": "tool_pause", "source": { "line": 543, "lines": "543-557", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_pause" }, { "category": "toolbar", "command": "task_stop \\", "control_id": "AXIS-TOOLBAR-PROGRAM_STOP", "helptext": "Stop program execution [ESC]", "image": "tool_stop", "source": { "line": 558, "lines": "558-567", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_stop" }, { "category": "toolbar", "command": "set block_delete [expr {!$block_delete", "control_id": "AXIS-TOOLBAR-PROGRAM_BLOCKDELETE", "helptext": "Toggle skip lines with '/' [Alt-M /]", "image": "tool_blockdelete", "source": { "line": 568, "lines": "568-574", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_blockdelete" }, { "category": "toolbar", "command": "set optional_stop [expr {!$optional_stop", "control_id": "AXIS-TOOLBAR-PROGRAM_OPTPAUSE", "helptext": "Toggle optional pause [Alt-M 1]", "image": "tool_optpause", "source": { "line": 575, "lines": "575-583", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.program_optpause" }, { "category": "toolbar", "command": "zoomin \\", "control_id": "AXIS-TOOLBAR-VIEW_ZOOMIN", "helptext": "Zoom in", "image": "tool_zoomin", "source": { "line": 584, "lines": "584-591", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_zoomin" }, { "category": "toolbar", "command": "zoomout \\", "control_id": "AXIS-TOOLBAR-VIEW_ZOOMOUT", "helptext": "Zoom out", "image": "tool_zoomout", "source": { "line": 592, "lines": "592-599", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_zoomout" }, { "category": "toolbar", "command": "set_view_z \\", "control_id": "AXIS-TOOLBAR-VIEW_Z", "helptext": "Top view", "image": "tool_axis_z", "source": { "line": 600, "lines": "600-607", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_z" }, { "category": "toolbar", "command": "set_view_z2 \\", "control_id": "AXIS-TOOLBAR-VIEW_Z2", "helptext": "Rotated top view", "image": "tool_axis_z2", "source": { "line": 608, "lines": "608-615", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_z2" }, { "category": "toolbar", "command": "set_view_x \\", "control_id": "AXIS-TOOLBAR-VIEW_X", "helptext": "Side view", "image": "tool_axis_x", "source": { "line": 616, "lines": "616-623", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_x" }, { "category": "toolbar", "command": "set_view_y \\", "control_id": "AXIS-TOOLBAR-VIEW_Y", "helptext": "Front view", "image": "tool_axis_y", "source": { "line": 624, "lines": "624-631", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_y" }, { "category": "toolbar", "command": "set_view_y2 \\", "control_id": "AXIS-TOOLBAR-VIEW_Y2", "helptext": "Inverted Front view", "image": "tool_axis_y2", "source": { "line": 632, "lines": "632-639", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_y2" }, { "category": "toolbar", "command": "set_view_p \\", "control_id": "AXIS-TOOLBAR-VIEW_P", "helptext": "Perspective view", "image": "tool_axis_p", "source": { "line": 640, "lines": "640-647", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.view_p" }, { "category": "toolbar", "command": "set rotate_mode [expr {!$rotate_mode", "control_id": "AXIS-TOOLBAR-ROTATE", "helptext": "Toggle between Drag and Rotate Mode [D]", "image": "tool_rotate", "source": { "line": 648, "lines": "648-662", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.rotate" }, { "category": "toolbar", "command": "clear_live_plot \\", "control_id": "AXIS-TOOLBAR-CLEAR_PLOT", "helptext": "Clear live plot [Ctrl-K]", "image": "tool_clear", "source": { "line": 663, "lines": "663-682", "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl toolbar" }, "widget": ".toolbar.clear_plot" } ] }, "counts": { "contract": 187, "mapping_gaps": 153, "menus": 80, "panels": 5, "react_feature_ids": 29, "shortcuts": 82, "toolbar": 20 }, "failure_samples": [ { "id": "PANEL-01-MENU-ACTION-ID", "reason": "AXIS menu inventory has per-action stable IDs, but React currently exposes only AXIS-UI-02 on the menu container.", "source": "linuxcnc/share/axis/tcl/axis.tcl", "status": "blocked" }, { "id": "PANEL-01-AUTO-TAB", "reason": "AXIS AUTO execution is source-defined, while React has no dedicated Auto tab/control identity.", "source": "linuxcnc/share/axis/tcl/axis.tcl", "status": "blocked" }, { "id": "PANEL-01-SHORTCUT-CLOSURE", "reason": "Source keyboard bindings include view, spindle, coolant, jog and touch-off shortcuts that are not all declared in the React keyboard contract.", "source": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "status": "blocked" }, { "feature_ids": [ "AXIS-MACHINE-03" ], "id": "PANEL-01-REACT-ID-COLLISION", "reason": "AXIS-MACHINE-03 is reused for reset and program-run controls; stable IDs are not one-to-one.", "source": "web/react/src/App.tsx", "status": "blocked" } ], "implementation_status": "source_inventory_complete_web_control_mapping_blocked", "inventory_status": "verified", "manual_execution": { "boundary": "manual native GUI evidence supports source control comparison only; it is not a WASM or release-candidate oracle", "evidence": [ { "bytes": 170326, "path": "coverage/panel-01-manual-axis-running.png", "role": "manual AXIS running DRO/motion", "sha256": "7acd6aa950c1e35d3ab3a8cde1ed79e0e94d0c6443625da5d440c90075ac5f3b", "status": "present" }, { "bytes": 155222, "path": "coverage/panel-01-manual-axis-complete.png", "role": "manual AXIS M2/idle completion", "sha256": "f3fc1b076d74374b1548a36b50f485a207ff52dee99868f78cf2e9bc612ed1d0", "status": "present" } ], "launcher": "scripts/launch_axis_3dtest_manual.sh", "samples": { "boundary": { "code": "NOT_HOMED", "message": "Can't run a program when not homed", "status": "rejected_before_motion" }, "completion": { "dro": [ 0.0, 0.0, 0.0 ], "highlight_line": 53, "interp_state": "IDLE", "program_end": "M2", "program_end_line": 54 }, "initial": { "dro": [ 0.0, 0.0, 0.0 ], "interp_state": "IDLE" }, "running": { "current_line": 6, "dro": [ 25.32, 50.72, 0.0 ], "interp_state": "RUNNING" } }, "simulation_only": true, "state_transitions": [ "ESTOP", "ESTOP_RESET/OFF", "ON", "all three joints homed", "AUTO/RUNNING", "AUTO/IDLE at M2" ], "status": "verified", "tool_path": "tool/linuxcnc-axis-manual-execution", "window": { "class": "axis", "instance": "Axis", "size": [ 1300, 1297 ], "title": "3dtest.ngc - AXIS 2.10.0~pre1 on 3axis-tutorial" } }, "react": { "dom_ids": [ "axis-panel-dro", "axis-panel-manual", "axis-panel-mdi", "axis-panel-preview", "axis-program", "axis-tab-dro", "axis-tab-manual", "axis-tab-mdi", "axis-tab-preview" ], "feature_ids": [ "AXIS-CTRL-02", "AXIS-CTRL-03", "AXIS-EDIT-01", "AXIS-EDIT-03", "AXIS-FILE-01", "AXIS-FILE-02", "AXIS-FILE-04", "AXIS-MACHINE-01", "AXIS-MACHINE-02", "AXIS-MACHINE-03", "AXIS-MACHINE-05", "AXIS-MACHINE-06", "AXIS-MACHINE-07", "AXIS-MACHINE-08", "AXIS-MACHINE-09", "AXIS-MANUAL-01", "AXIS-SHELL-01", "AXIS-UI-01", "AXIS-UI-02", "AXIS-UI-05", "AXIS-UI-06", "AXIS-UI-07", "AXIS-VIEW-01", "AXIS-VIEW-02", "AXIS-VIEW-03", "AXIS-VIEW-04", "AXIS-VIEW-15", "AXIS-VIEW-17", "AXIS-VIEW-18" ], "feature_occurrences": { "AXIS-CTRL-02": [ 77, 77 ], "AXIS-CTRL-03": [ 62, 62, 62 ], "AXIS-EDIT-01": [ 77, 77, 77, 77 ], "AXIS-EDIT-03": [ 175, 175, 175 ], "AXIS-FILE-01": [ 174 ], "AXIS-FILE-02": [ 174 ], "AXIS-FILE-04": [ 174 ], "AXIS-MACHINE-01": [ 174 ], "AXIS-MACHINE-02": [ 174 ], "AXIS-MACHINE-03": [ 174, 174 ], "AXIS-MACHINE-05": [ 174 ], "AXIS-MACHINE-06": [ 174 ], "AXIS-MACHINE-07": [ 174 ], "AXIS-MACHINE-08": [ 174 ], "AXIS-MACHINE-09": [ 174 ], "AXIS-MANUAL-01": [ 50 ], "AXIS-SHELL-01": [ 172, 172, 180 ], "AXIS-UI-01": [ 171 ], "AXIS-UI-02": [ 30, 173 ], "AXIS-UI-05": [ 174 ], "AXIS-UI-06": [ 176, 176, 176 ], "AXIS-UI-07": [ 77, 77, 180, 180 ], "AXIS-VIEW-01": [ 174, 174, 174, 174, 174, 174, 174, 174 ], "AXIS-VIEW-02": [ 72, 174 ], "AXIS-VIEW-03": [ 177, 177 ], "AXIS-VIEW-04": [ 72 ], "AXIS-VIEW-15": [ 174 ], "AXIS-VIEW-17": [ 72, 180 ], "AXIS-VIEW-18": [ 72 ] }, "label_sample": [ "label", "ariaLabel", "children", "label", "children", "children", "shortcut && ", "shortcut", "axis.toUpperCase()", "Manual Control", "[", "Jog increment", "Spindle counter-clockwise", "Spindle clockwise", "jogSpeed", "maxVelocity", "MDI Control", "history.length ? history.map((line, index) =", "line", "DRO", "labels.slice(0, Math.max(3, axes.length)).map((label, index) =", "label", "format(coordType === ", "format(actual)", "format(relativeValue)", "metric ? ", "coordType", "G-code program", "G-code line numbers", "lines.map((_, index) =", "index + 1", "G-code program", "Active G-Codes", "diagnostic && ", "diagnostic", "state.status.toUpperCase()", "`Machine $", "taskState", "AXIS menu", "File" ], "path": "web/react/src/App.tsx", "sha256": "e81e38a8ea5217e4d02a58642b5a238ab65888eb8ea1403f58700cb85a141b58" }, "report_sha256": "a508c4bc092a71fe012b404afb1634717f29af5dbf54573674a3b4eeb0638ba7", "schema": "panel-01-source-control-inventory.v1", "source": [ { "bytes": 63423, "path": "linuxcnc/share/axis/tcl/axis.tcl", "role": "AXIS Tcl UI", "sha256": "c9f0b4dc686717b37565f85fb0ab8cc8ded9cfa0028cc0aaaccdbcf808c4c524", "status": "indexed" }, { "bytes": 157381, "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "role": "AXIS Python command and shortcut implementation", "sha256": "328c038a1e8fefd952e53c8e398e3fa98b04602351c44318edd1b044e8f63ffa", "status": "indexed" }, { "bytes": 5389, "path": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini", "role": "selected 3axis-tutorial INI", "sha256": "07e4fafa71e13ac3749fd860ee7549b762f521b9ca58c32110a9f582554882dc", "status": "indexed" }, { "bytes": 37270, "path": "web/react/src/App.tsx", "role": "React projection/control IDs", "sha256": "e81e38a8ea5217e4d02a58642b5a238ab65888eb8ea1403f58700cb85a141b58", "status": "indexed" } ], "status": "blocked", "stop_reason": "SOURCE_CONTROL_MAPPING_BLOCKED: source inventory is complete, but per-action React IDs, Auto panel identity and shortcut closure are not complete; do not promote PANEL-01 or release.", "task_id": "PANEL-01-SOURCE-CONTROL-INVENTORY" }