Commit Graph

743 Commits

Author SHA1 Message Date
hluk
227ef8240a FakeVim: Command % jumps to first known parenthesis character
Change-Id: I28988925f397af8c4927c416774d7fe21e982dcb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-30 13:25:27 +01:00
hluk
8ea6a21a78 FakeVim: Added Vim commands "g0", "g^" and "g$"
Change-Id: I05958e56282f0b290feb7e8e01d30b77f566d11b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-30 13:24:04 +01:00
hluk
bf587d179e FakeVim: Added Vim commands "gj" and "gk"
Change-Id: I1d38f86a1993f4aa82eb5dbf4595af69e062c0e1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-30 13:22:04 +01:00
Eike Ziller
920d524d38 Merge remote-tracking branch 'origin/3.0' 2013-12-03 12:46:39 +01:00
hluk
b1a714ed44 FakeVim: Fix infinite loop when replacing empty text
Change-Id: Ie4ba6420889b0a6a5712b43a11f8366aa9a30edc
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-03 11:40:51 +01:00
Eike Ziller
0a893fc6b4 Merge remote-tracking branch 'origin/3.0' 2013-12-02 15:33:56 +01:00
hjk
dc30a4a2bd FakeVim: Prevent crash in scrollToLine with Qt 4
There seem to be cases where QTextLines::isValid() returns true but
its lines_ are empty.

Change-Id: Ia4b9a66aec8d10754f7ff7dd0c90e7295e2a2220
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-02 14:53:56 +01:00
hluk
2bc961f075 FakeVim: Don't overwrite document with ":!..." commands
Ignore range in ":!..." commands.

Task-number: QTCREATORBUG-7396
Change-Id: I428a403b105499024ed84c6253240e808b3cdcd8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-28 14:07:02 +01:00
Eike Ziller
5e2e0e469b Merge remote-tracking branch 'origin/3.0'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: I0485b1bf75cc02f9fbcb5c05e350da91f491abe3
2013-11-25 08:57:10 +01:00
Orgad Shaneh
5a268789ef FakeVim: Fix control modifier test
* Fix logic
* Rename the function

Change-Id: Ifa0bb77693e17ee75f30646ea3bbbf858e6e391c
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-22 10:38:31 +01:00
Eike Ziller
559e66cb35 Merge remote-tracking branch 'origin/3.0' 2013-11-22 09:11:51 +01:00
hluk
4042fa7082 FakeVim: Get rid of signed/unsigned compare compiler warning
Change-Id: I9647eb7a3679e6a1a545d8ed71d9c531e1691d25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-21 17:58:52 +01:00
Eike Ziller
242b7bd209 Merge remote-tracking branch 'origin/3.0' 2013-10-29 08:17:05 +01:00
hluk
7af8af0136 FakeVim: Use current text cursor to find out line geometry
Change-Id: If4581d2f38db8311138b871b67fdbe164dde1688
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-28 17:06:21 +01:00
Friedemann Kleint
119548a0ff Remove most leading/trailing blanks from translated messages.
They are a hassle for translators and reviewers alike.

Change-Id: I363138212b692cf75fe1605df8af3721315d37e1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-24 10:50:56 +02:00
Eike Ziller
c3119d1aa7 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	qtcreator.pri
	src/plugins/qnx/qnxutils.cpp

Change-Id: I019ad21fb4c128eb736c8ab2d09310757e3be037
2013-10-24 08:56:29 +02:00
hluk
0dba50ee3d FakeVim: Scrolls correctly if text cursor moves on wrapped lines
Change-Id: I789fc822ad4f60d7e3a39f8231d7d0cb4a78bf70
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-23 12:38:32 +02:00
hjk
43ceec94f4 FakeVim: Initialize new m_inFakeVim member
Also move initialization before connection setup.

Task-number: QTCREATORBUG-10443
Change-Id: I3f3d074534a44a0aa6b8cc60c8ffbcd22d96ca33
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2013-10-22 10:01:29 +02:00
Eike Ziller
4eabcdc8fd Merge remote-tracking branch 'origin/3.0'
Conflicts:
	qtcreator.pri
	qtcreator.qbs
	src/plugins/git/gitplugin.cpp
	src/plugins/qt4projectmanager/qmakeproject.cpp

Change-Id: Icbd485214b1add7869233dfe0dd9c6a76bddfc7d
2013-10-22 08:40:59 +02:00
hluk
be1736f95f FakeVim: Don't override "gm" with "m" command
Change-Id: I4e9d8c6780ce4241e6bcbcca6fd7f5b792fa03f1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-17 18:18:21 +02:00
hluk
893c054ea0 FakeVim: Clear command line to properly save its history
Change-Id: Ibb773ebd3d110ba828e55e29170843ed29e325a8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 22:55:24 +02:00
hluk
739f7ab5cf FakeVim: Disable recursive event filtering only in current handler
Fixes handling of commands that switch or create new editors
(<C-W><C-W>, <C-W>V).

Change-Id: Iefad2571390afeb085c7c270187e5de451892521
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-16 11:37:56 +02:00
Eike Ziller
4e32babc44 Merge remote-tracking branch 'origin/3.0' 2013-10-16 11:22:20 +02:00
hluk
1a03adf444 FakeVim: Always use valid text cursor
Change-Id: Iacf7f96d0b0295c85905e3bbb7efb04c416a8ef2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-14 23:01:29 +02:00
Eike Ziller
8474a6f128 Merge remote-tracking branch 'origin/3.0' 2013-10-14 15:31:54 +02:00
hluk
9e4dabc884 FakeVim: Dot command works for letter case commands in visual mode
Change-Id: I303c464c0ca2fb01f4a951d3fe7b6796f31d0ab2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-10 15:59:57 +02:00
hluk
8e0597687c FakeVim: Don't filter events recursively
Task-number: QTCREATORBUG-10226
Change-Id: Ic5fdb125cfce603c24e8c88cbcd43f13e8af9d06
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-10 14:21:57 +02:00
Erik Verbruggen
f047d7eef9 VIM: remove unnecessary (and invalid) cast.
fakevimhandler.cpp:941:43: warning: comparison of integers of different signs: 'Int' (aka 'unsigned int') and 'int' [-Wsign-compare]
        return m_xkey == c && m_modifiers != int(HostOsInfo::controlModifier());
                                      ~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Change-Id: I360873f0c74512d95ca8ecaac4f1ab0a477877e7
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-09-30 12:13:02 +02:00
Robert Loehning
4d89786a88 FakeVim: Fix handling of some hungarian characters
Done-by: hjk
Task-number: QTCREATORBUG-10236

Change-Id: Iba97b6ebbd4fee8a4ab52a3986a2f79c7344b75b
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-27 12:03:03 +02:00
hjk
196674d0de FakeVim: Use Qt::KeyboardModifiers for keyboard modifiers
Change-Id: I8651d396563dd82da2103c0a8c9fcd3fded6c5e3
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-27 11:45:58 +02:00
Eike Ziller
63ff745213 Merge remote-tracking branch 'origin/2.8'
Conflicts:
	src/libs/extensionsystem/pluginmanager.cpp
	src/libs/extensionsystem/pluginspec.cpp
	src/plugins/coreplugin/basefilewizard.cpp
	src/plugins/coreplugin/coreplugin.pro
	src/plugins/coreplugin/coreplugin.qbs
	src/plugins/coreplugin/editormanager/ieditor.cpp
	src/plugins/coreplugin/externaltool.cpp
	src/plugins/coreplugin/icore.cpp
	src/plugins/cpptools/cppmodelmanager.cpp
	src/plugins/fakevim/fakevimhandler.cpp
	src/plugins/find/ifindfilter.cpp
	src/plugins/projectexplorer/buildstep.cpp
	src/plugins/projectexplorer/devicesupport/idevice.cpp
	src/plugins/projectexplorer/runconfiguration.cpp
	src/plugins/vcsbase/vcsbaseeditor.cpp
	tests/system/suite_debugger/tst_simple_analyze/test.py

Change-Id: I11dc9e60bfc14bad4f8af747d041fc7678a07c17
2013-09-27 10:44:32 +02:00
hluk
a12a9f491c FakeVim: Ensure that enterFakeVim() is not called recursively
Task-number: QTCREATORBUG-10226
Change-Id: Ib58d43dc11071a5dc28bad53e13213a4413fca71
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-26 21:52:47 +02:00
hluk
2e0508ca26 FakeVim: Handle deleted editor widget in insert mode
Change-Id: I7e6585872552a9b4a5bd126e7d01a8f9ea18339a
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-19 12:18:58 +02:00
hluk
a636a933d0 FakeVim: Fix searching in visual mode and with commands
Search in visual mode should select text up to matched position.

Using commands should work with search movement; e.g. 'd2/needle<CR>'.
Commands should be also properly canceled if search movement fails.

Change-Id: Ic695dccaf3f36ccae2f2b1a93f888d5ba9805a78
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-19 12:17:37 +02:00
Nikolai Kosjar
69fc3cf03f Kill ";;" at end of statement
Change-Id: I177094f19978e07f85e42b34701d8f03cd26665e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-09-04 09:19:10 +02:00
hluk
41785890d6 FakeVim: Escape '>' character in mappings
On some keyboards, '>' character can be produced using Shift key. But
recorded macro shouldn't contain '<S->>', which cannot be properly
parsed, instead it will be '<S-<GT>>' (as '<LT>' for '<').

Change-Id: Iac3759029b6ff8c9e690c4728e35048c0b6046f9
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-29 11:10:36 +02:00
hluk
6c3972680e FakeVim: Operator-pending mappings
Implements :omap (and :onoremap) for defining user mappings for movement
while in operator-pending mode (after commands 'c', 'd', '>' and
others).

Change-Id: I07a1e90bf5c649ef5bb53d1de873817dc7348e19
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-13 15:45:16 +02:00
hluk
9c5ae766a2 FakeVim: Fix scrolling on small movement
Fixes scrolling to center text cursor on screen on j/k and h/l on last
visible line.

Change-Id: I65a1144a99f44a3df4217bc8eb6ee5ae6ef89ad4
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-13 09:51:22 +02:00
hluk
d15fb5a75c FakeVim: Emulate search more precisely
Submitting search highlights (if 'hlsearch' enabled) in visible editors.

Update highlights after 'nohlsearch' command, 'set hlsearch' and
changing document.

Change-Id: I66ed8c6e9c6e99f3c64f91cdec5ac5feb636d2cb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 13:43:36 +02:00
hluk
2890242df5 FakeVim: Fix checking if text was re-inserted
Change-Id: I213ad5c9d6f8d313f07daaceb253a7d03b9035a3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 13:10:15 +02:00
hluk
d935b4cfc6 FakeVim: Use QTextDocument::availableUndoSteps() for undo/redo
Partially reverts commit b9cc16e405.

Using QTextDocument::revision() to keep track which undo/redo command
should be used next doesn't help much and it's more difficult to use
than QTextDocument::availableUndoSteps().

Task-number: QTCREATORBUG-9784
Change-Id: I656e1e964477de0f387c80b9384a32e0d8dab39f
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 13:06:58 +02:00
hluk
1843d5ab67 FakeVim: Check first character on line with 'F' and 'T' commands
Change-Id: Icd5c3ca62da0fbff35e2281e04b1fa37a304f64c
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 12:50:50 +02:00
hluk
5a02089e3c FakeVim: Record jumps on paragraph and bracket movement
Change-Id: I7e1bfad127a11118606efbf603bbf8a393ec00b0
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-07 10:43:38 +02:00
hluk
76d4084234 FakeVim: Bracket movement commands
Added commands ]], [[, [], ][ for movement.

Task-number: QTCREATORBUG-9527
Change-Id: I0c363427505c9ef6274ed1cf735c9fbc43cb4bd9
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-06 10:56:59 +02:00
hluk
1b13122cd1 FakeVim: Fix Vk command
Fixes visual representation (selection exported to editor widget) of
"Vk" command on empty line.

Change-Id: Iac5fabe53a65d7b94d0a1ed02aff3a7b3804a37b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-05 18:24:35 +02:00
hluk
e5c323e83a FakeVim: Monitor inserted text using signals from QTextDocument
Use QTextDocument::onContentsChanged() to monitor text inserted and
removed in insert mode for dot command (or just repeat with 2i, 3o etc.)
to re-insert same text.

Works even if auto-completion is replacing '.' with '->' for pointers.

Change-Id: Ie39edcdc9ec60bcf6c7d10f021248c3a0aee76b6
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-05 16:09:54 +02:00
Eike Ziller
e8469a2bab Merge remote-tracking branch 'origin/2.8'
Conflicts:
	src/plugins/fakevim/fakevimhandler.cpp

Change-Id: I8101f18b87859924644471817d4f1408790d5628
2013-06-25 10:14:14 +02:00
hluk
ab41da6a14 FakeVim: Fix how block selection is represented in editor widget
Change-Id: I717276610b6d403d6304bc15dba07d170da0d549
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-17 08:33:26 +02:00
Eike Ziller
afe1d5ee65 Merge remote-tracking branch 'origin/2.8'
Conflicts:
	src/plugins/coreplugin/documentmanager.cpp

Change-Id: I6dc025bc0f31eb694c8d9e2dd4ea5cc888ee8a94
2013-06-14 16:21:04 +02:00
hluk
8c944eda89 FakeVim: Fix cursor position and anchor after search
Change-Id: I1e093d042033d87f0382560e00f71d24c7f55b03
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-10 18:02:36 +02:00