comparison src/normal.c @ 32748:a5a2a5e56c63 v9.0.1693

patch 9.0.1693: Ctrl-Q not handled like Ctrl-V in replace mode Commit: https://github.com/vim/vim/commit/2d63e4b3ccc0bb34db21a3c1d024cb114f8c4071 Author: Christian Brabandt <cb@256bit.org> Date: Sat Aug 12 00:03:57 2023 +0200 patch 9.0.1693: Ctrl-Q not handled like Ctrl-V in replace mode Problem: Ctrl-Q not handled like Ctrl-V in replace mode Solution: Handle Ctrl-Q like Ctrl-V closes: #12686 closes: #12684 Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 12 Aug 2023 00:15:03 +0200
parents 695b50472e85
children dfaddd6f039e
comparison
equal deleted inserted replaced
32747:581a2bf3f4d6 32748:a5a2a5e56c63
4765 return; 4765 return;
4766 } 4766 }
4767 #endif 4767 #endif
4768 4768
4769 // get another character 4769 // get another character
4770 if (cap->nchar == Ctrl_V) 4770 if (cap->nchar == Ctrl_V || cap->nchar == Ctrl_Q)
4771 { 4771 {
4772 had_ctrl_v = Ctrl_V; 4772 had_ctrl_v = Ctrl_V;
4773 cap->nchar = get_literal(FALSE); 4773 cap->nchar = get_literal(FALSE);
4774 // Don't redo a multibyte character with CTRL-V. 4774 // Don't redo a multibyte character with CTRL-V.
4775 if (cap->nchar > DEL) 4775 if (cap->nchar > DEL)
5049 5049
5050 if (!curbuf->b_p_ma) 5050 if (!curbuf->b_p_ma)
5051 emsg(_(e_cannot_make_changes_modifiable_is_off)); 5051 emsg(_(e_cannot_make_changes_modifiable_is_off));
5052 else 5052 else
5053 { 5053 {
5054 if (cap->extra_char == Ctrl_V) // get another character 5054 if (cap->extra_char == Ctrl_V || cap->extra_char == Ctrl_Q)
5055 // get another character
5055 cap->extra_char = get_literal(FALSE); 5056 cap->extra_char = get_literal(FALSE);
5056 if (cap->extra_char < ' ') 5057 if (cap->extra_char < ' ')
5057 // Prefix a control character with CTRL-V to avoid it being used as 5058 // Prefix a control character with CTRL-V to avoid it being used as
5058 // a command. 5059 // a command.
5059 stuffcharReadbuff(Ctrl_V); 5060 stuffcharReadbuff(Ctrl_V);