diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 57c74ded229f7663793bb43f852d441732292632..1f8d779f8c0479878568c5a70137b9e8bc70b334 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -3050,15 +3050,6 @@ bool FakeVimHandler::Private::handleMovement(const Input &input) m_movetype = MoveLineWise; moveDown(count); movement = "j"; - } else if (input.is('J')) { - moveBehindEndOfLine(); - const int pos = position(); - beginEditBlock(); - if (m_submode == NoSubMode) - joinLines(count, m_gflag); - endEditBlock(); - setPosition(pos); - setDotCommand("%1J", count); } else if (input.is('k') || input.isKey(Key_Up) || input.isControl('p')) { m_movetype = MoveLineWise; moveUp(count); @@ -3426,6 +3417,15 @@ bool FakeVimHandler::Private::handleNoSubMode(const Input &input) enterInsertMode(); } else if (input.isControl('i')) { jump(count()); + } else if (input.is('J')) { + moveBehindEndOfLine(); + const int pos = position(); + beginEditBlock(); + if (m_submode == NoSubMode) + joinLines(count, m_gflag); + endEditBlock(); + setPosition(pos); + setDotCommand("%1J", count); } else if (input.isControl('l')) { // screen redraw. should not be needed } else if (input.is('m')) {