Commit Graph

830 Commits

Author SHA1 Message Date
Jarek Kobus
716f43f357 FakeVimPlugin: Introduce member initialization.
Change-Id: I0e09933ededd48133662a65da701c228e6c08419
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-06-18 12:19:21 +00:00
Lukas Holecek
a439335500 FakeVim: Disable visual navigation for text cursor
Change-Id: I04a05ae034dbe5e891df5e39275ce0430eabb649
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-05-20 07:58:27 +00:00
hjk
f9f9feb7ea FakeVim: Use more direct construction in vimKeyNames
Change-Id: Ic230eaa95e4e9a4ad614af50297d6028fefaae6b
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-05-12 07:58:14 +00:00
Lukas Holecek
1ef66857cb FakeVim: Allow to remap shortcuts
Allows to remap main window shortcuts with command for passing keys.

    noremap <C-S> ,<C-S>
    noremap ZZ ,<C-S>,<C-W>
    noremap f<C-O> ,<C-O>
    noremap f<C-F> ,<C-F>

Task-number: QTCREATORBUG-14413
Change-Id: Ib86637d55223b1f4ce31a88c1c7ae2e05cb2aff1
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-05-11 14:36:44 +00:00
Thorben Kroeger
e4db1211ff FakeVim: C-R {register, C-W} in command mode
Change-Id: I15dd0b88b2e908dde398df06bc03394a700839a7
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-04-14 11:12:39 +00:00
Thorben Kroeger
a30e66f257 FakeVim: implement C-r{register} in insert mode
In normal mode:
input: |aaa bbb
keys: yiw A C-r 0
result: aaa bbbaaa

Change-Id: Ifb2ac8603adf9c897d169f4ab282a3ee97896684
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-04-14 11:12:05 +00:00
Lukas Holecek
549e227e7b FakeVim: Fix tests when editor doesn't have focus
Change-Id: I3cb5f7db5114bc2189ceada7b0c05f67d781e607
Reviewed-by: Thorben Kroeger <thorbenkroeger@gmail.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-25 10:58:51 +00:00
Thorben Kroeger
161c07f605 FakeVim: C-h in insert mode acts like backspace
In insert mode:
input:  xyz|
keys:   C-h
result: xy|

Change-Id: I6832787683485be3031b1d9ff55d459cb25b74b4
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-24 15:04:07 +00:00
Thorben Kroeger
0f8b5ef436 FakeVim: fix black hole register
This fixes the following:

In normal mode:
input:  |aaa bbb ccc
keys:   yiw w "_diw P
result: aaa aaa ccc

Change-Id: If66d80660c1bef5be1466883db30a87254065f00
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-23 07:38:00 +00:00
Thorben Kroeger
0023eafc4c FakeVim: fix yank register
The yank register "0 is only used when using y{motion} commands.
This fixes the following:

In normal mode:
input:  |aaa bbb ccc
keys:   yiw w diw "0P
result: aaa aaa ccc

Change-Id: I7fb8a62aed29b753ff8b129b5a8aa5f8e965026e
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-23 07:33:54 +00:00
Thorben Kroeger
4f4de63721 FakeVim: implement C-u in insert mode
In insert mode:
input:  "aaa bbb ccc|"
keys:   C-u
result: ""

Change-Id: I1813369c401aaee1a634c363ca5f4c252062613c
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-23 07:24:36 +00:00
Eike Ziller
9926fc2ab1 Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'
Conflicts:
	src/libs/utils/tooltip/tipcontents.cpp
	src/libs/utils/tooltip/tipcontents.h
	src/plugins/android/androiddeployqtstep.cpp
	src/plugins/baremetal/baremetalconstants.h
	src/plugins/baremetal/baremetaldevice.cpp
	src/plugins/baremetal/baremetaldevice.h
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.h
	src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h
	src/plugins/baremetal/baremetalplugin.cpp
	src/plugins/baremetal/baremetalplugin.h
	src/plugins/baremetal/baremetalruncontrolfactory.cpp
	src/plugins/baremetal/baremetalruncontrolfactory.h
	src/plugins/cppeditor/cppcodemodelinspectordialog.cpp
	src/plugins/cppeditor/cppdoxygen_test.cpp
	src/plugins/cppeditor/cppdoxygen_test.h
	src/plugins/debugger/breakpointmarker.cpp
	src/plugins/debugger/debuggeritemmodel.cpp
	src/plugins/debugger/debuggeritemmodel.h
	src/plugins/debugger/loadcoredialog.cpp
	src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp
	src/plugins/projectexplorer/addnewmodel.cpp
	src/plugins/projectexplorer/addnewmodel.h
	src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.h
	src/plugins/qmlprofiler/notesmodel.cpp
	src/plugins/qmlprofiler/qml/CategoryLabel.qml
	src/plugins/qmlprofiler/qml/MainView.qml
	src/plugins/qmlprofiler/qml/Overview.js
	src/plugins/qmlprofiler/qml/Overview.qml
	src/plugins/qmlprofiler/qml/TimeDisplay.qml
	src/plugins/qmlprofiler/qml/TimeMarks.qml
	src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.h
	src/plugins/qmlprofiler/timelinemodelaggregator.cpp
	src/plugins/qmlprofiler/timelinemodelaggregator.h
	src/plugins/qmlprofiler/timelinerenderer.cpp
	src/plugins/qmlprofiler/timelinerenderer.h
	src/plugins/qmlprojectmanager/QmlProjectManager.json.in
	src/plugins/texteditor/findinfiles.cpp
	src/plugins/vcsbase/vcsconfigurationpage.cpp
	src/shared/qbs
	src/shared/scriptwrapper/interface_wrap_helpers.h
	src/shared/scriptwrapper/wrap_helpers.h
	tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp
	tests/system/suite_debugger/tst_debug_empty_main/test.py
	tests/system/suite_debugger/tst_qml_js_console/test.py
	tests/system/suite_debugger/tst_qml_locals/test.py

Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
2015-02-12 17:29:21 +01:00
Eike Ziller
3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
Robert Loehning
c2e23b6fe2 FakeVim: Compile fix
Change-Id: I630c6603bf46a28942c71e9e67cc9745ea8e4c36
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-01-05 16:54:27 +01:00
Lukas Holecek
1203ef5b2f FakeVim: Update inserted text data only in focused editor
If there are multiple instance of FakeVim handler for single buffer
(this happens when there are splits with the same document), buffer data
are modified only in the instance that handles the last focused editor.

Task-number: QTCREATORBUG-13481
Change-Id: Idfd2727917262bfffb410396a911519e85dfd463
Reviewed-by: hjk <hjk121@nokiamail.com>
2015-01-05 09:19:55 +01:00
Tim Jenssen
ff658ccc99 fix spelling commmand -> command
Change-Id: I293a3d2be055634c3fd798c4f344a6d77d50206c
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2014-12-19 13:54:21 +01:00
Lukas Holecek
7e8db09c50 FakeVim: Set correct cursor shape if submitted search failed
Change-Id: I508ca523c70846924dc9b869ef105d273892e0bb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-12-08 11:39:20 +01:00
Lukas Holecek
577fcd97d4 FakeVim: Select and modify paragraph object
Change-Id: Ib528fa2914bfcb17caed114d7da2d201079b0725
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-25 10:32:12 +01:00
Lukas Holecek
e8aecca215 FakeVim: Fix invalid cursor position warnings
Change-Id: If09f2cfeb58e9810ec3858c0a20d2f5e0a7fac14
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-25 10:31:58 +01:00
Lukas Holecek
07e3a032ff FakeVim: Uppercase register appends to lowercase
Change-Id: Ida1e796637ad37cbb3c2f403151d01af1f3b2ade
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-21 09:51:43 +01:00
Lukas Holecek
40fc14c191 FakeVim: Stop waiting for incomplete mapping after interval
Recent change (QTimer for waiting on input) broke this behavior.

If using ":inoremap jj <ESC>" pressing only "j" in input mode should
timeout and insert the letter.

Change-Id: Ic5a1961143e1847ef02d5063c5da9eeb63714893
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-21 09:51:35 +01:00
Lukas Holecek
e27c7eb56d FakeVim: Use correct text cursor position when focusing editor
Change-Id: I5d57f95e98e8fb4de063b7cbe2875f11023dd1a9
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-21 09:51:23 +01:00
Tim Jenssen
1b77ce4d8f fix MSVC2010 build
Change-Id: I756d07a0e59cadd8557f7a2fd00d434470000f3c
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-19 13:23:02 +01:00
Lukas Holecek
e0acc42649 FakeVim: Monitor external cursor movement only with FakeVim enabled
Task-number: QTCREATORBUG-13443
Change-Id: I2f8ecb92599c59e31fc931557d4bc7a6b7e306af
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-19 11:34:52 +01:00
Lukas Holecek
c50487fc9a FakeVim: Remove superfluous dot command changes
Change-Id: I5ab80ada2d2c5a7812538c4a91b5aca8aee1a5e3
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-19 11:34:10 +01:00
Lukas Holecek
7e00f03756 FakeVim: Refactor text transformation and yank
Change-Id: Ic13596d4bbfd901846575fe441607c036aba3cd5
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-19 11:34:01 +01:00
Lukas Holecek
0e83172b0b FakeVim: Indent block correctly
In situation:

    void f() {
    // Cursor is HERE.
    }

the code after ">i{" command is indented as (with shiftwidth=4):

    void f() {
        // Cursor is HERE.
    }

Change-Id: I48283c91c32fc407bbdb24349f2491461e401ee9
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-18 10:03:41 +01:00
Lukas Holecek
5881f6cb79 FakeVim: Text cursor is thin when selecting text with mouse
Task-number: QTCREATORBUG-12809
Change-Id: I2b2e5cdbd8ab332e1bd05fb5c7857409318b736f
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-18 09:47:14 +01:00
Lukas Holecek
853a7b1c37 FakeVim: Added helper function to retrieve character at a position
Change-Id: I9798adeec3b92f093a275d0af885a4546b4c545c
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-18 09:43:09 +01:00
Lukas Holecek
3a03162fba FakeVim: Correct behavior of command "D" in visual block mode
Command "<C-V>...D" deletes characters inside and behind
block selection.

Change-Id: I2589bc560306a9a5a893f810c8c8037f44517af7
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-18 09:39:48 +01:00
Lukas Holecek
0790ee8159 FakeVim: Remove superfluous cursor shape changes
Change-Id: I6996d82a0a3b0e0a7bb5ddc9732297bebd368a2d
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 17:27:28 +01:00
Lukas Holecek
b920aadf25 FakeVim: Removed unneeded variable
Change-Id: I55ef1765c103b41b67583169718b899a8d44cac3
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 17:25:20 +01:00
Lukas Holecek
5efe24b6b3 FakeVim: Save last change position directly to marks
Change-Id: I304fb125810f0857cc013e9617460d4827e9b238
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:12:55 +01:00
Lukas Holecek
56037e8aa4 FakeVim: Remove superfluous status bar updates
Change-Id: I6f5c310bcb56749c71db74b882632070166ef68b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:12:32 +01:00
Lukas Holecek
31eb0f96d7 FakeVim: Update internal cursor if it changes externally
Change-Id: I8c335e5a79699d9ae1eefdb2cd60840eea1bb300
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:12:06 +01:00
Lukas Holecek
4631da97af FakeVim: Allow to use "i<C-O>v"
Change-Id: Ibd669a8ac75734b18b41066255a43ee8bda19743
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:11:41 +01:00
Lukas Holecek
f4ffaaa278 Fakevim: Refactor entering and leaving modes
Change-Id: I6fe40908bc53fa84d2be165f3ee1b9c2f3a8d5c5
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:11:29 +01:00
Lukas Holecek
86c4e341a1 FakeVim: Fix indentation commands
Partially reverts commit dfae736. Handling indentation commands in
visual mode cannot be trivially handled by alias.

Change-Id: If9189c41a4e585efef00c774e24382f1de3356e4
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-17 09:11:21 +01:00
Lukas Holecek
72c5253a3b FakeVim: Fix target column when leaving insert mode
Change-Id: Idb9d6b70815d7212f677d68b3d5d268abdf4f44f
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-12 15:25:52 +01:00
Lukas Holecek
dfce1be17b FakeVim: Set correct target column for "|" command
Change-Id: I5d3465a8b4e58fb2e56429cdd0b33a940211485f
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-12 15:25:43 +01:00
Lukas Holecek
a588af8049 FakeVim: Fix target column for visual movement commands
Change-Id: I90fb87c06d623736d506c570b77c92666fab4170
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-12 15:25:35 +01:00
Lukas Holecek
dfae736505 FakeVim: Handle more commands as aliases
Change-Id: Id7eb81ccb87b89c4c164119147b2d854d2fca9d4
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-10 15:47:21 +01:00
Lukas Holecek
ffe956ad3a FakeVim: Test some sub-modes in functions
Change-Id: Ia5434b0e3dc56ad1657b5113279f8656c27ccfa7
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-10 15:47:17 +01:00
Lukas Holecek
cb29cd6c6c FakeVim: Added helper functions
Change-Id: I01ac58625370b7f01b9b87a15afbf6c32549e6f8
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-10 15:47:09 +01:00
Eike Ziller
3f1deee5e1 Merge remote-tracking branch 'origin/3.3' 2014-11-06 12:38:37 +01:00
Lukas Holecek
ab1159096d FakeVim: Refactor cutting text
Change-Id: Iea371c67c67c9a810ee47aec98e18297993098b2
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-05 21:25:03 +01:00
Lukas Holecek
5458fdee72 FakeVim: Move common movement operations to functions
Change-Id: I06dce44098a535e0d8f49d885b77a4f07731288b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-05 21:19:26 +01:00
Lukas Holecek
743e1ca67e FakeVim: Don't change cursor column after 'yy' command
Change-Id: I44b61dfc6a03fba242c8d9d42d483806ca9d85ce
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-05 21:03:32 +01:00
hjk
d6a7287fb4 FakeVim: Fix line selection for wrapped lines
Task-number: QTCREATORBUG-13102
Change-Id: I0845d98cdbca9a172a3ccda7b5730a7a2d5392b3
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-03 20:36:16 +01:00
Lukas Holecek
de33b3affa FakeVim: Properly replay macro with command line
Change-Id: I40617a1f6d28052e3593c186afb6db1d14222076
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-11-03 11:19:39 +01:00