summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2010-02-08 14:06:48 +0100
committerhjk <qtc-committer@nokia.com>2010-02-08 14:56:52 +0100
commitf6d4680ffefb7bcc5f7ed773861c198da0f38ccd (patch)
treee667a99b0e2c1b30005f7b6277e576cd955046bc /src
parente500075b1c291877ab1bff021269ad60efc94500 (diff)
downloadqt-creator-f6d4680ffefb7bcc5f7ed773861c198da0f38ccd.tar.gz
fakevim: make ':r' undoable and behave more vim-ish
Diffstat (limited to 'src')
-rw-r--r--src/plugins/fakevim/fakevimhandler.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index c739aa9ca4..af36378145 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -2354,14 +2354,19 @@ void FakeVimHandler::Private::handleExCommand(const QString &cmd0)
("Cannot open file '%1' for reading").arg(fileName));
}
} else if (cmd.startsWith(QLatin1String("r "))) { // :r
+ beginEditBlock();
+ moveToStartOfLine();
+ setTargetColumn();
+ moveDown();
m_currentFileName = cmd.mid(2);
QFile file(m_currentFileName);
file.open(QIODevice::ReadOnly);
QTextStream ts(&file);
QString data = ts.readAll();
- EDITOR(setPlainText(data));
+ m_tc.insertText(data);
showBlackMessage(FakeVimHandler::tr("\"%1\" %2L, %3C")
.arg(m_currentFileName).arg(data.count('\n')).arg(data.size()));
+ endEditBlock();
} else if (cmd.startsWith(QLatin1Char('!'))) {
selectRange(beginLine, endLine);
QString command = cmd.mid(1).trimmed();