vim-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 vim/vim#2745)  Rename the global variables for consistency.  Store
            the register name in reg_executing.
0b6d911e5d
This commit is contained in:
Jan Edmund Lazo
2019-05-26 19:39:38 -04:00
parent fb4d5a1846
commit 21f160746a
13 changed files with 83 additions and 21 deletions

View File

@@ -852,13 +852,13 @@ int do_record(int c)
yankreg_T *old_y_previous;
int retval;
if (Recording == false) {
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;
@@ -869,7 +869,7 @@ int do_record(int c)
* needs to be removed again to put it in a register. exec_reg then
* adds the escaping back later.
*/
Recording = false;
reg_recording = 0;
if (ui_has(kUIMessages)) {
showmode();
} else {
@@ -1040,7 +1040,7 @@ do_execreg(
== FAIL)
return FAIL;
}
Exec_reg = TRUE; /* disable the 'q' command */
reg_executing = regname == 0 ? '"' : regname; // disable the 'q' command
}
return retval;
}