Andrey Vlasovskikh
49d0c51d97
Merge branch 'vim-536-cc-second-to-last-line'
2014-11-15 00:00:43 +03:00
Tuomas Tynkkynen
58d964063c
VIM-515 Fix cW command detecting end-of-word incorrectly
...
A cW command on text like 'x$$$$' or '$xxxx' would incorrectly delete
just the first character, and not the rest.
2014-11-14 22:51:46 +02:00
Andrey Vlasovskikh
52b7b9bcd8
Merge branch 'vim-705-multi-line-indent-broken'
2014-11-14 23:05:03 +03:00
Tuomas Tynkkynen
da22b8297b
VIM-536 Fix 'cc' on second-to-last line in file
...
Previously, 'cc' on the second-to-last line of a file would instead open
a new line after the last line of the file.
2014-11-14 16:56:05 +02:00
Tuomas Tynkkynen
ac8ac302ca
VIM-705 Fix repeated multiline indent
...
When a visual mode command is repeated, code calls into
MotionGroup#toggleVisual() to setup a 'fake' visual mode selection. But
when MotionGroup.moveCaret() is called, it notices that the indent
command has the FLAG_EXIT_VISUAL flag, and leaves visual mode right
away.
2014-11-10 23:32:09 +02:00
Tuomas Tynkkynen
22c3a73102
VIM-613 Fix repeat after 'd$'
...
Previously, repeating a 'd$' command would incorrectly delete the
newline from the line.
2014-11-10 16:36:40 +02:00
Andrey Vlasovskikh
9804cd83a6
VIM-652 Added a test for :action
2014-10-24 16:13:40 +04:00
Andrey Vlasovskikh
20e831b56a
Updated tests after fixing VIM-501
2014-10-23 16:58:43 +04:00
Andrey Vlasovskikh
72b74e075c
Merge branch 'visual_block_delete'
2014-10-23 16:55:17 +04:00
Andrey Vlasovskikh
5434edbd54
VIM-792 Fixed line-wise and block-wise paste commands for * and + registers
2014-10-23 16:09:56 +04:00
Andrey Vlasovskikh
6a8c7e4b17
VIM-511 Record caret adjustment changes to the document during <Enter> processing
...
We have to handle Enter by our VimShortcutKeyAction in order to be
able to record it as an action for repeating it via '.'. Since original
Enter handlers are not run in this case we invoke them manually by
collecting a list of actions that can be run for the editor component
on Enter and then running the first action ready to run.
Caret adjustments are detected on changes to the document caused by
Enter. This allows to position the caret properly (e.g. between {})
before recording Enter.
2014-10-23 15:26:22 +04:00
Alexey Shmalko
0ac659f2d1
Fix visual block deleting
...
Currently deleting visual block leaves last char in line untouched. This
patch fixes that as well as tests.
2014-10-21 21:40:43 +03:00
Tony Kay
7eae40ca9a
added a failing test
2014-10-21 11:05:43 -07:00
Andrey Vlasovskikh
3f92dba1b7
VIM-511 Updated test data
2014-10-21 21:16:11 +04:00
Andrey Vlasovskikh
0aedc08cfa
More tests for VIM-511
2014-10-21 20:42:04 +04:00
Andrey Vlasovskikh
8312f5cffd
VIM-511 Added a test for repeating a change that includes auto-inserted parens and quotes
2014-10-21 19:41:11 +04:00
Andrey Vlasovskikh
e3fce51ea1
VIM-511 Fixed editing offset after <BS> for '.' command
2014-10-21 16:56:54 +04:00
Andrey Vlasovskikh
13b4e93bf4
Run the test only if the system clipboard is available
2014-10-20 16:53:25 +04:00
Andrey Vlasovskikh
cc2ed452f0
Merge branch 'clipboard-unnamed'
...
Conflicts:
src/com/maddyhome/idea/vim/option/Options.java
test/org/jetbrains/plugins/ideavim/action/CopyActionTest.java
2014-10-20 15:59:15 +04:00
Andrey Vlasovskikh
d4d3843725
VIM-476 Added default register reset on 'clipboard' change
...
Added a test for :set clipboard=unnamed.
2014-10-20 15:53:33 +04:00
Andrey Vlasovskikh
c873524cb1
VIM-784 Fixed visual line selection where start > end of the selection range
...
It was a regression introduced by the fix of VIM-632.
2014-10-15 15:10:22 +04:00
Andrey Vlasovskikh
d3afd83e8e
Merge branch 'VIM-407'
2014-10-14 15:25:43 +04:00
Andrey Vlasovskikh
3e0e08c5e1
VIM-632 Restored visual block mode that was broken due to multiple carets support
...
Vim actions with multiple carets in modes other than visual block are
not supported yet. It will be a separate feature. The idea behind this
commit is to fix the regression in visual block mode.
Bounds of visual selection are no longer reversed if they are
overlapped, this fixes expanding the block selection in all directions.
IdeaVim no longer uses SelectionModel.hasBlockSelection() since it
always returns 'true' now.
There are a couple of places where we remove secondary carets when
moving the primary caret or re-setting visual mode. It may be
incompatible with the forthcoming support for multi-caret Vim actions.
2014-10-09 18:01:47 +04:00
Andrey Vlasovskikh
a717e4785d
VIM-569 Fixed <C-W> when the caret is at the end of a line
2014-09-09 00:36:39 +04:00
Dathan Bennett
16ce16c632
Add test for VIM-569 fix
2014-09-06 02:59:49 -07:00
Andrew Brookins
19365effa9
VIM-407 Add tests. Only skip the ending line if it is empty.
...
Conflicts:
src/com/maddyhome/idea/vim/group/ChangeGroup.java
test/org/jetbrains/plugins/ideavim/action/ShiftRightLinesActionTest.java
2014-05-22 22:04:14 -07:00
Andrey Vlasovskikh
e564eb5878
VIM-213 Use '< and '> marks for saving and restoring last visual selection
2014-05-15 02:49:50 +04:00
Andrey Vlasovskikh
9cd620af58
VIM-646 Don't update visual selection if command moves caret and exits visual mode
2014-05-12 21:50:50 +04:00
Andrey Vlasovskikh
0887c72486
Updated index docs for all the visual mode commands
2014-05-12 20:00:17 +04:00
Andrey Vlasovskikh
a516fd880e
Made visual-only mode actions VimCommandActions
2014-05-12 19:28:24 +04:00
Andrey Vlasovskikh
2d1b40f00c
Added tests for 'gv' and 'o' in visual mode
2014-05-08 16:59:11 +04:00
Andrey Vlasovskikh
b200c842b4
VIM-679 Allow \u000D\u000C as <CR> in mappings
2014-05-05 21:26:35 +04:00
Andrey Vlasovskikh
c8df52a86c
VIM-679 Allow \u0016 as an escape character for '|' in mappings
2014-05-05 20:51:39 +04:00
Andrey Vlasovskikh
b17a592c95
VIM-679 Parse characters less than \u0020 as <C-$CHAR>
2014-05-05 20:40:14 +04:00
Andrey Vlasovskikh
f71d6c7fab
VIM-679 Don't trim whitespace-like characters from command arguments
...
Characters like '\u0018' may appear in mapping commands.
2014-04-30 21:08:16 +04:00
Andrey Vlasovskikh
b593d90dff
VIM-676 Handle control characters in .vimrc as pressed, not typed keystrokes
2014-04-30 18:46:45 +04:00
Andrey Vlasovskikh
6ee0b821cc
VIM-672 Ignore mappings that contain <Plug> and <SID>
...
These mappings don't make sense to Vim emulation in IdeaVim.
2014-04-29 19:39:58 +04:00
Andrey Vlasovskikh
72dc121fcd
VIM-670 First character of a recursive mapping shouldn't be mapped again
...
The mapping's "from" keys should be a prefix of "to" keys.
2014-04-29 17:22:25 +04:00
Andrey Vlasovskikh
786c4dc817
VIM-666 Support <Bar> in Vim key notation
2014-04-29 16:47:47 +04:00
Andrey Vlasovskikh
4351d5c366
VIM-666 Ignore characters after '|' in :map commands
...
Perhaps it should become a part of command parsing, since it is
possible to put several command on one line.
2014-04-29 16:40:28 +04:00
Andrey Vlasovskikh
e9e5c77cd3
VIM-661 Apply Operator pending and Visual mode mappings only at command start
2014-04-28 17:23:45 +04:00
Andrey Vlasovskikh
1f842b6d31
New IdeaVim API compatibility
2014-04-24 17:38:37 +04:00
Andrey Vlasovskikh
954d7bd14c
Merge remote-tracking branch 'selesse/vim-439'
...
Conflicts:
src/com/maddyhome/idea/vim/ex/CommandParser.java
2014-04-24 17:35:10 +04:00
Andrey Vlasovskikh
3cb40cb09d
VIM-661 Apply Normal mode mappings only at command start
2014-04-23 20:44:06 +04:00
Andrey Vlasovskikh
1d0b1791c4
VIM-651 Parse <BS> as backspace
2014-04-22 17:59:49 +04:00
Andrey Vlasovskikh
684531aaae
VIM-665 Handle Shift-char as typed uppercase keystroke, not as pressed one
2014-04-22 17:16:09 +04:00
Andrey Vlasovskikh
4a1504f9e0
VIM-660 Handle <C-Space> as pressed keystroke, not typed one
2014-04-22 16:50:46 +04:00
Andrey Vlasovskikh
52c86d8c27
VIM-645 Handle '<Space>' in key mappings as a typed key, not as a pressed shortcut
2014-04-08 00:25:14 +04:00
Andrey Vlasovskikh
2a0833e3b5
Don't try to interpret '<script>' and '<expr>' key mappings
2014-04-06 03:52:39 +04:00
Andrey Vlasovskikh
6acc89331d
Ignore special arguments of 'map'
2014-04-06 03:45:36 +04:00