diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index 88ada7f325c31e63820fca34553998c8e1e9c627..ba7d10196bd12fd3a67e098426413d5583495726 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -480,6 +480,8 @@ void FakeVimHandler::Private::finishMovement(const QString &dotCommand)
         m_mode = InsertMode;
         m_submode = NoSubMode;
     } else if (m_submode == DeleteSubMode) {
+        //if (m_moveType == MoveExclusive)
+        //    moveLeft(); // correct 
         if (!dotCommand.isEmpty())
             m_dotCommand = "d" + dotCommand;
         m_registers[m_register] = recordRemoveSelectedText();
@@ -504,10 +506,8 @@ void FakeVimHandler::Private::finishMovement(const QString &dotCommand)
         m_tc.setPosition(startBlock.position());
         moveToFirstNonBlankOnLine();
         m_submode = NoSubMode;
-    } else if (m_moveType == MoveExclusive) {
-        moveLeft(); // correct 
-        m_moveType = MoveInclusive;
     }
+    m_moveType = MoveInclusive;
     m_mvcount.clear();
     m_opcount.clear();
     m_gflag = false;