mirror of
https://github.com/neovim/neovim.git
synced 2025-09-18 09:18:19 +00:00
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:
@@ -552,7 +552,10 @@ static bool normal_need_additional_char(NormalState *s)
|
||||
// needs to be followed by a second char, examples:
|
||||
// - qc => record using register c
|
||||
// - q: => open command-line window
|
||||
|| (cmdchar == 'q' && !pending_op && !Recording && !Exec_reg)
|
||||
|| (cmdchar == 'q'
|
||||
&& !pending_op
|
||||
&& reg_recording == 0
|
||||
&& reg_executing == 0)
|
||||
// 'a' or 'i' after an operator is a text object, examples:
|
||||
// - ciw => change inside word
|
||||
// - da( => delete parenthesis and everything inside.
|
||||
@@ -7686,7 +7689,7 @@ static void nv_record(cmdarg_T *cap)
|
||||
} else {
|
||||
// (stop) recording into a named register, unless executing a
|
||||
// register.
|
||||
if (!Exec_reg && do_record(cap->nchar) == FAIL) {
|
||||
if (reg_executing == 0 && do_record(cap->nchar) == FAIL) {
|
||||
clearopbeep(cap->oap);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user