Commit ba86ddcc authored by Lukas Holecek's avatar Lukas Holecek Committed by hjk

fakevim: Ignore user mappings with 'r' and other commands

Task-number: QTCREATORBUG-7913
Change-Id: Ic9efd579556acc78736d7562c46adee83e971074
Reviewed-by: default avatarhjk <qthjk@ovi.com>
parent 15867375
......@@ -1306,6 +1306,13 @@ void FakeVimPlugin::test_map()
KEYS("<c-r>", "abc" N "def" X "xxx" N "yyy" N "ghi");
data.doCommand("unmap X");
/* QTCREATORBUG-7913 */
data.setText("");
data.doCommand("noremap l k|noremap k j|noremap j h");
KEYS("ikkk<esc>", "kk" X "k");
KEYS("rj", "kk" X "j");
data.doCommand("unmap l k|unmap k j|unmap j h");
NOT_IMPLEMENTED
// <C-o>
data.setText("abc def");
......
......@@ -2675,7 +2675,7 @@ EventResult FakeVimHandler::Private::handleCommandMode(const Input &input)
endEditBlock();
} else {
replaceText(range, QString(count(), input.asChar()));
moveLeft();
moveRight(count() - 1);
}
setTargetColumn();
setDotCommand("%1r" + input.text(), count());
......@@ -5798,7 +5798,9 @@ void FakeVimHandler::Private::endEditBlock()
char FakeVimHandler::Private::currentModeCode() const
{
if (m_mode == ExMode)
if (m_submode != NoSubMode)
return ' ';
else if (m_mode == ExMode)
return 'c';
else if (isVisualMode())
return 'v';
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment