aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/normal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/normal.c')
-rw-r--r--src/nvim/normal.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/nvim/normal.c b/src/nvim/normal.c
index e7e6d2b365..ffdc8e23d7 100644
--- a/src/nvim/normal.c
+++ b/src/nvim/normal.c
@@ -6248,7 +6248,14 @@ static void nv_optrans(cmdarg_T *cap)
if (cap->count0) {
stuffnumReadbuff(cap->count0);
}
- stuffReadbuff(ar[strchr(str, (char)cap->cmdchar) - str]);
+ // If on an empty line and using 'x' and "l" is included in the
+ // whichwrap option, do not delete the next line.
+ if (cap->cmdchar == 'x' && vim_strchr(p_ww, 'l') != NULL
+ && gchar_cursor() == NUL) {
+ stuffReadbuff((char *)"dd");
+ } else {
+ stuffReadbuff(ar[strchr(str, (char)cap->cmdchar) - str]);
+ }
}
cap->opcount = 0;
}