Commit Graph

537 Commits

Author SHA1 Message Date
Lukas Holecek
20231b769d fakevim: Clipboard data format compatible with Vim
Store clipboard data that can be used by Vim and vice versa.

Change-Id: If1eb436fa371afeff39fd37353fe0841dafe169a
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-17 08:18:37 +02:00
Lukas Holecek
a1834bba8e fakevim: Fixed pasting text [count] times and in selection
Text pasted correctly [count] times and text cursor position
after the operation is same as in Vim.

P and p keys should work the same if pasting to selection.

Change-Id: Ic1cc82a71a2103b13a37e270ad9b7745ff95954d
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-17 08:17:12 +02:00
Lukas Holecek
64fece4d28 fakevim: Added support for last selection operations
Change-Id: Ib0628790d415b400fa7b2ca6d2d536b4f6a84aed
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-17 08:12:20 +02:00
Lukas Holecek
e6bb2f644b fakevim: Support for count steps in block selections
Added support for combinations like "2vi)" or "3da{".

Change-Id: I548250faca900b6e5c78f1418cbf3cd4591e7e35
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-15 08:14:21 +02:00
Lukas Holecek
b4ec04e5e6 fakevim: Range mode of a clipboard register depends on its content
If register takes its content from clipboard check it it ends with new
line char ('\n' or '\r'). If it does the text can be pasted only on
a new line. This emulates Vim behaviour.

Change-Id: I70ae8b264ba41c3d84a42b1c91f3c4bdb183efd9
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-09 13:16:05 +02:00
Lukas Holecek
77e101406f fakevim: Fixed pasting from clipboard
Paste from clipboard if register is "" and 'clipboard' contains
'unnamedplus' (otherwise from selection if available and 'clipboard'
contains 'unnamed').

Also correctly parse 'clipboard' option to string list.

Change-Id: Ic78cd2953789c0402f515973ed2eb48fc3e72154
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-07 22:21:37 +02:00
Lukas Holecek
7e7460ad33 fakevim: Added support for smartcase searching
Change-Id: I85a83aff0886282a6eac2dc9cc4662087c3b0b95
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-01 16:17:03 +02:00
Lukas Holecek
6544ed2f00 fakevim: Emulate Vim regexp more precisely
Change-Id: Ia951f6e10d0e8d19e8d7d4b2a696eb9277ce6201
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-01 14:52:52 +02:00
Lukas Holecek
d0dcd40635 fakevim: Implement special clipboard buffers
Introduces Vim's special registers "+ and "* and partial support for
"clipboard" option - only values "unnamed" and "unnamedplus" and the
behaviour is only similar.

Task-number: QTCREATORBUG-6342
Change-Id: I1fa95b681edadacfe9690a2fd6eb2e98e7cc5dca
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-01 13:25:04 +02:00
Lukas Holecek
8eae872660 fakevim: Fix for searches with an empty match
If searching (in "/" command mode) with regular expression "\\b" or
".{0}" the search takes infinitely long.

This fix highlights one character to the right of empty match
(behaviour is similar in Vim).

Change-Id: I5113177cf6af0ef0197e14f0165227e7538a3d1d
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-26 15:32:24 +02:00
Lukas Holecek
d4576a4b7a fakevim: Fix block selections
Selection anchor should be in front text cursor position.

Last block with nested block should be selected properly.

Change-Id: I796875ef7bce3527fb703ece5fdf944123f12315
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-23 14:53:22 +02:00
Lukas Holecek
ead1ea2471 fakevim: Selection command for strings
Selection commands for strings (blocks enclosed in double or single
quotes or backtick characters). E.g. "di'", "ca`" etc.

Change-Id: Ic83a5230eab317c9e730a1ddb421f2df432cb8e6
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-23 14:51:58 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
hluk
fd817c675c fakevim: Incorrect commands with nested parentheses
Commands in normal mode like "ci(", "di[", "ca{" etc. should handle
nested parentheses correctly.

task-number: QTCREATORBUG-7632
Change-Id: I7a77ffa61ff7675f0dc8c66918136c2573cf4c06
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-18 13:04:06 +02:00
hjk
4f169b2150 fakevim: fix :!cmd if there is no selection
Change-Id: Ieafb77ecc4d211f97b7b8321fc84fd7d6c81dfc0
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-08 18:11:40 +02:00
Eike Ziller
529c0a8fe2 Merge remote-tracking branch 'origin/2.5' 2012-05-07 15:18:39 +02:00
hjk
8b37921bc5 fakevim: don't allow non-positive numbers for tabstop and shiftwidth
Task-number: QTCREATORBUG-7375
Change-Id: I947dd903a5e7d09e367afbc771582793e6c008f1
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Reviewed-by: Robert Löhning <robert.loehning@nokia.com>
2012-05-03 11:41:24 +02:00
hjk
b79f13df6a fakevim: make sure pending input is only processed once
Change-Id: I0c6141eff49413f66cfee9a1f117279cdfcd4f36
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-17 11:20:37 +02:00
hjk
88204e9723 fakevim: respect count for < and > in visual mode
Task-number: QTCREATORBUG-7250
Change-Id: I80041c0e902df5274a37a821cd93f036fde9514e
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-11 08:39:10 +02:00
hjk
502ddea099 fakevim: fix handling of the 'Enter' key on the number block
Change-Id: I8d05f9b6a890beb6ff67795e81619e8101127180
Reviewed-by: David Schulz <david.schulz@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-03-09 10:13:44 +01:00
Robert Loehning
9988c471fe Replaced one-char-strings
Change-Id: I0bf982b508a237e5b1e6ba3279cb589bae1b1c1d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-03-07 09:18:15 +01:00
Martin Aumüller
31ae1778cb fakevim: fix repeating 'ciw'
Change-Id: I732cc9d6ad1693cf6227bca7c7d6e80a9357fd23
Reviewed-by: hjk <qthjk@ovi.com>
2012-02-21 10:56:23 +01:00
Erik Verbruggen
3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
hjk
2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
Morten Johan Sorvig
b0cd54c1ec Replace Q_WS_MAC with Q_OS_MAC.
We want to carry over all mac-specific code paths
to Qt 5. WS_MAC is no longer set; OS_MAC is.

This change is compatible with Qt 4 builds since
OS_MAC is set whenever WS_MAC is. (OS_MAC would
also be set for the theoretical X11/Mac platform,
but that's anyway not a supported configuration
for Creator)

Change-Id: Ib25d8c4e83e7e27d911124cd48aa17fdb875923f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-01-26 11:06:12 +01:00
Kai Koehne
f85df65594 FakeVim: Fix gcc warning about unused variable
Change-Id: I2d88e568f91416cdc304446ccb9bd0d98a5eb654
Reviewed-by: hjk <qthjk@ovi.com>
2012-01-06 11:24:17 +01:00
hjk
c9c9937b58 fakevim: fix cursor column after up/down in replace mode
Change-Id: I1a7fe47f1a7bf875447e767edee57fcca4b344f3
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-30 23:23:37 +01:00
hjk
29eff52529 fakevim: rework undo/redo cursor positioning
Change-Id: I1daa788377295fb1446f31d9a74b9fd0df6920d1
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-27 17:40:58 +01:00
hjk
c137cd9b5a fakevim: implement ctrl-a and ctrl-x
Change-Id: If1f13b9e9cf806cff254aedc6dab9e669105f3d6
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-27 14:56:01 +01:00
hjk
29223bc117 fakevim: more vim-ish cursor positioning after undo/redo
Change-Id: Ie689a719b023ed1e3756470bd144e22b1099bb07
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-26 16:42:55 +01:00
hjk
4443532d14 fakevim: record position before first keystroke as jump target
Change-Id: I52942a46bcd42eee4f8452a61a899d6d9b706563
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-26 16:42:19 +01:00
hjk
57caa26a19 fakevim: make <Esc> and <CR> case insensitive
Change-Id: I412b9774b0e642a763c55334192aca0ae4796a57
Reviewed-by: hjk <qthjk@ovi.com>
2011-12-08 22:49:48 +01:00
hjk
9056dc384a fakevim: bs=2 "has" start
Task-number: QTCREATORBUG-6640
Change-Id: Iaa90bd9c96207883dbb5889e1c0df544e3a1aa40
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-30 10:08:42 +01:00
hjk
a7e4f3ce04 fakevim: fix off-by-one when creating range from current line
Task-number: QTCREATORBUG-6630
Change-Id: I33c009cb72396872b8d603011b81d7e441f27cf2
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-29 09:08:29 +01:00
hjk
c00cbcf574 fakevim: implement '&'
Change-Id: I64f214d27306733a2840036816366d7a204cbc89
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-28 18:58:59 +01:00
hjk
d23e5f38b8 fakevim: implement gm
Change-Id: I27d69414aff355dea1cf334830145dc50d407851
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-28 16:36:22 +01:00
hjk
794cee7ab0 fakevim: implement `. and '.
Change-Id: Ida402d74ac6cbe41165e491ca7cf3321fdd3004e
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-28 16:06:57 +01:00
hjk
289a05a189 fakevim: fix cursor positioning after ]] etc.
Change-Id: Ia42fccff507fce1e999d4534656984b6ebf5180a
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-17 01:13:25 +01:00
hjk
772c2b3cc5 fakevim: refactor register handling
Change-Id: If3551627a8457853c0dedee7a61b388ff3232980
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-12 02:33:15 +01:00
Eike Ziller
85cf2b661e Merge remote-tracking branch 'origin/2.4'
Conflicts:
	src/libs/qmljs/qmljsinterpreter.cpp
	src/libs/qmljs/qmljsinterpreter.h
	src/plugins/debugger/qml/scriptconsole.cpp
	src/plugins/git/gitplugin.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativetiledcanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativetiledcanvas_p.h

Change-Id: Iad59c8d87c72a21c79c047e374c0ab689998af39
2011-11-11 09:46:25 +01:00
hjk
ddc85fe192 fakevim: improve reading of mappings from .vimrc
Change-Id: I3a575ae71c3c84dea98e2d35d1eda429a3c1ea66
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-10 16:14:48 +01:00
hjk
3a8c0f28b5 fakevim: properly split commands in source'd files
Change-Id: Iebe4a1e4150374b9d35fe22910f38d7ca9b3ff4e
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-10 15:56:03 +01:00
hjk
0d906700df fakevim: allow extra colons at the start of an ex command
Change-Id: I4ef27b5735140805f70d8a4806c7d47d08d69c23
Reviewed-by: hjk <qthjk@ovi.com>
2011-11-10 12:51:43 +01:00
hjk
31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
Eike Ziller
912cd548c0 Merge remote-tracking branch 'origin/2.4'
Conflicts:
	src/libs/qmljs/qmljsinterpreter.cpp
	src/libs/qmljs/qmljsinterpreter.h
	src/plugins/madde/maemopackagecreationstep.cpp
	src/plugins/projectexplorer/buildmanager.cpp
	src/plugins/qmljstools/qmljsqtstylecodeformatter.cpp
	src/plugins/qmljstools/qmljsqtstylecodeformatter.h
	tests/auto/qml/qmleditor/qmlcodeformatter/tst_qmlcodeformatter.cpp

Change-Id: I63ab2ba5dac006c37ccfbae55b023396a4676ff7
2011-11-01 18:16:38 +01:00
hjk
f73dc6f444 fakevim: fix replacement of '\&'
Task-number: QTCREATORBUG-6434
Change-Id: Ic6ec34288733c4aa46cee353acf3920f3b4cf9ce
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-01 10:44:16 +01:00
hjk
2ec51f5b2c fakevim: implement :<x>%
Change-Id: I85d91429767519d7e2925e89feee6f3f83ddd3a9
Reviewed-by: hjk <qthjk@ovi.com>
2011-10-28 14:16:56 +02:00
Eike Ziller
bf8cb5d4fc Merge remote-tracking branch 'origin/2.3'
Conflicts:
	qtcreator.pri

Change-Id: Iaca68084799ae9aec257742c395609d6e8aa72cd
2011-08-16 10:21:55 +02:00
hjk
7620d81ef0 Revert "fakevim: also set foreground color for search matches"
This reverts commit c1f225fd8f.

This does not cover the case where the cursor is in the marked
text, which then blinks black-on-black.

Change-Id: Ic94ebbbb3d850624a8fbbc0e1d9d49ba70992ad1
Reviewed-on: http://codereview.qt.nokia.com/2698
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-08-11 10:07:57 +02:00
hjk
30076b1c97 fakevim: remove visually selected contents before pasting.
Task-number: QTCREATORBUG-5605
Change-Id: Iee28b1acaeb4d8ad073bfadb0aab277f11b5001f
Reviewed-on: http://codereview.qt.nokia.com/2669
Reviewed-by: hjk <qthjk@ovi.com>
2011-08-05 08:49:13 +02:00