From 069a0cb72e6d16f8f958161f77b0d15aed9d1b7f Mon Sep 17 00:00:00 2001
From: hjk <qtc-committer@nokia.com>
Date: Wed, 11 Aug 2010 15:14:33 +0200
Subject: [PATCH] fakevim: Fix mark interpretion for d'a etc.

http://bugreports.qt.nokia.com/browse/QTCREATORBUG-1342
(cherry picked from commit 91c909120b1c4200fd052d49b7341bb583bd4c75)
---
 src/plugins/fakevim/fakevimhandler.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index 9f8a0e32307..2b5137c2e6d 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -1867,6 +1867,8 @@ EventResult FakeVimHandler::Private::handleCommandMode(const Input &input)
         }
     } else if (input.is('`')) {
         m_subsubmode = BackTickSubSubMode;
+        if (m_submode != NoSubMode)
+            m_movetype = MoveLineWise;
     } else if (input.is('#') || input.is('*')) {
         // FIXME: That's not proper vim behaviour
         QTextCursor tc = m_tc;
@@ -1888,6 +1890,8 @@ EventResult FakeVimHandler::Private::handleCommandMode(const Input &input)
         //updateMiniBuffer();
     } else if (input.is('\'')) {
         m_subsubmode = TickSubSubMode;
+        if (m_submode != NoSubMode)
+            m_movetype = MoveLineWise;
     } else if (input.is('|')) {
         moveToStartOfLine();
         moveRight(qMin(count(), rightDist()) - 1);
-- 
GitLab