1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2024-11-24 22:42:53 +01:00
Commit Graph

935 Commits

Author SHA1 Message Date
Alex Plate
35eb6c2974
Add tests and doc 2019-10-24 15:16:59 +03:00
Alex Plate
e51deac151
Make TemplateTest.kt as option test 2019-10-24 12:59:02 +03:00
Alex Plate
979bf26441
Change the implementation of system marks 2019-10-21 16:58:22 +03:00
Alex Plate
36f473508a
Disable mappings for the second part of multikey commands 2019-10-21 13:40:53 +03:00
Alex Plate
5eb2810352
Add new corrections for caret vertical motion 2019-10-18 15:15:35 +03:00
Alex Plate
7130760114
Fix vertical caret movements with inlays 2019-10-17 17:34:10 +03:00
Alex Plate
03c38e3454
[VIM-1804] Correct disabling and enabling IdeaVim 2019-10-15 18:14:13 +03:00
Alex Plate
8c0a85abf4
Vim script supports evaluating of integers 2019-10-14 12:44:08 +03:00
Alex Plate
48915cc6ad
Print iskeyword value as a regex string 2019-10-09 18:20:16 +03:00
Alex Plate
02b065cc2c
Extensions can use linewise selection 2019-10-08 14:36:20 +03:00
Alex Plate
29858e8b10
Do not handle plugin incomplete mappings 2019-10-08 10:31:47 +03:00
Alex Plate
700decb2e0
Update mappings handler for properly handler intersecting mappings. 2019-10-02 18:44:43 +03:00
Alex Plate
db68ae5cea
Add tests for extension in op mode 2019-10-01 10:15:44 +03:00
Alex Plate
eb724c8753
Fix yy command 2019-09-27 22:11:28 +03:00
Alex Plate
1bb0caa704
Fix dd for empty line 2019-09-27 17:46:00 +03:00
Alex Plate
70fd7ef89d
operator-W doesn't affect the next line 2019-09-26 15:31:05 +03:00
Alex Plate
50d8e79571
Use fail function from kotlin 2019-09-26 14:47:36 +03:00
Alex Plate
200a9c6318
Update key handling process 2019-09-25 20:01:19 +03:00
Alex Plate
9c5f50d0a6
Move change motion tests to the separate file 2019-09-25 13:02:49 +03:00
Alex Plate
8fcc9ac1e2
Some fixes on change motion actions. 2019-09-24 17:53:36 +03:00
Alex Plate
a575bc92cc
Correctly process d_ command 2019-09-18 22:40:29 +03:00
Alex Plate
d041712bd8
Run manual tests 2019-09-17 18:13:08 +03:00
Alex Plate
42375d143e
[VIM-1772] Fix last character for :y command 2019-09-04 17:30:34 +03:00
Alex Plate
cf2f223ad4
[VIM-1781] Fix yanking with $ motion 2019-09-04 11:30:24 +03:00
Alex Plate
848bb01c10
Get rid of VimActionBean 2019-09-03 14:07:35 +03:00
Alex Plate
d6d2a55747
Use handlers directly (without actions) 2019-09-03 14:07:35 +03:00
Matt Ellis
fe714a9003
Move caret during incsearch to match Vim behaviour 2019-09-02 17:05:27 +01:00
Matt Ellis
e8501a658b
Merge branch 'master' into bug/search-highlights 2019-09-02 12:31:28 +01:00
Alex Plate
3fb4830456
Create file that describes manual tests for IdeaVim project 2019-08-26 17:02:47 +03:00
Alex Plate
bd6d61c8c7
Merge pull request #201 from jorgengranseth/support-surround-function-name
Support f and F surround commands (function name)
2019-08-26 12:32:09 +03:00
Alex Plate
8fdec8e816
Merge pull request #202 from jorgengranseth/implement-delmarks-command
VIM-1720 Implement Ex command :delm[arks]
2019-08-26 12:12:24 +03:00
Alex Plate
62466123ff
Change URLs to https
TPV-3480
2019-08-20 13:10:19 +03:00
Matt Ellis
7ac8d7a43a
Fix moving caret while confirming replace 2019-08-08 12:13:38 +01:00
Matt Ellis
27d2742386
Fix bug with search updates getting stuck off 2019-08-07 09:42:45 +01:00
Matt Ellis
17e3dfe2bb
[VIM-1757] Improve handling of search offsets 2019-08-06 22:32:47 +01:00
Alex Plate
0e2289caa6
[EA-129083] Fix OOBE for # action 2019-08-05 20:39:07 +03:00
Jørgen Granseth
3161ba8983 Implement Ex command :delm[arks]
Deletes existing marks. See
http://vimdoc.sourceforge.net/htmldoc/motion.html#:delmarks
for details.
2019-08-05 19:06:19 +02:00
Jørgen Granseth
92125b49f0 Emphasize surround cursor movement in tests 2019-07-31 20:06:26 +02:00
Alex Plate
0887a57e29
[VIM-1725] Enable selection adjustment with a small delay 2019-07-30 17:52:34 +03:00
Jørgen Granseth
a6e0fbd5e6 Add the s surround action (preceding space)
https://github.com/tpope/vim-surround/blob/master/doc/surround.txt#L148
2019-07-27 02:12:52 +02:00
Jørgen Granseth
c07d0353f0 Support f and F surround commands (function name)
https://github.com/tpope/vim-surround/blob/master/doc/surround.txt#L138
2019-07-26 22:14:10 +02:00
Alex Plate
258557ee5d
[VIM-1713] Add possibility to get ExEntryPanel without shortcuts 2019-07-26 15:27:30 +03:00
Alex Plate
47236c1e6c
Convert VimSurroundExtenstionTest to kotlin 2019-07-25 13:28:00 +03:00
Alex Plate
5d8996dc38
WIP: Renaming file 'VimSurroundExtensionTest' with Kotlin extension 2019-07-25 13:24:00 +03:00
Alex Plate
c0fc62a1d6
[VIM-1712] Fix Y command for visual mode 2019-07-24 15:56:19 +03:00
Alex Plate
5b8d5ca72a
Add test for template notification 2019-07-18 17:39:02 +03:00
Alex Plate
40cd8b65d7
Revert "Update deprecated method"
This reverts commit 3ec6bb84
2019-07-18 17:25:14 +03:00
Alex Plate
3ec6bb84ee
Update deprecated method 2019-07-18 17:17:44 +03:00
Alex Plate
54544c2683
[VIM-1359] Fix behavior of i_Ctrl-W action 2019-07-18 12:32:54 +03:00
Alex Plate
cf41b8745a
Fixing execution actions from visual mode 2019-07-17 20:14:51 +03:00
Alex Plate
b9ecf20596
Reorganize tests for ex commands 2019-07-17 16:00:41 +03:00
Alex Plate
68ae03ef85
Replace behaviour to the american-style behavior 2019-07-17 14:39:09 +03:00
Alex Plate
8750c30b7d
Move to selection start/end in select mode if template is active 2019-07-17 14:34:54 +03:00
Alex Plate
b56c82cefb
Move tests to correct package 2019-07-17 12:54:43 +03:00
Alex Plate
a0ead808d5
Add tests for put with idea 2019-07-16 17:10:31 +03:00
Alex Plate
21a299cb2b
Test notifications for ideajoin and ideaput 2019-07-16 15:28:29 +03:00
Alex Plate
dc2530957f
Rename smartjoin with ideajoin 2019-07-15 14:22:36 +03:00
Alex Plate
e88dcae1a0
Rename idemarks to ideamarks 2019-07-15 14:19:48 +03:00
Alex Plate
c17ad0ef2d
Fix back search in texts with tabs 2019-07-12 16:11:59 +03:00
Alex Plate
b3eefc9e25
[VIM-1700] Add tests for some searches with tabs 2019-07-11 17:22:17 +03:00
Alex Plate
41baee7b43
Add VimFunctionMark and VimTestFunction annotations 2019-07-11 16:22:53 +03:00
Alex Plate
fc7d6589bf
Add function that converts dots to tabs in tests 2019-07-11 16:22:24 +03:00
Alex Plate
cee9c81496
[VIM-1697] Fix wrong search with tab characters 2019-07-10 19:07:10 +03:00
Alex Plate
1c01097491
Add new options test 2019-07-10 16:44:06 +03:00
Alex Plate
ae08438b7b
Reformat vimOptionTestCase 2019-07-10 14:52:09 +03:00
Alex Plate
d83bab55aa
Make tabs more viewable for developers 2019-07-10 12:50:40 +03:00
Alex Plate
91de1004e6
Fix small code smells 2019-07-05 12:22:25 +03:00
Alex Plate
19a4610373
Add tests for visual change functionality 2019-07-03 18:11:19 +03:00
Alex Plate
c24ebf3427
Create test for validating info file 2019-06-28 14:22:50 +03:00
Alex Plate
f904ceae7a
Remove bad test 2019-06-28 12:21:02 +03:00
Alex Plate
e1d4e2f526
Fix few caret position problems 2019-06-27 15:50:46 +03:00
Alex Plate
f18e317dcf
Reformat all listeners in project 2019-06-27 12:19:14 +03:00
Alex Plate
000ebfaf2f
Fix all missing @Override annotations 2019-06-25 15:20:31 +03:00
Matt Ellis
2aa45b8794
Merge branch 'master' into feature/search 2019-06-20 12:14:55 +02:00
Alex Plate
35d5eb1713
Fix tests for idea marks 2019-06-19 15:30:37 +03:00
Alex Plate
86fab38407
[VIM-959] Add idemarks option 2019-06-19 13:45:18 +03:00
Matt Ellis
866fe5cc8d
Merge branch 'master' into feature/search 2019-06-18 20:07:21 +02:00
Alex Plate
ddd37f5bee
Reformat Options file 2019-06-18 16:27:40 +03:00
Matt Ellis
b157d07b6d
Improve handling of Delete and Backspace in ex entry 2019-06-18 13:27:32 +01:00
Matt Ellis
31d30a9115
Only close ex entry with backspace if no text 2019-06-18 11:49:55 +01:00
Matt Ellis
35bcb627c2
Correctly start/reset highlighting with :s command 2019-06-15 11:21:02 +01:00
Alex Plate
fe4525b441
Add smartjoin option 2019-06-14 19:05:53 +03:00
Alex Plate
e17594a7aa
Remove VimFileEditor test case 2019-06-14 17:44:54 +03:00
Matt Ellis
416357bf27
Incsearch highlights current match if nohlsearch
This also fixes a bug which would return an incorrect range when searching backwards, and two matches are found on a line, one before and one after the search position. This is due to reusing a reference, rather than making a copy. This was never discovered because we only used the start offset, not the end!
2019-06-14 15:43:20 +01:00
Alex Plate
ae021ea930
Update indent for kt test files 2019-06-14 17:10:23 +03:00
Matt Ellis
32735a5e06
Fix start offset for incsearch with :s command 2019-06-14 12:20:07 +01:00
Matt Ellis
5b1d26263b
Add incsearch highlights for :substitute command
Includes support for :global and :vglobal for when IdeaVim adds them
2019-06-14 10:39:07 +01:00
Alex Plate
a1adb1eb43
Create noneOfEnum helper function 2019-06-11 13:15:52 +03:00
Alex Plate
778ddb0e75
Support gn text objects 2019-06-11 13:06:36 +03:00
Alex Plate
e919a026b7
Remove secondary carets on gn search 2019-06-11 12:01:56 +03:00
Alex Plate
a78f78604a
Move gn commands to motion package 2019-06-11 11:58:06 +03:00
Alex Plate
eeea093bb8
Improve performance of gn command 2019-06-11 11:49:59 +03:00
Alex Plate
4e205d078d
Merge branch 'master' into pull/134
# Conflicts:
#	src/com/maddyhome/idea/vim/group/MotionGroup.java
2019-06-10 14:48:50 +03:00
Alex Plate
16016cb13d
[VIM-714] Fix caret vertical movements problems 2019-06-10 13:27:20 +03:00
Alex Plate
2e7f7cf642
Fix tests with visual selection 2019-06-10 11:17:12 +03:00
Matt Ellis
60f9403657
Incsearch highlights all matches + current match 2019-06-07 23:33:05 +01:00
Alex Plate
ac2f11360c
Extract some methods to CommandStateExtensions 2019-06-07 15:04:57 +03:00
Alex Plate
380156aa4b
Use star register for clipboard test 2019-06-06 16:53:09 +03:00
Alex Plate
6081f1d5ff
Merge pull request #197 from JetBrains/IdeaPut
VIM-25 Smart put operations (via IJ)
2019-06-06 14:08:06 +03:00
Matt Ellis
ff54bfa5b3
Merge branch 'master' into feature/search 2019-06-05 20:47:34 +01:00
Matt Ellis
22445f6df9
Add tests for hlsearch and incsearch 2019-06-05 20:24:38 +01:00
Alex Plate
272aa9513a
Replace <caret> with ${c} for kotlin tests 2019-06-05 19:00:36 +03:00
Alex Plate
4b1abfc60f
Add test for clipboard copy 2019-06-05 18:59:09 +03:00
Alex Plate
32fdbaccc3
VIM-25 Smart put operations (via IJ) 2019-06-05 15:49:31 +03:00
Matt Ellis
f3b1ddf439
Merge branch 'master' into feature/search 2019-06-03 16:42:39 +01:00
Alex Plate
1bb6345fcb
Refactor put group 2019-05-31 19:27:43 +03:00
Alex Plate
fa9b1933fa
Merge pull request #186 from JetBrains/VIM-510
This huge branch was created as a result of VIM-510. It provides many
changes aiming to solve the problems associated with selection.

Main changes:

Introducing select mode.
[VIM-510] Structural selection enables visual mode.
[VIM-274] During refactoring, select mode is enabled (which works almost
like normal IntelliJ IDEA selection).
2019-05-31 12:24:33 +03:00
Alex Plate
0b76e86ace
Create different method for isVisualBlock and isBlockSubMode 2019-05-30 12:26:13 +03:00
Alex Plate
52d0c44014
Fix enter action for select mode 2019-05-24 15:43:21 +03:00
Alex Plate
da7ff06734
Rename acontinue* to acontinue* 2019-05-24 11:41:40 +03:00
Alex Plate
5081ede268
[VIM-1666] properly handling of digraphs after pressing backspace 2019-05-21 15:52:17 +03:00
Alex Plate
34ec791ba3
Add VimOptionDefault to docs 2019-05-21 12:25:27 +03:00
Alex Plate
f4b80d4d80
Add docs to VimListOptionTestCase 2019-05-20 19:10:37 +03:00
Alex Plate
fcbc1773ad
Add VimListOptionTestCase for testing IdeaVim options 2019-05-20 17:34:06 +03:00
Alex Plate
4d971be732
Support End and Shift-End motions 2019-05-20 13:21:24 +03:00
Alex Plate
deff56db29
Extract handler for shifted arrows 2019-05-20 12:54:05 +03:00
Matt Ellis
9c5420c79c
Fix exception highlighting last CR in file
Custom implementation of offsetToCharacterPosition failed when the text range of the last CR in the file wrapped to a line that didn't exist in the editor. This caused an exception when search highlights included the last CR in the file
2019-05-19 19:40:26 +02:00
Matt Ellis
bd58802ed6
Make incsearch work with entering digraphs 2019-05-17 23:19:02 +01:00
Matt Ellis
71504d0ded
Merge branch 'master' into ideavim-search
# Conflicts:
#	src/com/maddyhome/idea/vim/ui/ExEntryPanel.java
2019-05-17 23:00:22 +01:00
Matt Ellis
70652d445c
Fix next/prev after search word and smartcase
Makes sure that search word forward/backward ignores smartcase for first and subsequent searches.
2019-05-17 22:29:58 +01:00
Matt Ellis
35f96b28bc
VIM-128 Substitute works with ignorecase and smartcase 2019-05-17 22:28:40 +01:00
Alex Plate
849c0cbd49
Support shifted and non-shifter Home key 2019-05-16 17:22:47 +02:00
Alex Plate
770cc2cd72
Use !! in tests instead of ?: run 2019-05-15 19:57:17 +02:00
Alex Plate
34893e7847
Support the rest of selectmodel options 2019-05-15 18:55:56 +02:00
Alex Plate
c49d5b4ffa
Move packages to better location 2019-05-15 15:47:29 +02:00
Alex Plate
83b626b77e
Remove ExtendSelection actions 2019-05-15 13:01:18 +02:00
Alex Plate
45932d9189
Save last column during shift-motions 2019-05-15 10:25:38 +02:00
Alex Plate
fe01820f3f
Add support for key in selectmode option 2019-05-15 10:18:44 +02:00
Alex Plate
2ad4436cef
Add support for startsel in keymodel option 2019-05-15 09:59:31 +02:00
Alex Plate
ce692df94f
Fix cc command for empty document 2019-05-14 19:34:26 +03:00
Alex Plate
dbcf2acce4
Support cmd for selectmode option 2019-05-14 19:14:53 +03:00
Alex Plate
45b286206f
Replace <caret> with ${c} 2019-05-14 17:15:14 +03:00
Alex Plate
bdc9b78ec8
Merge branch 'master' into VIM-510 2019-05-14 16:51:55 +03:00
Alex Plate
25289ed4c5
Fix dot command for visual change 2019-05-14 13:20:44 +03:00
Alex Plate
2c32cbfbfd
Fix linewise change to end of document 2019-05-14 13:16:30 +03:00
Alex Plate
4196ec5093
Fix big O for visual block mode 2019-05-13 21:18:35 +03:00
Alex Plate
66dc40f6e2
[VIM-1655] Deleted in insert mode text is not yanked 2019-05-13 15:23:59 +03:00
Alex Plate
b3bf33f488
Merge pull request #193 from citizenmatt/feature/cmdline-editing
Improvements to ex entry
2019-05-08 19:43:55 +03:00
Alex Plate
58081ed0ef
Fix broken test 2019-05-08 19:43:13 +03:00
Alex Plate
f80111299f
Use '\n' separator for CmdHandler 2019-05-08 19:32:09 +03:00
Alex Plate
f5dd1722f5
Fix separator related failed tests 2019-05-08 19:20:14 +03:00
Alex Plate
4237ce9b3c
Support multicaret for entering visual mode with count 2019-05-08 18:44:02 +03:00
Alex Plate
b3f3a307ba
Support entering visual mode with count without previous visual operation 2019-05-08 17:39:33 +03:00
Alex Plate
f40ee92826
Support enter visual mode with count 2019-05-08 16:42:16 +03:00
Alex Plate
686c774e0f
Add VimBehaviourDiffers for motion right tests 2019-05-08 16:08:39 +03:00
Alex Plate
712e3df4b8
Add muted tests to dollar motion in visual block mode 2019-05-07 17:12:15 +03:00
Matt Ellis
98d22523be
Merge branch 'master' into feature/cmdline-editing 2019-05-07 12:32:25 +01:00
Matt Ellis
7cfbddfd35
Remove unused editor actions 2019-05-07 12:25:02 +01:00
Alex Plate
d04196ec7c
Use native selection for visual operations 2019-05-06 17:05:45 +03:00
Alex Plate
7519eb1f43
Move listeners to separate package 2019-05-06 12:20:15 +03:00
Alex Plate
13128d354d
Remove redundant static call 2019-04-30 16:58:56 +03:00
Alex Plate
31b41cacba
Fix motion caret to the next line after changing full text 2019-04-30 16:33:31 +03:00
Alex Plate
5b628c2f48
Use constants from TestUtil in VimTestCase 2019-04-30 13:19:12 +03:00
Alex Plate
dcb2300699
Add test for removing indent in PyCharm 2019-04-30 12:29:57 +03:00
Alex Plate
f816bc23e9
Create more complicated VimSelection structure. Support dollar motion 2019-04-29 16:46:30 +03:00
Matt Ellis
8601730dd8
Add prompt when inserting digraphs and registers
Also resets state correctly when cancelling inserts
2019-04-29 14:12:19 +01:00
Alex Plate
45b757697a
Merge pull request #192 from danielemegna/VIM-1644
[Vim 1644] - Fix action repeat broken with visual mode
2019-04-29 15:08:20 +03:00
Alex Plate
af79066c26
Merge pull request #179 from Vvalter/master
Fix VIM-1090 and VIM-1100 tag motion with duplicate tags.
2019-04-29 13:59:15 +03:00
Alex Plate
c5f6676ac2
Put tag tests to separate files 2019-04-29 13:56:42 +03:00
Matt Ellis
906d2a4168
Insert register at caret location, instead of appending 2019-04-29 11:44:34 +01:00
Alex Plate
3b360c807e
Merge pull request #188 from ECourant/feature/command
(VIM-1105) Adding support for command aliasing.
2019-04-29 13:21:53 +03:00
Matt Ellis
e7603a78d0
Add tests for ex entry shortcuts 2019-04-29 09:29:08 +01:00
Daniele Megna
417fa314b4 Fix VIM-1644: keep Visual and VisualBlock start-end values updated
during MotionGroup#toggleVisual method
2019-04-28 11:20:20 +02:00
Simon Rainer
73cfd71bd4 Fixes successive tag block selection. 2019-04-27 12:46:33 +02:00
Daniele Megna
3a092012bb Add some repeat action passing tests 2019-04-27 11:25:56 +02:00
Simon Rainer
415abd13c9 Merge remote-tracking branch 'upstream/master' 2019-04-26 17:18:08 +02:00
Elliot Courant
4ea8e15710
(VIM-1105) Adding support for command aliasing.
Commands `command`, `comclear` and `delcommand` have been added. `command` also
supports -nargs, allowing arguments to be passed to the aliased command.
Symbols supported for -nargs are: <args> <q-args> <count> <lt>.
2019-04-26 06:17:30 -05:00
Alex Plate
9b4d38ed3c
Rearrange VisualMotionGroup code 2019-04-25 17:19:36 +03:00
Alex Plate
5132327d62
Merge pull request #159 from ikenox/search-action-by-shortcut-key
Search actionlist by keyboard shortcuts which is assigned to action
2019-04-25 12:09:09 +03:00
Alex Plate
963840612c
Select full line while visual line mode 2019-04-25 10:54:46 +03:00
Naoto Ikeno
98c4bb2c4f fix broken tests 2019-04-24 12:48:52 +09:00
Alex Plate
95c5256fe3
Fix failed tests 2019-04-23 16:06:01 +03:00
Alex Plate
060d27f57a
Move BlockParen tests to separate files 2019-04-23 13:23:43 +03:00
Alex Plate
13b75dea27
Merge pull request #189 from Nimamoh/VIM-1633
VIM-1633 - fix block selection
2019-04-23 12:48:09 +03:00
Romain Gautier
9487cd2b0b Revert block tag part 2019-04-23 00:19:04 +02:00
romain.gautier@nimamoh.net
8c1cca0d57 VIM-1633 - correct handling of self closing tags 2019-04-18 18:30:24 +02:00
Simon Rainer
6d74480998 Fixes tag motion handling slashes incorrectly. 2019-04-18 16:12:04 +02:00
Simon Rainer
31bad3a1e1 Merge https://github.com/JetBrains/ideavim 2019-04-18 15:24:09 +02:00
romain.gautier@nimamoh.net
f0ccf6c3a5 VIM-1633 - empty tag block selection case 2019-04-18 14:55:54 +02:00
romain.gautier@nimamoh.net
367b13cdad VIM-1633 - fix tag block selection 2019-04-18 13:17:35 +02:00
Naoto Ikeno
9f682cded0 filter an actionlist by assigned shortcut key 2019-04-17 16:17:09 +09:00
Alex Plate
74d5144892
Set visual mode for non-vim selections 2019-04-15 17:46:50 +03:00
Alex Plate
3786660ecd
Motion right with unicode characters 2019-04-15 14:00:17 +03:00
romain.gautier@nimamoh.net
c0d72d25f8 VIM-1633 - fix block selection 2019-04-13 03:35:08 +02:00
Alex Plate
b69d7f9729
Fix problems after rebase 2019-04-12 19:08:18 +03:00
Alex Plate
03a934a8e9
Add motions to left/right/up/down arrows in select mode 2019-04-12 19:03:18 +03:00
Alex Plate
215df5cc03
Enter insert mode after select mode while editing template 2019-04-12 19:03:18 +03:00
Alex Plate
cfcdbffa7f
Handle tab character with block visual selection 2019-04-12 19:03:18 +03:00
Alex Plate
33534d50cd
Support del and backspace in select mode 2019-04-12 19:03:17 +03:00
Alex Plate
740ef8a2d7
Update down motion 2019-04-12 19:03:17 +03:00
Alex Plate
68efd8f3d0
Properly handling of unexpected block selection 2019-04-12 19:03:17 +03:00
Alex Plate
6fe6e83cb9
Add mode, submode and caret colour checks to doTest method 2019-04-12 19:03:17 +03:00
Alex Plate
519cbfe38b
Tests for up/down motions 2019-04-12 19:03:16 +03:00
Alex Plate
f1fd5f2aa6
Do not move secondary carets in selection block mode to selection end - 1 2019-04-12 19:03:16 +03:00
Alex Plate
2b5d06a6dc
Multicaret tests for left/right motions 2019-04-12 19:03:16 +03:00
Alex Plate
ef13d04a98
Add tests for key handler 2019-04-12 19:03:16 +03:00
Alex Plate
fb3f3c7405
Add Escape action 2019-04-12 19:03:16 +03:00
Alex Plate
a9df13e4d7
Tests for left-right select motions 2019-04-12 19:03:15 +03:00
Alex Plate
a133a94dbe
Create tests for select mode toggling 2019-04-12 19:03:15 +03:00
Alex Plate
bf5cab0062
Use string templates for <caret> and <selection> in kt files 2019-04-12 19:03:15 +03:00
Alex Plate
4e64838613
Handler enter action in selection mode 2019-04-12 19:03:15 +03:00
Alex Plate
2f894a5f2f
Create tests for entering select mode 2019-04-12 19:03:15 +03:00
Alex Plate
be8a5f535c
Get rid of static methods to get common approach for group functions 2019-04-12 19:03:14 +03:00
Alex Plate
73f670212e
Enter select mode with multiple carets 2019-04-12 19:03:13 +03:00
Alex Plate
4bff954c3b
Fix :join command 2019-04-12 19:03:13 +03:00
Alex Plate
ab9ba94dbf
Add docs for new classes and functions 2019-04-12 19:03:12 +03:00
Alex Plate
ced99152a1
Fix visual block selection 2019-04-12 19:03:12 +03:00
Alex Plate
062d7d3f71
Fix setVisualMode for caret without selection 2019-04-12 19:03:12 +03:00
Alex Plate
284983a4a7
Move listeners to separate class 2019-04-12 19:03:11 +03:00
Alex Plate
5be2ca8efc
Fix motion down 2019-04-12 19:03:11 +03:00
Alex Plate
826b3d6803
Handle unexpected caret events 2019-04-12 19:03:11 +03:00
Alex Plate
6852463b53
Fix visual block deletion 2019-04-12 19:03:11 +03:00
Alex Plate
a220be8136
Fix all tests 2019-04-12 19:03:10 +03:00
Alex Plate
d551531603
Test fixing 2019-04-12 19:03:09 +03:00
Alex Plate
26d03d49b1
Create tests for visual put action 2019-04-12 19:03:07 +03:00
Alex Plate
3fb3aaad2a
Introduce new VisualOperatorActionHandler
Update visual put to new handler
2019-04-12 19:03:06 +03:00
Alex Plate
9b4c732dca
Remove unused caret data 2019-04-12 19:03:06 +03:00
Alex Plate
2d4eed726f
Fix motion right with tabs 2019-04-12 19:02:48 +03:00
Alex Plate
75fbc0f939
[VIM-1425] Fix % command 2019-04-12 15:16:26 +03:00
Alex Plate
c8c1993db3
Fix right motion for non-ascii character 2019-04-12 14:39:37 +03:00
Alex Plate
628cb33e44
Revert "[VIM-1425] Fix % command"
This reverts commit d0a39ef3
2019-04-11 16:40:25 +03:00
Alex Plate
d0a39ef32f
[VIM-1425] Fix % command
Command % worked wrong when
- There was '\\' character on the way
- Inside strings
2019-04-11 16:09:57 +03:00
Daniele Megna
0f5ca758b8 Implement TabOnlyHandler 2019-04-07 11:42:50 +02:00
Alex Plate
4b49bb6d18
Merge pull request #180 from gecko655/VIM-1067
Fix issue VIM-1067: Repeat commands deletes End Of Line character when repeating "append to end of line" ('A') command.
2019-04-01 19:56:15 +03:00
Alex Plate
465ed569a1
Merge pull request #178 from sumoooru2/master
Fix findBlockRange
2019-04-01 19:48:59 +03:00
jonatantierno
c717bed4fb Command gn 2019-03-16 14:47:09 +01:00
gecko655
170bff5a3f Added tests for VIM1067 2019-03-11 00:43:25 +09:00
sumoooru2
b55615fffa Add a unit test 2019-02-28 18:36:05 +09:00
Simon Rainer
990caaa75d VIM-1090 VIM-1100 fix tag motion with duplicate tags. 2019-02-24 11:32:35 +01:00
Daniel Leong
00dc6fe775 Preserve caret position (only) for linewise comments 2019-02-22 20:31:25 -05:00
Daniel Leong
3fa9f258d7 Add an HTML filetype test 2019-02-22 20:01:03 -05:00
dhleong
6a6632e363 Fix visual-mode gc action 2019-02-22 10:11:31 -05:00
dhleong
245c48d78f Only pass extra keys for prevMappingInfo if necessary
That is, if the mapping info we're using *is* the prevMappingInfo.
If it's not, that means the prevMappingInfo was part of a prefix that
the currentMappingInfo completed
2019-02-22 10:11:31 -05:00
dhleong
e5d880b516 Update base ambiguous mapping tests 2019-02-22 10:11:31 -05:00
dhleong
ff02161062 Improve tests for more depth, cover gc(motion)/gcc issue
The failing gc(motion) tests seem more like implementation bugs
than anything else, but the the issues `gcc` with are unexpected
2019-02-22 10:11:31 -05:00
dhleong
0475610f59 Another attempt at comment motion extension 2019-02-22 10:11:31 -05:00
Alex Plate
6565ad8e96
Update copyright on test files 2019-02-21 12:56:20 +03:00
Alex Plate
c0819a83f0
Create ignored tests for VIM-714 issue 2019-02-21 12:45:15 +03:00
Alex Plate
cdff9e28a1
Support some increment and decrement commands 2019-02-20 16:10:44 +03:00
Alex Plate
687a601772
Add Tony Arra to contributor list 2019-02-19 19:56:18 +03:00
Alex Plate
a38231fb1b
Merge pull request #172 from TonyArra/VIM-1569
VIM-1569: Strip tag attributes from closing tag for Vim-Surround
2019-02-19 19:45:54 +03:00
Alex Plate
740abc1e70
Use enum for storing command flags 2019-02-19 16:43:23 +03:00
Alex Plate
7e23fca598
New style of command definition 2019-02-18 21:32:23 +03:00
Alex Plate
1a91f0cbcb
Convert SubstituteHandler to kotlin 2019-02-15 19:17:37 +03:00
Alex Plate
21b9b1d7f1
Convert ShiftRightHandler to kotlin, write tests for handler 2019-02-15 17:54:32 +03:00
Alex Plate
bd36a6d528
Convert ShiftLeftHandler to kotlin, write tests for handler 2019-02-15 17:48:26 +03:00
Alex Plate
b114f4ee96
Flaky test remove 2019-02-15 14:58:49 +03:00
Alex Plate
1b61598149
Convert NextFileHandler to kotlin 2019-02-14 17:41:55 +03:00
Alex Plate
2cfc180df7
Convert MarkHandler to kotlin. Write tests for :mark command 2019-02-14 16:29:06 +03:00
Alex Plate
6dc9843aa9
Extract "%" tests into separate file 2019-02-14 13:53:49 +03:00
Alex Plate
7bccc2fbdb
Merge pull request #127 from vedran/master
Support end-of-line multi line percent match in visual mode
2019-02-14 13:14:56 +03:00
Alex Plate
278a2dfc07
Convert SearchGroupTest to kotlin. Add offset tests (e, b, s, +-1) 2019-02-13 15:02:56 +03:00
Alex Plate
99c6b4552a
Merge pull request #126 from durandom/offset_in_slash
Make offset work in normal search
2019-02-12 19:50:48 +03:00
Alex Plate
dc88cbd902
Change implementation of ExitHandler
Use file manager for file closing
Add tests for :qa commands
2019-02-12 17:33:18 +03:00
Alex Plate
fb277e9e49
Create package for handler tests 2019-02-12 17:15:53 +03:00
Alex Plate
582393a462
Fix :only command 2019-02-12 16:42:54 +03:00
Alex Plate
c118bacffd
Create VimFileEditorTestCase for editor tests 2019-02-12 16:42:06 +03:00
Tony Arra
63be2c28e9 Strip tag attributes from closing tag for Vim-Surround 2019-01-21 09:17:10 -05:00
Andrey Vlasovskikh
6c9e697892 VIM-620 Fixed handling nested <C-O> & <Esc> in Insert and Replace modes 2018-12-31 18:01:15 +03:00
Alex Plate
7663eb531e Write test to reproduce VIM-620 issue
Enter insert mode after single command produces incorrect behaviour.
Insert mode is not escaped after Esc
2018-12-29 00:36:51 +03:00
John Lin
b6be26231f VIM-1274 Fix StringHelper.containsUpperCase behavior
StringHelper.containsUpperCase should return true when one of
the character of the input string satisfies the following two
conditions:

1. The character is upper case.
2. The character is not prefixed with a backslash.

Before this fix, the second condition was incorrectly written.
2018-09-17 11:53:23 +08:00
Vitalii Karavaev
57741cd5ce Fixed bug with selecting occurrences when ignorecase is set 2018-08-27 21:23:25 +03:00
Vitalii Karavaev
58fc34d9f7 Implement <A-x> 2018-08-10 17:01:36 +03:00
Vitalii Karavaev
6fdd769d0f Implement <A-p> 2018-08-10 16:43:46 +03:00
Vitalii Karavaev
b54384bb33 Implement <Plug>All<Whole>Occurrences 2018-08-10 16:31:48 +03:00
Vitalii Karavaev
c57f98591a Revert MultipleCursorsExtension and implement <A-n> 2018-08-10 14:08:25 +03:00
Vitalii Karavaev
2225033b7c Reset state and additional checks 2018-08-09 17:32:32 +03:00
Vitalii Karavaev
cded76d1a2 Test 2018-08-09 14:52:47 +03:00
Vitalii Karavaev
361284fe06 Fixed <A-n> in visual mode 2018-08-09 14:25:29 +03:00
Vitalii Karavaev
73987eaf23 Safer work in case of multiple carets 2018-08-09 12:47:40 +03:00
Vitalii Karavaev
06058a45c0 Fixed review issues and README.md updated 2018-08-09 12:35:08 +03:00
Vitalii Karavaev
d46cab6fc8 Fixed review issues 2018-08-09 11:18:39 +03:00
Vitalii Karavaev
9c5e5e117a Cleanup 2018-08-08 15:47:35 +03:00
Vitalii Karavaev
cd288ec125 Support for selection all occurrences 2018-08-08 15:16:13 +03:00
Vitalii Karavaev
bde2eb786d g<A-n> support 2018-08-08 14:38:33 +03:00
Vitalii Karavaev
b6896e28c8 Better support for vim-multiple-cursors extension 2018-08-08 13:57:16 +03:00
Vitalii Karavaev
bbd314b6df Test :s/// 2018-08-07 15:05:46 +03:00
Vitalii Karavaev
11174b8581 Tests :sor 2018-08-07 10:17:47 +03:00
Vitalii Karavaev
d29ae6a64d :> fix bug and multiple carets support 2018-08-06 16:01:39 +03:00
Vitalii Karavaev
5b69b9beae :< fix bug and multiple carets support 2018-08-06 15:55:47 +03:00
Vitalii Karavaev
a9440f41a7 Support skip and remove for vim-multiple-cursors emulation 2018-08-06 15:18:05 +03:00
Vitalii Karavaev
8fc4306d76 :d support 2018-08-06 13:42:21 +03:00
Vitalii Karavaev
371d7385ed Vim Multiple Cursors extension prototype 2018-08-06 12:14:50 +03:00
Vitalii Karavaev
436e96f734 Test :y 2018-08-03 18:15:24 +03:00
Vitalii Karavaev
67a9e1f8c5 Remove support for ex commands with visual selection and multiple carets support for :y 2018-08-03 17:30:44 +03:00
Vitalii Karavaev
3b290fe356 Add tests and fix bug for CopyGroup 2018-08-01 13:59:05 +03:00
Vitalii Karavaev
f3c66d131e Test :m 2018-07-31 16:38:00 +03:00
Vitalii Karavaev
7f8db50017 Test :pu 2018-07-31 10:44:56 +03:00
Vitalii Karavaev
f256da8a16 Tests :co 2018-07-30 15:42:31 +03:00
Vitalii Karavaev
b80205200c Tests for :j 2018-07-30 15:17:28 +03:00
Vitalii Karavaev
2efb0dfb17 Multicaret support for go to line 2018-07-26 14:52:40 +03:00
Vitalii Karavaev
f38bf65656 Tests for ex commands 2018-07-26 13:56:08 +03:00
Vitalii Karavaev
d965eb0d7e Tests for fix overlapping carets 2018-07-26 11:34:05 +03:00
Vitalii Karavaev
994ad0b06c Tests 2018-07-25 16:47:14 +03:00
Vitalii Karavaev
fcc2355037 Add caret offsets to tests 2018-07-25 12:00:04 +03:00
Vitalii Karavaev
bb32e7adb4 Multiple carets support for put visual text 2018-07-23 16:33:04 +03:00
Vitalii Karavaev
2326489658 Multiple carets support for yank visual 2018-07-23 12:39:31 +03:00
Vitalii Karavaev
0773c886ee Fixed bug with put blockwise text. Properly this time 2018-07-19 18:00:14 +03:00
Vitalii Karavaev
fcbf228d35 Proper indent after yank commands 2018-07-19 16:53:22 +03:00
Vitalii Karavaev
34feb27bef Yank commands and tests 2018-07-19 16:11:28 +03:00
Vitalii Karavaev
86f707bc51 More tests 2018-07-19 15:57:13 +03:00
Vitalii Karavaev
07f74f82b5 Better tests for put text commands 2018-07-19 12:44:48 +03:00
Vitalii Karavaev
0148860b2d Test for put text 2018-07-18 15:39:21 +03:00
Vitalii Karavaev
8d919d6ec8 Added some tests 2018-07-17 15:59:27 +03:00
Vitalii Karavaev
7f34b826b2 Fix test 2018-07-12 14:29:37 +03:00
Vitalii Karavaev
dad0d8e559 Tests for pasting 2018-07-12 12:18:44 +03:00
Vitalii Karavaev
3f82020100 Multiple carets support for going to line 2018-07-06 11:39:57 +03:00
Vitalii Karavaev
c3935aafc9 Tests for finding next item in line 2018-07-05 09:44:25 +03:00
Vitalii Karavaev
b464d99bd5 Tests for searching whole word 2018-07-04 16:23:59 +03:00
Vitalii Karavaev
bb8fa94668 Tests for moving cursor after last char in the file 2018-07-04 15:11:10 +03:00
Vitalii Karavaev
24994fa387 Test for moving carets to the first char in the file 2018-07-04 14:44:12 +03:00
Vitalii Karavaev
3f45200cb9 Fixed bug in test 2018-07-04 12:28:08 +03:00
Vitalii Karavaev
4703e75003 Test for inserting previously inserted text and stop inserting added 2018-07-04 10:20:43 +03:00
Vitalii Karavaev
ded21efe5f Test for inserting previously inserted text 2018-07-03 15:49:46 +03:00
Andrey Vlasovskikh
f0be6581b2 Merge branch 'master' into multiple-carets
# Conflicts:
#	src/com/maddyhome/idea/vim/action/motion/object/MotionInnerBlockTagAction.java
#	src/com/maddyhome/idea/vim/action/motion/object/MotionOuterBlockTagAction.java
#	src/com/maddyhome/idea/vim/group/MotionGroup.java
#	src/com/maddyhome/idea/vim/helper/SearchHelper.java
2018-06-29 12:39:39 +03:00
Andrey Vlasovskikh
ef470bd890 Merge branch 'FIX-VIM-1287' 2018-06-28 16:09:47 +03:00
Andrey Vlasovskikh
428d75968c VIM-1287 More tests for badly nested blocks and strings 2018-06-28 16:09:21 +03:00
Andrey Vlasovskikh
7f897440b7 Merge remote-tracking branch 'jpalus/master' 2018-06-04 16:05:10 +03:00
Jan Palus
b0714075eb add test for VIM-1427 (tag motion with count) 2018-06-02 15:26:02 +02:00
Jan Palus
956b56a772 add test for VIM-1431 (put in empty file) 2018-06-02 15:10:26 +02:00
Vasily Alferov
2d3da163a8 Attempt to fix Visual Block down movements 2018-05-26 21:52:57 +03:00
Vasily Alferov
49c59764ac Merge in change.insert actions 2018-05-26 20:17:12 +03:00
Vasily Alferov
7754080323 Various fixes 2018-05-25 11:45:11 +03:00
Vasily Alferov
ebf081e273 Multicaret shift 2018-05-22 22:51:49 +03:00
Vasily Alferov
258467467b Multicaret insert 2018-05-22 22:02:26 +03:00
Vasily Alferov
4f468cace7 Multicaret change.change 2018-05-22 00:16:58 +03:00
Vasily Alferov
9ddedbe752 Multicaret delete visual operator actions 2018-05-21 19:08:40 +03:00
Vasily Alferov
29c789dcf3 Implementations of all of the delete actions whose handlers doesn't override VisualOperatorActionHandler. 2018-05-20 13:55:33 +03:00
Vasily Alferov
59e2ae552e ChangeEditorActionHandler multicaret version and multicaret delete tests 2018-05-12 21:24:28 +03:00
Vasily Alferov
0919e9d560 Multicaret merging selections & text objects 2018-05-12 17:08:19 +03:00
Vasily Alferov
13c475d73c Fix multiple carets movement in case i<ESC>i<ESC> 2018-05-05 12:01:00 +03:00
Vasily Alferov
be5532b35d Comment out text object multiple carets tests. 2018-05-05 10:59:58 +03:00
Vasily Alferov
3b46e44e4f action.motion.text.* multicaret tests and implementation 2018-04-27 20:24:26 +03:00
Vasily Alferov
537ec30936 object.MotionInner* tests 2018-04-24 23:43:21 +03:00
Vasily Alferov
a75db02d05 Fix failed tests on Visual Block Mode. 2018-04-24 22:17:10 +03:00
Vasily Alferov
1db103e352 Basic multicaret up-down motions.
+ Create a class for caret-specific data and move LAST_COLUMN getter/setter there.
2018-04-16 16:05:52 +03:00
Vasily Alferov
4d46000ec6 Write most of multicaret leftright actions.
MotionColumnAction, MotionFirstColumnAction, MotionFirstNonSpaceAction, MotionLastColumnAction, MostionLastMatchCharAction, MotionLastMatchCharReverseAction, MotionLastNonSpaceAction, MotionLeftAction, MotionLeftMatchCharAction, MotionLeftTillMatchCharAction, MotionRightAction, MotionRightMatchCharAction, MotionRightTillMatchCharAction now have their own native multi-caret implementations.
2018-03-29 10:18:35 +05:30
Vasily Alferov
56ad6b4c0d Multi-caret basic leftright motions.
Add basic multi-caret interfaces (i.e. deprecated and new functions to EditorActionHandlerBase) and overloaded them in MotionLeftAction and MotionRightAction.
2018-03-21 17:13:57 +03:00
Andrey Vlasovskikh
dbdc15f21f Merge branch 'cypok/vim-1380' 2017-12-29 10:29:34 +03:00
Andrey Vlasovskikh
1a8c72d721 Merge branch 'cypok/vim-1379' 2017-12-29 10:19:08 +03:00
Andrey Vlasovskikh
fea2f0ba1e VIM-1110 Added test 2017-12-28 15:54:49 +03:00
Andrey Vlasovskikh
1393e60ca8 VIM-862 Properly apply and reset visual mode for running visual :action commands
Also fixed minor formatting and Java 8 issues.
2017-12-18 00:53:56 +03:00
Andrey Vlasovskikh
2e67c704f7 VIM-862 Fixed off-by-1 in restoring visual character selection after 'gv' 2017-12-18 00:52:29 +03:00
Andrey Vlasovskikh
c0410131bf Merge remote-tracking branch 'ikenox/feature/action-in-visual-mode' 2017-12-15 01:37:40 +03:00
Andrey Vlasovskikh
942b64052d Inherit from VimTestCase to setup IntelliJ extension points properly
Otherwise these tests depend on the run order of other tests for
proper initialization.
2017-12-12 20:17:49 +03:00
Vladimir Parfinenko
52d26f9fb6 VIM-1380 Fixed 'cNw' at the last character of a word
Bug was introduced while fixing VIM-200
2017-11-20 11:37:42 +07:00
Naoto Ikeno
b7d124ce8d Make :action commands work in visual mode 2017-11-19 20:06:02 +09:00
Vladimir Parfinenko
6a5c70ee6a VIM-1379 Fix usage TextRange.size() as lines count
TextRange.size() should be used only for iterating over starts/ends
2017-11-19 13:49:12 +07:00
nickgieschen
ef05491991 VIM-1367 Implement iskeyword
(cherry picked from commit d91d38c)
2017-11-03 03:22:39 +03:00
tieTYT
57b5b319a7 VIM-523 Fixed global mark remembering only the line number
Bear with me as this is the first thing I've ever done with
Intellij-IDEA plugin development.

I tested this and I believe I fixed the problem.  The cause of the
problem was that the code was checking if the mark was in a different
file but if it was, it was using the editor of the current file to go
to the line of the mark.  I changed the code so that it opens the file
of the mark first, then jumps to its line number.

I need a VirtualFile so that I can get the Editor to open. The Mark
stores the path of the file it's in, but the path is not enough
information to get a VirtualFile.  I also need the "protocol" of the
file.  So, I had to change the structure of the Mark and add a
"protocol" field to it.

I had to update the save/load logic to use this new field, too.  This
way, when you restart Intellij-IDEA, the marks can still be used.  For
old marks, I defaulted the "protocol" to the value of "file".

One thing I couldn't figure out how to do is add a test case to check
that this is working correctly.  This is not due to a lack of effort.
In fact, I tried to write the test case first.  But I have been unable
to find any examples anywhere of testing multiple Editors, and that's
what's involved to fix this issue.  Because of this, this issue may be
best used as a reference to fix the problem instead of worthy of being
used in production.  Either way, I'd love to know how to write such a
test.
2017-11-01 02:35:23 +03:00
Konstantin Petrov
0335b344a1 Add test to reproduce the bug 2017-05-31 10:27:00 +02:00
Vedran Budimcic
44b9946bb0 Support end-of-line multi line percent match in visual mode 2017-03-24 07:12:28 -07:00
Marcel Hild
6efd4023fd make offset work in normal search 2017-03-23 11:33:08 +01:00
Giorgos Gaganis
c4d8cef44d Fixed . reseting the last find movement where repeating change that also uses movement.
On the original vim when we repeat a change with . that also contain an find movement the last find that was typed before the repeat is the one used by the motion repeat ;. Before the commit the plugin would have reset the last movement to use the movement contained in the command that was repeated.

To solve this I took a simple approach where I save the last find motion before starting the repeat and then restoring it to its original value after the repeat is over. In order to access the find motion fields from RepeatChangeAction I created getters in MotionGroup for the movement type and character.

	modified:   src/com/maddyhome/idea/vim/action/change/RepeatChangeAction.java
	modified:   src/com/maddyhome/idea/vim/group/MotionGroup.java
	modified:   test/org/jetbrains/plugins/ideavim/action/ChangeActionTest.java
2016-11-28 19:05:11 +02:00
Andrey Vlasovskikh
e09f6c7886 Failing tests for VIM-287 2016-04-28 19:38:19 +03:00
Andrey Vlasovskikh
c471ddd12f Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-259' 2016-04-18 02:47:38 +03:00
Andrey Vlasovskikh
b0ac8f89c5 Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-964' 2016-04-18 02:41:35 +03:00
Andrey Vlasovskikh
a47338d8b7 Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-564' 2016-04-18 02:36:58 +03:00
Andrey Vlasovskikh
76d00ab47f Merge remote-tracking branch 'ayzenquwe/ayzen/gomethod' 2016-04-18 02:31:11 +03:00
Andrey Vlasovskikh
52148f69c1 Merge remote-tracking branch 'ayzenquwe/ayzen/registers' 2016-04-18 02:24:00 +03:00
Andrey Vlasovskikh
f280f8138d Support <Plug> in mapping commands 2016-04-18 01:46:46 +03:00
Andrey Vlasovskikh
530846bc7a Added 'timeout' option for toggling timeout for mapping commands 2016-04-18 01:46:46 +03:00
Andrey Vlasovskikh
c33d4d989e Clearer offsets comparison + multi-line deletion test 2016-02-09 00:20:58 +03:00
dhleong
3cd1134973 Fix calculation of how to paste surrounded value
Fixes VIM-1085; includes test
2016-02-06 10:23:05 -05:00
dhleong
1c7e6af1fc Fix <esc> not sent after VSurround; support change with tags 2016-02-02 20:57:54 -05:00
dhleong
84f7e25c5e Cleanup overly verbose code; remove unused import 2016-02-02 20:32:09 -05:00
dhleong
458fe97b75 Add visual surround (S) command 2016-01-30 09:31:25 -05:00
dhleong
31364607f5 Add ds command; jump to start when executed to match vim-surround 2016-01-30 09:14:34 -05:00
dhleong
56ec2c7ebc Add cs action
Note that, unfortunately, we can't do `cst`, as IdeaVim doesn't
support the tag textobject. Once that's supported, however, we
just need to disable the safety check to enable that.
2016-01-30 09:02:06 -05:00
Andrey Vlasovskikh
91546700d4 Added simple ys{motion}t tag surround and input() function 2016-01-26 22:25:36 +03:00
Andrey Vlasovskikh
6328575639 'ys{motion}<' requires further user input to wrap text into HTML tags 2016-01-26 21:15:29 +03:00
Andrey Vlasovskikh
af534c9209 Repeat is not supported for 'ys' yet 2016-01-26 21:14:43 +03:00
Andrey Vlasovskikh
d46d292865 Added surround tests for 'ys' by dhleong 2016-01-26 18:15:00 +03:00
Andrey Vlasovskikh
1a96533a3c Added unit test-friendly version of VimExtensionFacade.getKeyStroke() 2016-01-26 18:14:14 +03:00
Andrey Vlasovskikh
480b32b5af Fixed AIOOBE in tag selection for files starting with '/' and containing '>' 2016-01-21 18:28:14 +03:00
lubba
a22afdd0f6 VIM-364 Added support for tag block selection 2015-12-03 15:19:54 +03:00
Andrey Vlasovskikh
e805852721 Platform prefix initialization is no longer needed 2015-10-30 15:20:36 +03:00
ayzen
5fc66b5896 ={motion} implementation, == with count and fix for VIM-259 2015-07-11 21:44:36 +03:00
ayzen
80dec29832 Fix for VIM-965 with a test 2015-07-01 23:31:25 +03:00
ayzen
30a16e9496 Corrected typo that prevented correct calculation for marks vertical shifting; added a test 2015-06-14 10:54:15 +03:00
ayzen
0d6526ea31 Mark should not be deleted due to change commands that start from the beginning of the mark line 2015-06-14 10:41:52 +03:00
ayzen
4428340fd9 Fix for VIM-964 (marks get removed if one-char line is replaced by r) with a test 2015-06-14 10:38:36 +03:00
ayzen
900ce21445 Fix for VIM-564 (g_ didn't work correctly) with tests 2015-06-12 22:43:19 +03:00
ayzen
afb411dd35 Added tests for special registers 2015-06-05 21:09:16 +03:00
Andrey Vlasovskikh
85231b314f More readable test data 2015-04-24 16:29:56 +03:00
Andrey Vlasovskikh
ae5b1385ea Merge branch 'matching-comments' 2015-04-24 16:08:54 +03:00
Andrey Vlasovskikh
011ce28251 More readable tests for '%' 2015-04-24 16:08:32 +03:00
Andrey Vlasovskikh
7d033787eb Better place for cleaning global variables 2015-04-24 14:31:06 +03:00
Andrey Vlasovskikh
3a47583cf9 Clean global variables 2015-04-24 14:27:38 +03:00
Andrey Vlasovskikh
b886073c11 VIM-650 Added support for 'mapleader' 2015-04-24 13:32:04 +03:00
Andrey Vlasovskikh
3ff9bfcc13 Initial support for 'let' and 'echo' commands
These commands evaluate Vim script expressions. Right now they are
limited to a highly limited subset of Vim script expressions that is
however enough for settings the 'mapleader' variable for VIM-650.
2015-04-05 22:54:40 +03:00
Andrey Vlasovskikh
373e1527c1 Extracted Vim script parts into 'vimscript' package 2015-03-28 14:16:38 +03:00
Andrey Vlasovskikh
74bf5ff044 Formatting and typos 2015-03-27 21:43:36 +03:00
Andrey Vlasovskikh
0f7e9d11b6 Added test for VIM-845 2015-03-27 21:43:19 +03:00
Andrey Vlasovskikh
5fadc2fb9f Removed unused imports 2015-03-27 21:30:05 +03:00
Andrey Vlasovskikh
3fee4a803b Merge remote-tracking branch 'dezgeg/fixes/visual-block-mode-overhaul' 2015-03-27 20:56:58 +03:00
Tuomas Tynkkynen
0c9bdf5168 Visual block mode overhaul
The current visual block mode implementation has several bugs:

- The GUI never displays the rightmost characters as selected (blue)
- Due to some off-by-one, commands can't act on each line's last character
- It's possible for newlines to get deleted/changed into something else
- If the '$' mode is entered, the GUI doesn't always indicate this
- It's impossible to move to an empty line (VIM-781)

This commit fixes all of those problems. The only remaining problem are
the visible secondary carets, which makes seeing the real cursor a bit
difficult. This could be fixed later if support for per-caret visibility
would be added to IntelliJ core.
2015-02-21 17:17:36 +02:00
Tuomas Tynkkynen
82a9587b4f Support comments in brace matching
In Vim, '%' can be used to jump between the '/*' and '*/' of block
comments. Support this functionality in a language-independent manner.
2015-02-21 15:14:38 +02:00
Tuomas Tynkkynen
8d1dcc4568 VIM-700 Remapping '0' should still allow zero to be entered in count
Previously, remapping '0' in command mode would prevent a number zero
from being entered in a command count.
2015-02-21 15:09:13 +02:00
Tuomas Tynkkynen
5090c81632 VIM-856 Fix regex lookbehind bugs
The regex code has the following bugs, mostly related to lookbehind:
    - Comparison of CharPointers with == is wrong, .equals should be
      used instead.

    - In the original C code, the behind_pos variable is declared as
      'static regsave_T behind_pos;', i.e. not a pointer, and the same
      for other variables of type regsave_T. So assignments to these
      types of variables need to make deep copies.
2015-01-20 17:52:08 +02:00