Martin Aumüller
1d715abfc5
fakevim: don't try to lower-case keys which have no case
...
Merge-request: 131
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-03-18 13:15:58 +01:00
Martin Aumüller
98406e3e18
Revert "fakevim: fix QTCREATORBUG-880"
...
This reverts commit 81ff5cda95 ,
except for the addition of '_' as a synonym for '^'.
Further commits have a different kind of fix that maintains that
Escape always takes one back to the editor.
Merge-request: 131
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-03-18 13:15:58 +01:00
hjk
81ff5cda95
fakevim: fix QTCREATORBUG-880
2010-03-17 14:31:15 +01:00
hjk
c741f83514
fakevim: fix some indentation when tabs are not expanded
2010-03-09 17:50:24 +01:00
hjk
0bd8864780
fakevim: adjust visual tabwidth
2010-03-09 17:50:23 +01:00
Martin Aumüller
414c5ba979
fakevim: 'cw' invoked on a sequence of space should just change the spaces
...
Merge-request: 126
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-03-08 11:44:43 +01:00
Martin Aumüller
6d5c121063
fakevim: 'I' should enter insert mode even when not in visual mode
...
Merge-request: 126
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-03-08 11:44:43 +01:00
hjk
9595504bda
Long live the king!
2010-03-05 11:28:13 +01:00
Martin Aumüller
db150ab61d
fakevim: make sure that cursor is positioned before the character where text would be inserted with 'i'
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:51 +01:00
Martin Aumüller
5af95f01f0
fakevim: only overwrite m_tc with EDITOR's cursor if necessary
...
only ex commands that are handled externally might modify the cursor position w/o updating m_tc
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:51 +01:00
Martin Aumüller
7a71ee1166
fakevim: ctrl-d in insert mode should remove one level of indentation
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:51 +01:00
Martin Aumüller
115b32697f
fakevim: 'dtd' would have deleted a line instead of deleteing to the next 'd'
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:51 +01:00
Martin Aumüller
a7cf72a945
fakevim: improved 'startofline' behaviour for indenting and shifting left/right
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:50 +01:00
Martin Aumüller
21a9943b8d
fakevim: cursor position after deleting linewise should depend on 'startofline' setting
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:50 +01:00
Martin Aumüller
4c80a1ab92
fakevim: dfx should do nothing if no x is found
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:49 +01:00
Martin Aumüller
6648fe439a
fakevim: retain column when moving across lines after '^'
...
Merge-request: 113
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-02-19 13:02:49 +01:00
hjk
b6a99c4e4f
fakevim: re-enable :<line> which was broken after some recent merge
2010-02-17 17:08:03 +01:00
Kai Koehne
98a0757916
Compile fix on Mac OS X (gcc 4.0.1)
2010-02-16 10:02:02 +01:00
hjk
08a1171e28
fakevim: fix two backspace-with-autoindent issues
...
Backspacing across start of line was broken, and it always removed all
automatically indented whitespace.
2010-02-15 17:56:38 +01:00
hjk
354fd8d895
fakevim: implement 'I' in visual block mode
2010-02-12 15:52:19 +01:00
hjk
78a206a3b3
fakevim: fix indentation after <Return><Tab><Backspace>
2010-02-12 11:05:21 +01:00
hjk
f6d4680ffe
fakevim: make ':r' undoable and behave more vim-ish
2010-02-08 14:56:52 +01:00
hjk
787787edee
fakevim: fix shift left in visual mode
2010-02-08 13:31:59 +01:00
Friedemann Kleint
81f14bb270
Fix some code scanning issues.
...
QString: Use QChar/char where appropriate, do not use QString::null
2010-02-02 17:09:41 +01:00
Friedemann Kleint
f672bff338
Fix some code scanning issues.
...
foreach()-Loops.
2010-02-01 14:00:07 +01:00
Friedemann Kleint
2fd8b2d7ff
Fix some code scanning issues.
...
QString: Use QChar where appropriate.
2010-02-01 12:43:56 +01:00
Thiago Macieira
8dca852b35
Fix compilation: #include your headers properly.
...
std::swap is defined in <algorithm>.
Reviewed-By: TrustMe
2010-01-25 10:45:30 +01:00
Martin Aumüller
4d14568afc
fakevim: map 'gt'/'gT' to ':tabnext'/':tabprev'
...
this way, users can override these commands with arbitrary actions,
some want to map switching between the opened files to these keys
Merge-request: 101
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-22 17:05:03 +01:00
Martin Aumüller
a4e34a804a
fakevim: make sure that FakeVimHandler has returned before being deleted
...
some actions might cause the parent editor to be deleted,
don't crash in that case
Merge-request: 101
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-22 17:05:03 +01:00
Martin Aumüller
58571da7a4
fakevim: correct cursor handling for ex commands
...
ex commands might depend on current cursor position and might modifiy
it, thus set the editor's text cursor to fakevim's before initiating the
command and use the editor's text cursor afterwards
Merge-request: 101
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 18:19:58 +01:00
Martin Aumüller
1e46b6232b
fakevim: leave shortcut-passing mode after one shortcut has been pressed
...
this behaviour seems more natural to me, but it has one draw-back: if an
action associated to a shortcut is not enabled, typing that shortcut won't
leave passing mode
2010-01-21 18:10:55 +01:00
hjk
58301f6b10
fakevim: code cosmetics
2010-01-21 17:42:46 +01:00
Martin Aumüller
60f41e9d97
fakevim: fix cursor position and status message for yanking
...
- cursor position should be the start of the yanked region
- the number of lines yanked should be displayed, even when motion was not linewise
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:31 +01:00
Martin Aumüller
6599089c7b
fakevim: don't let 'F'/'T' at the start of a document go into an endless loop
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:31 +01:00
Martin Aumüller
5e30757db6
fakevim: 'g' command prefix flag has to be cleared after it has been consumed
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:31 +01:00
Martin Aumüller
639878a38c
fakevim: '$' and 'l' in visual mode can select beyond EOL
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:31 +01:00
Martin Aumüller
9b2465e37f
fakevim: fix cursor position after 'r'
...
expected cursor position is on last character which was replaced
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:30 +01:00
Martin Aumüller
978fa5d03d
fakevim: fix 'dw' at line-end
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:30 +01:00
Martin Aumüller
9302104cbd
fakevim: make line counting more vi-like
...
- apparently one additional empty line is added to the document at its end,
if the last line ends with \n
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:29 +01:00
Martin Aumüller
07f6d29937
fakevim: ensure that cursor is never at EOL
...
- previously, if the visible vi cursor is on the last character of a line,
the corresponding QTextCursor might have been positioned before and after
the character
- code becomes simpler if the QTextCursor is always positioned before the
vi cursor
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:28 +01:00
Martin Aumüller
7a5891bd2a
fakevim: when leaving visual mode, set move type to char or line according to visual mode
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:28 +01:00
Martin Aumüller
5994044b64
fakevim: 'S' should honour indentation settings
...
fixed by using finishMovement instead of doing all the work
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:28 +01:00
Martin Aumüller
073f14bee8
fakevim: indent when changing text by line ('cj', 'Vc', ...), depending on settings
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:28 +01:00
Martin Aumüller
20f565816b
fakevim: simplifiy implementation of 'j', 'k'
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:27 +01:00
Martin Aumüller
7b28f644f2
fakevim: fix 'c' with linewise motion
...
the lines touched by the motion have to be removed completely except for one newline
(whereas 'd' removes them including all newlines)
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:27 +01:00
Martin Aumüller
f69b867533
fakevim: fix 'cw' on word-end
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:27 +01:00
Martin Aumüller
d323d7701e
fakevim: make 'w' stop on empty lines
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:26 +01:00
Martin Aumüller
fd28fe1892
fakevim: fix deleting/yanking/changing to matching parenthesis
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:26 +01:00
Martin Aumüller
2f02152dd6
fakevim: improved case conversions
...
- make '~' repeatable with '.'
- implement operators 'gu'/'gU'/'g~' for down-casing/up-casing/case-inversion
- visual char/line/block modes for the above
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:26 +01:00
Martin Aumüller
3afcdc002a
fakevim: fix repetition of 'g'/'G'
...
Merge-request: 99
Reviewed-by: hjk <qtc-committer@nokia.com >
2010-01-21 17:38:25 +01:00