aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_cmds.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-01-16 22:02:14 -0500
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-01-17 12:42:28 -0500
commit402f2bda131d4f5aeb33957766ffb0523f43c879 (patch)
treee7a4683882415ecefbd576655cf0459f3e575ec3 /src/nvim/ex_cmds.c
parent6a01b3fcc361960e559db459e1524418bc76dd66 (diff)
downloadrneovim-402f2bda131d4f5aeb33957766ffb0523f43c879.tar.gz
rneovim-402f2bda131d4f5aeb33957766ffb0523f43c879.tar.bz2
rneovim-402f2bda131d4f5aeb33957766ffb0523f43c879.zip
vim-patch:8.2.2361: Vim9: no highlight for "s///gc" when using 'opfunc'
Problem: Vim9: no highlight for "s///gc" when using 'opfunc'. Solution: Reset 'lazyredraw' temporarily. (closes vim/vim#7687) https://github.com/vim/vim/commit/7c886db915035bc064ca307f02c34ae9d99cc733
Diffstat (limited to 'src/nvim/ex_cmds.c')
-rw-r--r--src/nvim/ex_cmds.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/nvim/ex_cmds.c b/src/nvim/ex_cmds.c
index 61e4d634c6..a2487336f1 100644
--- a/src/nvim/ex_cmds.c
+++ b/src/nvim/ex_cmds.c
@@ -3693,6 +3693,7 @@ static buf_T *do_sub(exarg_T *eap, proftime_T timeout,
} else {
char_u *orig_line = NULL;
int len_change = 0;
+ const bool save_p_lz = p_lz;
int save_p_fen = curwin->w_p_fen;
curwin->w_p_fen = FALSE;
@@ -3701,6 +3702,9 @@ static buf_T *do_sub(exarg_T *eap, proftime_T timeout,
int temp = RedrawingDisabled;
RedrawingDisabled = 0;
+ // avoid calling update_screen() in vgetorpeek()
+ p_lz = false;
+
if (new_start != NULL) {
/* There already was a substitution, we would
* like to show this to the user. We cannot
@@ -3754,7 +3758,8 @@ static buf_T *do_sub(exarg_T *eap, proftime_T timeout,
/* clear the question */
msg_didout = FALSE; /* don't scroll up */
msg_col = 0;
- gotocmdline(TRUE);
+ gotocmdline(true);
+ p_lz = save_p_lz;
// restore the line
if (orig_line != NULL) {