patch 8.1.0020: cannot tell whether a register is executing or recording
Problem: Cannot tell whether a register is being used for executing or
recording.
Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi,
closes #2745) Rename the global variables for consistency. Store
the register name in reg_executing.
diff --git a/src/ops.c b/src/ops.c
index 9af466b..1bc51d8 100644
--- a/src/ops.c
+++ b/src/ops.c
@@ -1091,14 +1091,14 @@
yankreg_T *old_y_previous, *old_y_current;
int retval;
- if (Recording == FALSE) /* start recording */
+ if (reg_recording == 0) /* start recording */
{
/* registers 0-9, a-z and " are allowed */
if (c < 0 || (!ASCII_ISALNUM(c) && c != '"'))
retval = FAIL;
else
{
- Recording = c;
+ reg_recording = c;
showmode();
regname = c;
retval = OK;
@@ -1111,7 +1111,7 @@
* needs to be removed again to put it in a register. exec_reg then
* adds the escaping back later.
*/
- Recording = FALSE;
+ reg_recording = 0;
MSG("");
p = get_recorded();
if (p == NULL)
@@ -1318,7 +1318,7 @@
== FAIL)
return FAIL;
}
- Exec_reg = TRUE; /* disable the 'q' command */
+ reg_executing = regname == 0 ? '"' : regname; // disable "q" command
}
return retval;
}