diff options
author | hjk <qtc-committer@nokia.com> | 2010-02-08 14:06:48 +0100 |
---|---|---|
committer | hjk <qtc-committer@nokia.com> | 2010-02-08 14:56:52 +0100 |
commit | f6d4680ffefb7bcc5f7ed773861c198da0f38ccd (patch) | |
tree | e667a99b0e2c1b30005f7b6277e576cd955046bc /src | |
parent | e500075b1c291877ab1bff021269ad60efc94500 (diff) | |
download | qt-creator-f6d4680ffefb7bcc5f7ed773861c198da0f38ccd.tar.gz |
fakevim: make ':r' undoable and behave more vim-ish
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/fakevim/fakevimhandler.cpp | 7 |
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(); |