Edit a macro, no re-recording

A recording is only the first draft. Every click you captured is sitting in an action list you can read, retime, and rewrite, with no new recording. This lab runs five small experiments on the macro you already built: call your shot, change one thing, replay, and read the board. By the end you break the macro on purpose and rebuild a click by hand.

read every row retime & re-aim no re-recording Free 10 min

Open the target first. It opens in a new tab. Replay your edited macro against it and read the verdict as you go.

Open Target Board

This is the same four-pad board from your first macro: click pad 1, click pad 2, type a letter in pad 3, click pad 4, in order. It scores which pads you hit, any out-of-order clicks as Order errors, how close to centre each click lands as off-centre pixels, and a final verdict. Press R on the target to reset between replays.

Edit the macro

  1. Load your macro and turn on the Duration column Load the macro you saved in Your first macro: select it in the left list and click Load. (Skipped that lab? Record a quick pad 1, pad 2, type, pad 4 run first.) The action list opens with four columns; the one this lab leans on is hidden. Right-click the column header and tick Duration. You should see it fill with your recorded gaps in seconds, no two the same: your own hand's timing, written down and now editable. This list is the macro.
    Your recording, read as rows. Each pad click is two rows, a ClickAction PRESS then a RELEASE at the same spot; the letter is a KeyAction pair. Timestamp counts from the run's start, Duration is the gap right before each row. Your numbers will differ.
  2. Experiment 1: stretch a Duration into a pause Call it first: if Duration is the gap before a row fires, raising it on pad 4's PRESS row should make the run wait right before the last click. Double-click that row to open Edit ClickAction, set Duration to 3.000 s, and click OK, watching the Timestamp column as you do: the pad 4 rows jump three seconds later, one edit rewriting the timeline. Press R on the board and Play All. You should see pads 1 to 3 at your recorded pace, then pad 4 sit as the only lit pad for a full three-count before the click lands. Still 4/4 in order, Order errors 0. You changed when it clicks without touching where.
    Pad 4's PRESS row, retimed. Duration is the only cell you touch; Position stays put.
  3. Experiment 2: move a click and read it in pixels Note what Last click off-centre reads. Predict: the board scores each click by its distance from the pad's centre, so nudging pad 4's click 20 pixels should move that number by about 20. It takes two edits, because a click is a PRESS row and a RELEASE row (step 1's figure) and the board scores where the mouse comes up. Add 20 to Position X on both of pad 4's rows, press R, and Play All. You should see Last click off-centre climb by roughly your nudge, Average off-centre with it, still 4/4 and 0 Order errors: the click moved but stayed on the pad. Put both rows back and replay, and the reading drops right back. The target lives in the row, not the recording.
  4. Experiment 3: break it on purpose, and predict the wreckage Find pad 2's click pair and write down the two numbers in its Detail (742 and 324 in the step 1 figure; yours differ). You will need them in a minute. Predict the wreckage with that click gone: pad 1 green, pad 2 lit and waiting forever, the pad 3 and pad 4 clicks firing out of turn, so Order errors reads 2 and no verdict ever shows. Click the PRESS row, Ctrl-click the RELEASE row, right-click the pair and choose Delete. Press R and Play All. You should see the state below, exactly what you called; even the typed letter lands nowhere, because pad 3 never opened. Two rows gone, the whole behaviour with them.
    The wreckage, if you called it right.
  5. Experiment 4: write the click back with Insert No re-recording. Right-click pad 1's RELEASE row and choose Insert below: the dialog opens holding a copy of that row, Duration at 0.000. Set it to about 0.3 s and type your noted pad 2 numbers into Position. One more prediction before OK: this release has no press in front of it, so expect the editor to object. It does, left frame below. Right-click the new row, choose Insert matching press, and the flag clears as the press splices in above, same spot, same time (right frame). Press R and Play All. You should see 4/4 in order, Order errors 0, your three-second pause still intact. You did not re-record that click. You wrote it.
    The rebuilt click, before and after. The red tint and amber line are the editor's pairing check. Insert matching press writes the missing half and clears the flag.
Checkpoint

Press R, then Play All. The verdict reads Run complete, 4/4 in order, Order errors is 0, and the run visibly waits about three seconds before pad 4. The Duration on pad 4's press is that pause, and the pad 2 click that now lands cleanly is one you built by hand after deleting the original. You retimed, re-aimed and reset, then destroyed and rebuilt an action, without recording a single new click. Press R and replay once more to prove it repeats the same every time.

Make it yours

One last prediction, the big one. Click the first row, hold Shift and click the last to select the whole macro, then right-click inside the selection and choose Edit 159 actions... (the number is your row count). In the dialog, tick the Ignore Duration row so it applies to every selected action, tick the box it enables, and click OK. Before you play: will it still read 4/4 in order when every gap, including your three-second pause, is skipped? Press R and Play All. The whole run fires in about a second and still scores 4/4 with 0 Order errors. Order lives in the rows; timing is only the gaps between them. To put the pause back, reload the macro from the list, or open the same item again and apply Ignore Duration with its box left clear.

If it went wrong

  • The reading did not move when you moved the click You edited only one of the two rows. A click is a PRESS row and a RELEASE row, and the board scores where the mouse comes up, the release. Change Position on both rows, then press R and replay.
  • Order errors will not go back to 0 after the rebuild The rebuilt click is out of order or only half there. It needs a PRESS and a RELEASE at pad 2's spot, sitting right after pad 1's rows, with no red or amber warning left in the list. If a row is still red, right-click it and choose Insert matching press.
  • A "Macro has issues" box appears when you press Play You replayed while a press or release was still unpaired. That is the editor checking with you, not a fault. Click No, right-click the flagged row and choose Insert matching press, then Play All.
  • The board resets or the layout changes on its own mid-run Your Lab 1 letter was R or F. During the broken replay in Experiment 3 that letter fires with nothing selected, and R resets the board while F flips it into focus mode. Re-record step 3 with a different letter, or delete the two Key rows for this lab.
  • You deleted the wrong rows Deletes from a loaded macro are kept in the toolbar History dialog. Open History, restore them, and try again.
  • Playback clicks the wrong spots The board moved since you recorded. Keep the Target Board tab in the same place and press R before each replay.

Stuck?

Grab the finished macro. Download the edited version and open QHuman's Import shared file... to load it, then compare its action list to yours. Its coordinates were captured on another screen, so use it to read the rows, not to replay.

Download the solution (.qhz)

Keep going

Want the full detail on the action editor, Duration, Position, and inserting or deleting actions? Read the editor guide. Ready for the next lab? Next up is Hotkeys three ways, where you drive this same macro from a hotkey by press_release, while_held, and toggle, instead of Play All.