+ /* Do not save the keys being held when stopping the recording,
+ * i.e. the keys used to access the layer DYN_REC_STOP is on.
+ */
+ while (macro_pointer != macro_buffer &&
+ (macro_pointer - direction)->event.pressed) {
+ dprintln("dynamic macro: trimming a trailing key-down event");
+ macro_pointer -= direction;
+ }
+
+ dprintf(
+ "dynamic macro: slot %d saved, length: %d\n",
+ DYNAMIC_MACRO_CURRENT_SLOT(),
+ DYNAMIC_MACRO_CURRENT_LENGTH(macro_buffer, macro_pointer));
+