diff --git a/src/plugins/fakevim/fakevim_test.cpp b/src/plugins/fakevim/fakevim_test.cpp index 0f15c3ee7eb..d8eb1f80aa8 100644 --- a/src/plugins/fakevim/fakevim_test.cpp +++ b/src/plugins/fakevim/fakevim_test.cpp @@ -1862,6 +1862,9 @@ void FakeVimPlugin::test_vim_copy_paste() KEYS("yj", "ab" X "c" N "def"); data.setText("abc" N "de" X "f"); KEYS("yk", "ab" X "c" N "def"); + data.setText("ab" X "c" N "def"); + KEYS("yy", "ab" X "c" N "def"); + KEYS("2yy", "ab" X "c" N "def"); // copy empty line data.setText(X "a" N "" N "b"); diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 68e3280150f..b1d4c5bab77 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -3359,6 +3359,8 @@ void FakeVimHandler::Private::finishMovement(const QString &dotCommandMovement) if (g.rangemode == RangeLineMode) { if (isVisualModeYank) moveToStartOfLine(); + else + moveToTargetColumn(); } } setTargetColumn();