summaryrefslogtreecommitdiff
path: root/src/normal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/normal.c')
-rw-r--r--src/normal.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/normal.c b/src/normal.c
index d6773697a..869ada37a 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -8628,7 +8628,9 @@ nv_lineop(cap)
cap->oap->motion_type = MLINE;
if (cursor_down(cap->count1 - 1L, cap->oap->op_type == OP_NOP) == FAIL)
clearopbeep(cap->oap);
- else if ( cap->oap->op_type == OP_DELETE
+ else if ( (cap->oap->op_type == OP_DELETE /* only with linewise motions */
+ && cap->oap->motion_force != 'v'
+ && cap->oap->motion_force != Ctrl_V)
|| cap->oap->op_type == OP_LSHIFT
|| cap->oap->op_type == OP_RSHIFT)
beginline(BL_SOL | BL_FIX);