aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/normal.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-08-12 06:41:23 +0800
committerGitHub <noreply@github.com>2023-08-12 06:41:23 +0800
commit8c5d81997e56a72fbb1392846a146cab2eb74b7f (patch)
treec682f6db2d06f87a42625b01da8933dc91af7921 /src/nvim/normal.c
parent8f9c5ee5ef298883e6de1a3a9c73b348b6398404 (diff)
downloadrneovim-8c5d81997e56a72fbb1392846a146cab2eb74b7f.tar.gz
rneovim-8c5d81997e56a72fbb1392846a146cab2eb74b7f.tar.bz2
rneovim-8c5d81997e56a72fbb1392846a146cab2eb74b7f.zip
vim-patch:9.0.1693: Ctrl-Q not handled like Ctrl-V in replace mode (#24669)
Problem: Ctrl-Q not handled like Ctrl-V in replace mode Solution: Handle Ctrl-Q like Ctrl-V closes: vim/vim#12686 closes: vim/vim#12684 https://github.com/vim/vim/commit/2d63e4b3ccc0bb34db21a3c1d024cb114f8c4071 Co-authored-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/nvim/normal.c')
-rw-r--r--src/nvim/normal.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/nvim/normal.c b/src/nvim/normal.c
index c5538fb7dd..b82a6b928d 100644
--- a/src/nvim/normal.c
+++ b/src/nvim/normal.c
@@ -4506,7 +4506,7 @@ static void nv_replace(cmdarg_T *cap)
}
// get another character
- if (cap->nchar == Ctrl_V) {
+ if (cap->nchar == Ctrl_V || cap->nchar == Ctrl_Q) {
had_ctrl_v = Ctrl_V;
cap->nchar = get_literal(false);
// Don't redo a multibyte character with CTRL-V.
@@ -4733,7 +4733,8 @@ static void nv_vreplace(cmdarg_T *cap)
if (!MODIFIABLE(curbuf)) {
emsg(_(e_modifiable));
} else {
- if (cap->extra_char == Ctrl_V) { // get another character
+ if (cap->extra_char == Ctrl_V || cap->extra_char == Ctrl_Q) {
+ // get another character
cap->extra_char = get_literal(false);
}
if (cap->extra_char < ' ') {