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

2482 Commits

Author SHA1 Message Date
Alex Plate
c17ad0ef2d
Fix back search in texts with tabs 2019-07-12 16:11:59 +03:00
Alex Plate
3f71f58454
Reformat CharPointer class 2019-07-12 14:34:25 +03:00
Alex Plate
41baee7b43
Add VimFunctionMark and VimTestFunction annotations 2019-07-11 16:22:53 +03:00
Alex Plate
e0e94e482a
Add logs to controlSelection 2019-07-11 14:24:02 +03:00
Alex Plate
c5964c270d
Add logging to search process 2019-07-11 14:24:00 +03:00
Alex Plate
69c850d1ac
Move toCharacterPosition and fromCharPositionToOffset methods to CharacterPosition class 2019-07-11 12:25:26 +03:00
Alex Plate
004d0146b7
WIP: Renaming file 'CharacterPosition' with Kotlin extension 2019-07-11 12:16:33 +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
e1f582bcfc
Register new actions in info file 2019-07-09 19:01:24 +03:00
Alex Plate
e50f95abb3
Reset modeBeforeEnteringNonVimVisual before each action 2019-07-09 18:41:33 +03:00
Alex Plate
4e16a8b6f9
Revert "Remove mode restoring after unexpected selection"
This reverts commit e23f5cb1
2019-07-09 15:18:46 +03:00
Alex Plate
cf1ec16fdd
Fix macro replay 2019-07-08 17:04:18 +03:00
Alex Plate
e23f5cb159
Remove mode restoring after unexpected selection 2019-07-08 16:54:47 +03:00
Alex Plate
4d07171aaa
Convert UndoRedoHelper to kotlin 2019-07-08 11:48:23 +03:00
Alex Plate
7c50662ef6
WIP: Renaming file 'UndoRedoHelper' with Kotlin extension 2019-07-08 11:46:44 +03:00
Alex Plate
90126b4d29
Remove unused action 2019-07-05 16:21:33 +03:00
Alex Plate
7580af1b5f
Support ctrl-up and ctrl-down jumps 2019-07-05 16:07:57 +03:00
Alex Plate
8188203aed
Remove version from javadocs 2019-07-05 14:17:17 +03:00
Alex Plate
d91f5461d5
Plugin listeners are not loaded if plugin is disabled 2019-07-05 13:24:39 +03:00
Alex Plate
066b18c792
Do not move one char back in insert mode 2019-07-05 12:40:47 +03:00
Alex Plate
91de1004e6
Fix small code smells 2019-07-05 12:22:25 +03:00
Alex Plate
fecd2d7111
Use BaseComponent instead of deprecated ApplicationComponent 2019-07-05 12:17:54 +03:00
Alex Plate
07dd0884f3
Fix "explicit type" inspection 2019-07-04 18:39:29 +03:00
Alex Plate
a1fb97bd90
Remove some deprecations 2019-07-04 17:52:29 +03:00
Alex Plate
2e002d76b2
Replace deprecated getTopLevelEditor method 2019-07-04 17:40:13 +03:00
Alex Plate
aa13742c9a
Remove deprecated rightJustify and leftJustify methods 2019-07-04 17:09:56 +03:00
Alex Plate
7effcb3aac
Define action place for executable actions 2019-07-04 16:48:23 +03:00
Alex Plate
6d1869af61
[VIM-1668] Fix smart step into 2019-07-02 14:22:15 +03:00
Alex Plate
6e005a0c62
Fir exception in paste via IDE 2019-07-02 13:18:48 +03:00
Alex Plate
2770634627
Protection against wrong handlers 2019-07-01 20:14:27 +03:00
Alex Plate
1602ab2355
Add logs to controlNonVimSelectionChange 2019-07-01 17:30:28 +03:00
Alex Plate
7a37cb6f0b
Checking whether current mode is command before entering insert mode 2019-07-01 16:21:55 +03:00
Alex Plate
4d6de7500e
[VIM-752] Finish template from normal mode 2019-07-01 15:33:09 +03:00
Alex Plate
13d36de121
WIP: Renaming file 'MotionDownFirstNonSpaceAction' with Kotlin extension 2019-07-01 15:05:22 +03:00
Alex Plate
ae992ed366
Convert Argument.java to kotlin 2019-07-01 14:48:27 +03:00
Alex Plate
c03b16a6e8
WIP: Renaming file 'Argument' with Kotlin extension 2019-07-01 14:39:40 +03:00
Alex Plate
7823291b44
Fix NPE while moving caret 2019-07-01 14:31:44 +03:00
Alex Plate
59d79cc329
Add debug info about pushing and popping state 2019-07-01 14:24:32 +03:00
Alex Plate
c24ebf3427
Create test for validating info file 2019-06-28 14:22:50 +03:00
Alex Plate
434d5be26c
Enable identity checker for unit test mode 2019-06-28 12:38:39 +03:00
Alex Plate
f904ceae7a
Remove bad test 2019-06-28 12:21:02 +03:00
Alex Plate
9e62eefee0
Write better logs during execution 2019-06-27 19:57:30 +03:00
Alex Plate
7fdb31abf0
Fix problems of actions registration
Different vim tree were build by different orders of command registering
2019-06-27 19:34:15 +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
e143a286ef
Do not reset caret on small mouse dragging 2019-06-26 19:31:56 +03:00
Alex Plate
faa9c26283
Reformat resetCursor function 2019-06-26 19:21:45 +03:00
Alex Plate
da182f5539
Add protection for cases when vimSelectionStart is null in visual mode 2019-06-26 19:08:21 +03:00
Alex Plate
ced51e37b4
Convert all commands to VimCommandAction 2019-06-26 18:51:55 +03:00
Alex Plate
f61134fd69
Use VimCommandAction for insert commands 2019-06-26 15:43:01 +03:00
Alex Plate
578f60ba91
WIP: Renaming file 'ShiftRightLinesAction' with Kotlin extension 2019-06-26 15:29:42 +03:00
Alex Plate
02effac75c
WIP: Renaming file 'ShiftLeftLinesAction' with Kotlin extension 2019-06-26 15:26:11 +03:00
Alex Plate
72f4b21aea
Use VimCommandAction for COPY/PASTE actions 2019-06-26 13:53:58 +03:00
Alex Plate
1aa59afaf0
WIP: Renaming file 'YankLineAction' with Kotlin extension 2019-06-26 13:46:18 +03:00
Alex Plate
45df3ed168
Use VimCommandAction for NVO actions 2019-06-26 13:33:20 +03:00
Alex Plate
b344972931
WIP: Renaming file 'MotionScrollPageUpAction' with Kotlin extension 2019-06-26 13:24:33 +03:00
Alex Plate
7886a816b2
WIP: Renaming file 'MotionScrollPageDownAction' with Kotlin extension 2019-06-26 13:12:21 +03:00
Alex Plate
4722730aff
Move userData functions to UserDataManager.kt 2019-06-26 12:29:11 +03:00
Alex Plate
27a2c6192f
Rename CaretData to UserDataManager 2019-06-25 16:49:15 +03:00
Alex Plate
db77d133dc
Use userData() for managing editor's user data 2019-06-25 16:48:46 +03:00
Alex Plate
000ebfaf2f
Fix all missing @Override annotations 2019-06-25 15:20:31 +03:00
Alex Plate
a47001516d
Reformat HandlerBase 2019-06-25 15:18:37 +03:00
Alex Plate
fa9901271a
WIP: Renaming file 'EditorActionHandlerBase' with Kotlin extension 2019-06-25 15:18:37 +03:00
Alex Plate
913e8c355b
Fix tests after reformat 2019-06-25 15:18:36 +03:00
Alex Plate
aeef2f8948
Reformat ChangeEditorActionHandler 2019-06-25 15:18:36 +03:00
Alex Plate
9be8e2b5b9
WIP: Renaming file 'ChangeEditorActionHandler' with Kotlin extension 2019-06-25 15:18:36 +03:00
Alex Plate
99b68801d9
Remove CaretOrder 2019-06-25 15:18:36 +03:00
Alex Plate
4c766298f1
Change hierarchy of handlers 2019-06-25 15:18:36 +03:00
Alex Plate
2618d09ef8
VimCommandAction accepts EditorActionHandlerBase 2019-06-25 15:18:36 +03:00
Alex Plate
2bef98408c
MotionEditorAction new inherits VimCommandAction 2019-06-25 15:18:35 +03:00
Alex Plate
dbf90d4f37
Rename .java to .kt 2019-06-25 15:18:35 +03:00
Alex Plate
1e378dd1dd
Fix duplicated key mappings 2019-06-25 15:18:35 +03:00
Alex Plate
fa51c25919
TextObjects have now always MOTION type 2019-06-25 15:18:35 +03:00
Alex Plate
c880f49b81
Convert registerCommandLineActions to VimCommandAction 2019-06-25 15:18:35 +03:00
Alex Plate
1835220ba3
Convert registerVariousModesActions to VimCommandAction 2019-06-25 15:18:35 +03:00
Matt Ellis
86dbd3a03a
Correctly recognise abbreviated command in incsearch 2019-06-22 15:08:31 +02:00
Matt Ellis
948c2cd021
Only show one set of search results
Don't allow both IntelliJ and IdeaVim highlights to be visible at the same time
2019-06-22 15:08:20 +02:00
Matt Ellis
2aa45b8794
Merge branch 'master' into feature/search 2019-06-20 12:14:55 +02:00
Alex Plate
2b2fc27899
[VIM-608] Call save actions for :w commands 2019-06-19 16:06:21 +03: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
2845f8543c
Use objects for options 2019-06-18 20:08:02 +03:00
Alex Plate
011699d58f
Add notification about smartjoin option 2019-06-18 17:23:52 +03:00
Alex Plate
ddd37f5bee
Reformat Options file 2019-06-18 16:27:40 +03:00
Alex Plate
44202b5c4d
Rename .java to .kt 2019-06-18 16:11:09 +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
cc7ee5acc0
Remove unused action 2019-06-18 11:44:44 +01:00
Matt Ellis
35bcb627c2
Correctly start/reset highlighting with :s command 2019-06-15 11:21:02 +01:00
Matt Ellis
a7882fadba
Reorder methods. No other changes 2019-06-15 10:39:59 +01:00
Alex Plate
fe4525b441
Add smartjoin option 2019-06-14 19:05:53 +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
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
84be5bc732
Reformat Motion and Visual handlers 2019-06-13 19:28:43 +03:00
Alex Plate
bf1dee2bc4
Reformat CommandHandler 2019-06-13 18:43:49 +03:00
Alex Plate
e0aadacf93
Remove flags function 2019-06-13 17:30:20 +03:00
Alex Plate
35481682a9
Fix NPE on text preprocessing during insert 2019-06-13 16:09:27 +03:00
Alex Plate
64291d336c
Fix selection with mouse on line end 2019-06-13 15:21:00 +03:00
Alex Plate
3fe1ee4bd8
Fix problems with vertical movement 2019-06-13 15:01:31 +03:00
Matt Ellis
130a8d0f00
Disable search highlights when disabling plugin 2019-06-13 11:51:25 +01:00
Matt Ellis
36c4596a08
Fix exception with dead keys in ex entry
Will also highlight composed text on Mac
2019-06-11 19:57:11 +01:00
Alex Plate
ebad3812e4
Add docs for TextObjectActionHandler 2019-06-11 19:52:31 +03:00
Alex Plate
004c1c915f
Rename VimActionCommand to VimCommands 2019-06-11 19:52:25 +03:00
Alex Plate
39bd13a6ca
Migrate text object to new registration model 2019-06-11 19:42:52 +03:00
Alex Plate
f10ac679e2
Rename .java to .kt 2019-06-11 19:36:55 +03:00
Alex Plate
8d49012d64
Reformat VimCommandAction: get handler from makeHandler method 2019-06-11 16:00:37 +03:00
Alex Plate
91392c1e83
Convert VimActionHandler to kotlin 2019-06-11 14:10:43 +03:00
Alex Plate
65bb31e92a
Rename .java to .kt 2019-06-11 14:10:43 +03:00
Alex Plate
c06fa72936
Remove empty javadocs 2019-06-11 13:20:53 +03: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
b795c62ab7
Reformat SearchGroup file 2019-06-10 16:29:17 +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
4754fff89b
Use primary caret for post move in case of block selection 2019-06-10 13:15:32 +03:00
Matt Ellis
60f9403657
Incsearch highlights all matches + current match 2019-06-07 23:33:05 +01:00
Alex Plate
eace5c5543
Fix typo 2019-06-07 16:19:34 +03:00
Alex Plate
f6d16ea4d9
Protection for empty file 2019-06-07 15:15:11 +03:00
Alex Plate
ac2f11360c
Extract some methods to CommandStateExtensions 2019-06-07 15:04:57 +03:00
Alex Plate
d4cd8a228f
Move ideaput option to 'clipboard options' 2019-06-06 14:48:19 +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
Alex Plate
0139967b29
Avoid dragging when select a word with double click 2019-06-06 13:27:06 +03:00
Alex Plate
0a30a42b2e
Avoid dragging when put caret on the line end 2019-06-06 13:16:41 +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
b3130f38f2
Add logs for put and copy 2019-06-05 18:50:38 +03:00
Alex Plate
32fdbaccc3
VIM-25 Smart put operations (via IJ) 2019-06-05 15:49:31 +03:00
Alex Plate
8a4d3f5d80
Use 2-space indentation for kotlin files 2019-06-05 15:26:18 +03:00
Alex Plate
7d13d22650
Merge pull request #161 from thecodewarrior/unnamed-register-selection-type
VIM-1473 Fixed incorrect selection type for unnamed registers
2019-06-04 17:54:33 +03:00
Alex Plate
6c17725823
[VIM-438] Enable <C-N> and <C-P> for lookups 2019-06-03 20:00:17 +03:00
Matt Ellis
f3b1ddf439
Merge branch 'master' into feature/search 2019-06-03 16:42:39 +01:00
Matt Ellis
c7de374943
Refactor highlighting API calls 2019-06-03 16:39:01 +01:00
Alex Plate
1bb6345fcb
Refactor put group 2019-05-31 19:27:43 +03:00
Alex Plate
cbc5e8aea1
Make visual put single-executable
Preparation for VIM-25
2019-05-31 19:27:43 +03:00
Alex Plate
7ebb888c31
WIP: Renaming file 'PutVisualTextNoIndentAction' with Kotlin extension 2019-05-31 19:27:43 +03:00
Alex Plate
93c6a03287
WIP: Renaming file 'PutVisualTextMoveCursorAction' with Kotlin extension 2019-05-31 19:27:43 +03:00
Alex Plate
ae97fbbcc3
WIP: Renaming file 'PutVisualTextAction' with Kotlin extension 2019-05-31 19:27:42 +03:00
Alex Plate
cb8d253dc5
Fix compilation for IC-2019.1 2019-05-31 16:48:54 +03:00
Alex Plate
cacab1e039
Make companion object private in VisualOperatorActionHandler 2019-05-31 16:40:38 +03:00
Alex Plate
0bf49ebe9a
Event could be null in IdeaSpecifics 2019-05-31 16:31:38 +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
444f676d2d
Move connection to message but in IdeaSpecifics to EventFacade 2019-05-30 12:39:03 +03:00
Alex Plate
2ccba4b345
Remove @Deprecated from TextRange class 2019-05-30 12:34:25 +03:00
Alex Plate
0b76e86ace
Create different method for isVisualBlock and isBlockSubMode 2019-05-30 12:26:13 +03:00
Alex Plate
f40a86e744
Refactorings after review 2019-05-30 12:18:42 +03:00
Alex Plate
5b594a4a7b
Fix bad visual -> motion refactoring 2019-05-30 12:16:59 +03:00
Alex Plate
ea857b9c7b
Fix single execution for visual operation 2019-05-28 15:44:04 +03:00
Matt Ellis
987c89774c
VIM-1061 Explicitly register shortcuts for digraphs 2019-05-24 15:34:21 +01:00
Alex Plate
52d0c44014
Fix enter action for select mode 2019-05-24 15:43:21 +03:00
Alex Plate
e70d188b82
Add logging for visual operations 2019-05-24 15:13:37 +03:00
Alex Plate
9419c4b796
Fix gq (reformat code) action 2019-05-24 14:52:36 +03:00
Alex Plate
58c6aba6af
Move all special keys handlers to single file 2019-05-24 12:00:40 +03:00
Alex Plate
d09ae1a66e
Fix bad refactoring 2019-05-24 11:54:05 +03:00
Alex Plate
12717d13de
Make VisualStartFinishWrapper private 2019-05-24 11:52:04 +03:00
Alex Plate
b363a05a7d
Remove caretMergingListener in finally block 2019-05-24 11:51:12 +03:00
Alex Plate
318515db6f
Rename Util to Helper 2019-05-24 11:46:08 +03:00
Alex Plate
da7ff06734
Rename acontinue* to acontinue* 2019-05-24 11:41:40 +03:00
Alex Plate
f86a1a0002
Hide alwaysBatchExecution property from inheritors 2019-05-24 11:01:15 +03:00
Alex Plate
e5d4a5f061
Put ShiftedArrowKeyHandler to ShiftedSpecialKeyHandler 2019-05-23 22:23:52 +03:00
Alex Plate
7be884b138
Remove FLAG_FORCE_LINEWISE and FLAG_FORCE_VISUAL flags 2019-05-23 18:06:11 +03:00
Alex Plate
4eacdeec5e
Check if caret valid before adjusting selection 2019-05-23 16:09:28 +03:00
Alex Plate
8a9a5919f2
Reset handler after exiting visual mode during tab switch 2019-05-23 15:46:51 +03:00
Alex Plate
442883c377
Make Command data class 2019-05-23 15:26:49 +03:00
Alex Plate
33939917c0
Print actionId of visual command to log 2019-05-22 14:59:51 +03:00
Alex Plate
e1721bf337
Handle backspace via vim with active lookup 2019-05-21 16:53:52 +03:00
Alex Plate
5081ede268
[VIM-1666] properly handling of digraphs after pressing backspace 2019-05-21 15:52:17 +03:00
Alex Plate
393416a925
Format KeyHandler file 2019-05-21 15:49:00 +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
3aff7693c7
Use same formatting as Find for search/replace 2019-05-17 22:29:59 +01:00
Matt Ellis
b46f426f30
Reset highlights when options change 2019-05-17 22:29:59 +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
Matt Ellis
dd40bb3850
Move current line during incsearch 2019-05-17 11:26:36 +01:00
Alex Plate
849c0cbd49
Support shifted and non-shifter Home key 2019-05-16 17:22:47 +02:00
Alex Plate
201d613ac1
Extract handler for non-shifted special keys 2019-05-16 16:11:40 +02:00
Alex Plate
8897ecd0d5
Extract handler for shifted special keys 2019-05-16 16:09:39 +02:00
Alex Plate
784a8e625f
Set log level to info for VisualCommands 2019-05-16 13:40:05 +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
c37387db64
Full support for selectmode option 2019-05-15 15:22:55 +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
5b8fb49d4c
Additional null check 2019-05-15 07:09:06 +03:00
Alex Plate
dca0240c13
Fix opening dialog boxes 2019-05-14 20:38:15 +03: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
3bc628417f
WIP: Renaming file 'VisualToggleLineModeAction' with Kotlin extension 2019-05-14 18:52:53 +03:00
Alex Plate
bdc9b78ec8
Merge branch 'master' into VIM-510 2019-05-14 16:51:55 +03:00
Alex Plate
6865d25035
Put actions to package-info 2019-05-14 14:53:10 +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
Matt Ellis
74dce4b70a
Fix incsearch with trailing characters 2019-05-14 14:51:07 +08:00
Matt Ellis
187963cc38
VIM-1413 Handle smartcase in incremental search 2019-05-14 14:50:30 +08:00
Matt Ellis
afd618c61a
VIM-1535 Use correct text attributes for search
Uses the same attributes and layers as the IDE's own Find preview
2019-05-14 14:34:43 +08:00
Alex Plate
4196ec5093
Fix big O for visual block mode 2019-05-13 21:18:35 +03:00
Alex Plate
49d28f1eeb
WIP: Renaming file 'VisualSwapEndsBlockAction' with Kotlin extension 2019-05-13 20:27:21 +03:00
Alex Plate
90640c9378
WIP: Renaming file 'VisualSwapEndsAction' with Kotlin extension 2019-05-13 20:23:34 +03:00
Alex Plate
bf0e9fb107
Inline vimForAllOrPrimaryCaret function 2019-05-13 16:19:05 +03:00
Alex Plate
eba0bf8f41
Move VisualSelection to another package 2019-05-13 16:15:43 +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
caa0caf297
Scroll caret to next selection in multicaret plugin 2019-05-13 14:51:57 +03:00
Alex Plate
e6a36178ff
Extract getKey method from ReadWrite properties 2019-05-13 14:45:38 +03:00
Michael Ziwisky
3180ae1a41 map "<C-W><C-{H,J,K,L}>" to Window<Direction>Action
from vim help:

tag		command		   action in Normal mode
---------------------------------------------------------
|CTRL-W_CTRL-H|	CTRL-W CTRL-H	   same as "CTRL-W h"
|CTRL-W_CTRL-J|	CTRL-W CTRL-J	   same as "CTRL-W j"
|CTRL-W_CTRL-K|	CTRL-W CTRL-K	   same as "CTRL-W k"
|CTRL-W_CTRL-L|	CTRL-W CTRL-L	   same as "CTRL-W l"
2019-05-09 16:06:21 -07: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
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
381e84e649
Add docs to userDataCaretToEditor delegator 2019-05-08 17:01:33 +03:00
Alex Plate
4ccddf839f
Remove unnecessary caret user data 2019-05-08 16:46:04 +03:00
Alex Plate
f40ee92826
Support enter visual mode with count 2019-05-08 16:42:16 +03:00
Alex Plate
13b28e6f1c
Save call for editor in IdeaSpecifics 2019-05-08 12:47:07 +03:00
Matt Ellis
7fe0609e9e
Fix tests 2019-05-08 07:05:58 +01:00
Alex Plate
b24aec26c0
WIP: Renaming file 'VisualChange' with Kotlin extension 2019-05-07 20:27:34 +03:00
Alex Plate
c465d303e5
Remove extra caret data 2019-05-07 18:08:49 +03:00
Alex Plate
13e80db668
Add comments to CaretData 2019-05-07 17:51:50 +03:00
Matt Ellis
98d22523be
Merge branch 'master' into feature/cmdline-editing 2019-05-07 12:32:25 +01:00
Matt Ellis
6326360595
Update UI of ex output panel 2019-05-07 12:29:50 +01:00
Matt Ellis
7cfbddfd35
Remove unused editor actions 2019-05-07 12:25:02 +01:00
Alex Plate
92eb6dab2f
Add information about @VimBehaviourDiffers annotation to CONTRIBUTE.md 2019-05-07 14:08:02 +03:00
Alex Plate
7cebdc7270
Add folding regions for IdeaSpecifics 2019-05-07 12:52:30 +03:00
Matt Ellis
f9094223ba
Add correct caret shape for lost focus 2019-05-07 09:46:58 +01:00
Matt Ellis
849e0964ba
Remove gap between ex label and text field
Also replaces incorrect border around entry panel, fixing off by one UI border drawing

Fixes VIM-1240, fixes VIM-1485
2019-05-07 00:16:09 +01:00
Alex Plate
096ed14978
Add null-check for LaF listener
(cherry picked from commit afe745dc44)
2019-05-06 18:08:40 +03:00
Alex Plate
d04196ec7c
Use native selection for visual operations 2019-05-06 17:05:45 +03:00
Alex Plate
bf7f6054c6
Get editor on action execution start 2019-05-06 15:08:39 +03:00
Alex Plate
afe745dc44
Add null-check for LaF listener 2019-05-06 14:52:10 +03:00
Alex Plate
5032bc4da7
Add some comments to functions 2019-05-06 14:49:58 +03:00
Alex Plate
10c19bbb94
Move caret one char left (after selection) not in recursive way 2019-05-06 13:38:06 +03:00
Alex Plate
7519eb1f43
Move listeners to separate package 2019-05-06 12:20:15 +03:00
Alex Plate
95b800638b
Enter insert mode when enabling template without selection 2019-05-06 12:18:22 +03:00
Matt Ellis
ff9a3a55e2
Ensure current action processes next keystroke
This allows cancelling inserting digraph or register with movement keys. Unprocessed keys are ignored, unless it's <C-C>, in which case the ex entry is cancelled.
2019-04-30 20:58:06 +01:00
Alex Plate
56b4e50aab
Event is not null for before/after actionPerformed 2019-04-30 19:05:05 +03:00
Matt Ellis
32d513a74f
Reset ex entry when lost focus due to mouse click 2019-04-30 16:50:05 +01:00
Alex Plate
8ce4768aa6
Enable insert mode after surround with if action 2019-04-30 18:49:21 +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
ddaf190c3c
Add file to define Idea-specific behaviour
Move caret to right position for rider - extendSelection action
2019-04-30 15:47:28 +03:00
Alex Plate
e873009aeb
Disable listeners if IdeaVim was not enabled on editor creation 2019-04-30 14:44:39 +03:00
Matt Ellis
7ec3abb069
Correctly set focus when handling cmode mapping
Fixes VIM-1419, fixes VIM-1493
2019-04-30 11:42:30 +01:00
Alex Plate
cfd69d1603
Stay in select mode in PyCharm after deleting indent 2019-04-30 11:35:45 +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
336342c72e
[IDEA-211429] Directly enable insert mode for dialogs 2019-04-29 15:16:18 +03: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
a9a0d6233e
Merge pull request #191 from citizenmatt/feature/beep
Only beep once every half second
2019-04-29 14:42:15 +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
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
Alex Plate
d0bec7db4d
Update copyright and make code more kotlin-specific 2019-04-29 13:07:57 +03:00
Matt Ellis
e7603a78d0
Add tests for ex entry shortcuts 2019-04-29 09:29:08 +01:00
Matt Ellis
3a728df3b1
Ensure all shortcuts are seen by ex entry field
Fixes VIM-1550
2019-04-28 17:06:23 +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
Simon Rainer
415abd13c9 Merge remote-tracking branch 'upstream/master' 2019-04-26 17:18:08 +02:00
Matt Ellis
e94eac77eb
Show correct caret shape on command line
Also refreshes font when editor font changes
2019-04-26 14:44:40 +01:00
Matt Ellis
25b11349a4
Update list of cmdline editing commands 2019-04-26 14:43:56 +01: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
Matt Ellis
890562e810
Only beep once every half second 2019-04-26 11:49:41 +01:00
Alex Plate
9b4d38ed3c
Rearrange VisualMotionGroup code 2019-04-25 17:19:36 +03:00
Alex Plate
33c33431f9
Update indent 2019-04-25 16:09:22 +03:00
Alex Plate
53d3e0db88
Remove useless function 2019-04-25 15:22:32 +03:00
Alex Plate
94e4556bee
Remove unnecessary user data (wasVisualBlock) 2019-04-25 14:56:15 +03:00
Alex Plate
1ad9dd4a28
Save caret position after cursor dragging 2019-04-25 14:47:14 +03:00
Alex Plate
e15f0e07dd
Add some comments to VisualGroup 2019-04-25 13:29:42 +03:00
Alex Plate
eda734e728
Add missing @NotNull annotation 2019-04-25 12:09:24 +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
55e0200fb6
Move caret to right place after gutter mouse selection 2019-04-25 11:45:55 +03:00
Alex Plate
fefd6699f3
Select full line while visual line mode 2019-04-25 11:04:05 +03:00
Alex Plate
963840612c
Select full line while visual line mode 2019-04-25 10:54:46 +03:00
Alex Plate
fd8e567c60
Format ChangeGroup 2019-04-24 20:26:55 +03:00
Alex Plate
69d02b8abb
Fix small typos in userData() functions 2019-04-24 17:09:08 +03:00
Alex Plate
ccf721fd6c
Store vim selection start and end in VimSelection model 2019-04-24 15:01:12 +03:00
Alex Plate
55bd13c3f2
Reorganize Visual- and MotionHandlers 2019-04-23 17:26:57 +03:00
Alex Plate
f8de555032
[VIM-1184] Store all vim settings only locally (except keymapping) 2019-04-23 15:49:33 +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
Alex Plate
20dbe1bde6
Enter select mode for oneRowEditor in case on unexpected selection change 2019-04-22 15:24:44 +03:00
Alex Plate
c7f42cfca8
Enter insert mode after backspace in select mode 2019-04-22 15:24:19 +03:00
Alex Plate
3f9585b1fb
Restore mode after :action 2019-04-22 14:57:09 +03:00
Alex Plate
e021663975
Print submode of select mode in bar 2019-04-22 14:38:03 +03: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
Alex Plate
47ac879ed9
Move caret one char left after double click 2019-04-18 13:57:01 +03:00
Alex Plate
28a50c00bb
Move caret one character left while after mouse selection 2019-04-17 20:33:23 +03:00
Alex Plate
6ceb74cb33
Fix: some motions could become linewise 2019-04-17 16:15:30 +03: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
romain.gautier@nimamoh.net
ea2f2ba213 VIM-1633 - remove useless min/max, add comments 2019-04-15 15:22:45 +02:00
Alex Plate
970a5e19d0
Use try-with-resources for VimListenerSuppressor 2019-04-15 15:13:09 +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
7b32b75052
Suppress selection listener while lookup is active 2019-04-12 19:03:18 +03:00
Alex Plate
f6549aca76
Remove unused method 2019-04-12 19:03:18 +03:00
Alex Plate
4ce3cff2bf
Shorter version of selection restore (:action) 2019-04-12 19:03:18 +03:00
Alex Plate
c4c8b8c9e1
Fix :action command with selection 2019-04-12 19:03:18 +03:00
Alex Plate
23ce30a7fc
Provide vimSetSelection instead of vimStartSelectionAtPoint method 2019-04-12 19:03:17 +03:00
Alex Plate
2fd23af04a
Fix commentary extension 2019-04-12 19:03:17 +03:00
Alex Plate
33534d50cd
Support del and backspace in select mode 2019-04-12 19:03:17 +03:00
Alex Plate
79aed6b7b0
Add SAVE_VISUAL flag for commands 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
7ed7ac817d
Fix KeyHandler reset after using templates 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
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
a133a94dbe
Create tests for select mode toggling 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
3903f6c709
Fix wrong cursor shape by copying 2019-04-12 19:03:15 +03:00
Alex Plate
78ab61ec0c
Add docs for VisualGroup 2019-04-12 19:03:14 +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
53a5762f98
Fixing caret in dialogs 2019-04-12 19:03:14 +03:00
Alex Plate
85c92935d3
Add motion up and down 2019-04-12 19:03:14 +03:00
Alex Plate
ed51a60dfe
Fix wrong caret shape on mouse click 2019-04-12 19:03:14 +03:00
Alex Plate
6ad7771fed
Fix undo/redo 2019-04-12 19:03:14 +03:00
Alex Plate
63f87cdb18
Handle enter in select mode 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
7418c6db73
Add switcher for select mode and line and block wise 2019-04-12 19:03:13 +03:00
Alex Plate
6892db0056
Enter selection mode on unexpected changes 2019-04-12 19:03:13 +03:00
Alex Plate
2f6bd2c287
Introduce select mode 2019-04-12 19:03:13 +03:00
Alex Plate
4bff954c3b
Fix :join command 2019-04-12 19:03:13 +03:00
Alex Plate
e70f535ad3
Fix selection with undo 2019-04-12 19:03:13 +03:00
Alex Plate
da66981a1f
Fix putting caret on empty line 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
0d15b9117f
Log lockers, clear stack before entering visual mode 2019-04-12 19:03:12 +03:00
Alex Plate
4de8e8e291
Adjust caret to visual end in case of unexpected changes 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
c30cd23b89
Make VimListenerSuppressor sealed 2019-04-12 19:03:12 +03:00
Alex Plate
1e58173241
Fix ChangeVisualAction 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
b590762259
Support block selection autodetect 2019-04-12 19:03:11 +03:00
Alex Plate
1763eb2f17
Proper visual mode exit 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
9546f6069c
Fix line deletion in visual mode 2019-04-12 19:03:11 +03:00
Alex Plate
d65955647c
Move selection functions to VisualGroup 2019-04-12 19:03:10 +03:00
Alex Plate
5200ff8e84
Move CaretData to kotlin 2019-04-12 19:03:10 +03:00
Alex Plate
f1a667ae2e
Move caret last column attribute to kotlin 2019-04-12 19:03:10 +03:00
Alex Plate
82682ece5e
Remove unused moveCaret method 2019-04-12 19:03:10 +03:00
Alex Plate
61f9184728
Highlight only primary caret with block selection 2019-04-12 19:03:10 +03:00
Alex Plate
a220be8136
Fix all tests 2019-04-12 19:03:10 +03:00
Alex Plate
11b2096dba
Fix last selection type 2019-04-12 19:03:10 +03:00
Alex Plate
8370248390
Define main caret for visual block selection 2019-04-12 19:03:09 +03:00
Alex Plate
f528269bc6
Fixed tests with put and yank actions 2019-04-12 19:03:09 +03:00
Alex Plate
d551531603
Test fixing 2019-04-12 19:03:09 +03:00
Alex Plate
3b50bd8509
Fix tests about caret merging 2019-04-12 19:03:09 +03:00
Alex Plate
8bc73a0101
Fix word object tests 2019-04-12 19:03:09 +03:00
Alex Plate
419c15d0c3
Fixing tests 2019-04-12 19:03:09 +03:00
Alex Plate
be90776588
Remove native caret order 2019-04-12 19:03:09 +03:00
Alex Plate
7c8cc16768
Fix tests for vim surround 2019-04-12 19:03:08 +03:00
Alex Plate
1596b0addc
New structure of MotionEditorActionHandler 2019-04-12 19:03:08 +03:00
Alex Plate
886bbe1111
Use new struct of operation handler 2019-04-12 19:03:08 +03:00
Alex Plate
de266f12a4
Set selection start non nullable. Set null value with vimSelectionStartBackingNullable 2019-04-12 19:03:08 +03:00
Alex Plate
f9a5bc00e7
[WIP] Support native caret selection 2019-04-12 19:03:08 +03:00
Alex Plate
356c122767
Remove unused methods 2019-04-12 19:03:08 +03:00
Alex Plate
e9b94033c5
Format VisualOperatorActionHandler 2019-04-12 19:03:07 +03:00
Alex Plate
8e1385e4e1
Remove unused data key 2019-04-12 19:03:07 +03:00
Alex Plate
e881ed0d9a
Update visual handlers to new handler 2019-04-12 19:03:07 +03:00
Alex Plate
26d03d49b1
Create tests for visual put action 2019-04-12 19:03:07 +03:00
Alex Plate
082a3b21e1
Use range markers instead of TextRanges for VisualOperatorActionHandler 2019-04-12 19:03:07 +03:00
Alex Plate
15e6e8435a
Make extension properties to get visual range 2019-04-12 19:03:07 +03:00
Alex Plate
2d67067159
Split CopyGroup into class objects 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
616479c4fc
Use native caret iterator for VisualOperatorActionHandler 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
249be00463
Reformat setVisualMode and toggleVisual functions 2019-04-12 19:03:06 +03:00
Alex Plate
febcccc670
Extract visual motions to separate file 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
24eb376bed
Merge pull request #166 from apottere/patch-1
Get indent from PsiFile so formatting on shift is consistent (VIM-1231)
2019-04-12 18:27:56 +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
8160df000b
Revert "Fix right motion for non-ascii character"
This reverts commit f6e7019b
2019-04-11 16:26:37 +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
Alex Plate
f6e7019b51
Fix right motion for non-ascii character 2019-04-10 18:44:36 +03:00
Alex Plate
c202394c3c
[VIM-1628] Do not handle undefined characters 2019-04-10 12:48:30 +03:00
Alex Plate
900f415c6b
[VIM-1546] Storing TAB key as input 2019-04-09 21:51:23 +03:00
Alex Plate
38a4fd5fbc
[VIM-607] Fixing memory leaks when closing the project 2019-04-09 20:38:57 +03:00
Alex Plate
9f629132e4
Use Set instead of List for CommandHandler flags 2019-04-09 13:10:22 +03:00
Alex Plate
32ba7895a3
Provide more clear API for creating new Command Handlers 2019-04-08 17:19:48 +03:00
Daniele Megna
0f5ca758b8 Implement TabOnlyHandler 2019-04-07 11:42:50 +02:00
Alex Plate
4befd155a1
Merge pull request #182 from citizenmatt/VIM-1615
VIM-1615 Fix handling of so=999
2019-04-04 15:32:53 +03:00
Matt Ellis
bb7c2390b1
Keep bottom line aligned with bottom of screen when scrolling up 2019-04-04 00:15:23 +01: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
Alex Plate
547a159fb3
Add message to explain which action is null 2019-03-29 11:50:37 +03:00
Alex Plate
a1ff484c85
Merge pull request #109 from dhleong/dhleong/CommentaryExtension2
Add comment motion extension
2019-03-28 13:34:03 +03:00
Matt Ellis
6ebedb9219
VIM-1615 Fix handling of so=999 2019-03-27 09:31:12 +00:00
jonatantierno
c717bed4fb Command gn 2019-03-16 14:47:09 +01:00
gecko655
41ea121377 Fix issue VIM-1067: Repeat commands deletes End Of Line character when repeating "append to end of line" ('A') command.
The variable `ChangeGroup.oldOffset` should be initialized before every insertion action.

This fixes https://youtrack.jetbrains.com/issue/VIM-1067
2019-03-11 00:43:01 +09:00
Alex Plate
b3de48fdd2
Convert CommandNode to kotlin 2019-02-26 12:11:06 +03:00
Alex Plate
f58eda97c8
WIP: Renaming file 'CommandNode' with Kotlin extension 2019-02-26 12:10:03 +03:00
Alex Plate
7958aa3881
Convert CommandHandler to kotlin 2019-02-25 19:55:58 +03:00
Alex Plate
e67ac4c3ad
Use enumsets instead of bitflags for CommandHandler 2019-02-25 19:03:45 +03:00
Alex Plate
a52984f515
Remove unused constructors of CommandHandler 2019-02-25 14:05:37 +03:00
Alex Plate
746dbc2533
Convert MapHandler to kotlin 2019-02-25 13:58:18 +03:00
Alex Plate
b2c462fbaa
Convert SortHandler to kotlin 2019-02-25 13:07:39 +03:00
Alex Plate
42171e5680
Convert YankLinesHandler to kotlin 2019-02-25 13:01:00 +03:00
Alex Plate
10ddc61fb7
Convert SelectFileHandler to kotlin 2019-02-25 12:51:24 +03:00
Alex Plate
ae1d3d9c09
Convert RepeatHandler to kotlin 2019-02-25 12:49:13 +03: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
fbac63085f Add WriteAction.run() wrappings as appropriate 2019-02-22 10:59:20 -05:00
Daniel Leong
35ce221cab Refactor Runnable -> lambda 2019-02-22 10:11:31 -05:00
Daniel Leong
4599d76ce4 Remove catch() 2019-02-22 10:11:31 -05:00
dhleong
6a6632e363 Fix visual-mode gc action 2019-02-22 10:11:31 -05:00
dhleong
5c18dd0603 Post handling of "remaining" key to ensure correct event ordering
Fixes the strange behavior when using the <Plug> mapping broke
in the real environment, but the unit tests passed
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
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
a1236d855b
Convert RegistersHandler to kotlin 2019-02-22 16:26:37 +03:00
Alex Plate
0f835fd3ba
Convert PutLinesHandler to kotlin 2019-02-22 15:59:00 +03:00
Alex Plate
434c1ef275
Convert PreviousFileHandler to kotlin 2019-02-21 18:59:24 +03:00
Alex Plate
6772b08745
Convert OnlyHandler to kotlin 2019-02-21 18:56:03 +03:00
Alex Plate
7c8d560f9e
Use native mechanism for multicursor iteration 2019-02-21 18:19:23 +03:00
Alex Plate
29d3e4fd5b
Convert MoveTextHandler to kotlin 2019-02-21 17:34:30 +03:00
Alex Plate
b8748916a7
Convert MarksHandler to kotlin 2019-02-21 15:57:21 +03:00
Alex Plate
e028215718
Convert LetHandler to kotlin 2019-02-21 14:45:50 +03:00
Alex Plate
908a0929f0
Merge pull request #174 from bradziolko/vim-1012
[VIM-1012] Support tab close preferences when using :q or :wq
2019-02-21 14:45:22 +03:00
sumoooru2
d35f017db5 Fix findBlockRange 2019-02-21 16:52:15 +09:00
Alex Plate
3b8da702a7
Convert JumpsHandler to kotlin 2019-02-20 18:21:50 +03:00
Alex Plate
24c24f40ab
Update copyright 2019-02-20 17:01:23 +03:00
Alex Plate
865a888363
Convert JoinLinesHandler to kotlin 2019-02-20 16:40:13 +03:00
Alex Plate
cdff9e28a1
Support some increment and decrement commands 2019-02-20 16:10:44 +03:00
Alex Plate
ca2924510a
Convert HistoryHandler to kotlin 2019-02-19 20:34:08 +03:00
Alex Plate
42cbbbfc3a
Convert GotoLineHandler to kotlin 2019-02-19 20:03:31 +03:00
Alex Plate
d8d1daca67
Convert GotoCharacterHandler to kotlin 2019-02-19 20:01:47 +03:00
Alex Plate
1aa021b157
Convert FindSymbolHandler to kotlin 2019-02-19 19:59:29 +03:00
Alex Plate
5e99c45fa1
Convert FindFileHandler to kotlin 2019-02-19 19:58:18 +03:00
Alex Plate
687a601772
Add Tony Arra to contributor list 2019-02-19 19:56:18 +03:00
Alex Plate
4bc2880505
Convert FindClassHandler to kotlin 2019-02-19 19:48:18 +03:00
Alex Plate
0f474d7f3e
Convert EditFileHandler to kotlin 2019-02-19 19:48:18 +03:00
Alex Plate
fe5342d63c
Convert DumpHandler to kotlin 2019-02-19 19:48:18 +03:00
Alex Plate
2f9de59b79
Convert DeleteHandler to kotlin 2019-02-19 19:48:18 +03:00
Alex Plate
18d18118a0
Convert CopyHandler to kotlin 2019-02-19 19:48:18 +03:00
Alex Plate
b074b5ac70
Use coerce function for rawCount 2019-02-19 19:48:17 +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
2761dfb06f
Convert CmdFilterHandler to kotlin 2019-02-19 12:07:46 +03:00
Alex Plate
93ce46bb7c
Convert AsciiHandler to kotlin 2019-02-19 11:57:25 +03:00
Alex Plate
7e23fca598
New style of command definition 2019-02-18 21:32:23 +03:00
Alex Plate
0c2631622e
Merge pull request #88 from dos65/keypad_arrows
VIM-944 - Navigation with keypad arrows
2019-02-18 19:50:22 +03:00
Alex Plate
2285034a62
Convert ActionListHandler to kotlin 2019-02-15 21:02:25 +03:00
Alex Plate
49e28839f7
Convert ActionHandler to kotlin 2019-02-15 19:40:43 +03:00
Alex Plate
b2533565ad
Convert WriteQuiteHandler to kotlin 2019-02-15 19:27:07 +03:00
Alex Plate
a96a1730a1
Convert WritePreviousHandler to kotlin 2019-02-15 19:25:35 +03:00
Alex Plate
d027d7e099
Convert WriteNextHandler to kotlin 2019-02-15 19:23:56 +03:00
Alex Plate
cf5a5564ca
Convert WriteHandler to kotlin 2019-02-15 19:22:34 +03:00
Alex Plate
e183067257
Convert WriteAllHandler to kotlin 2019-02-15 19:21:10 +03:00
Alex Plate
7ab15f7f89
Convert UndoHandler to kotlin 2019-02-15 19:19:59 +03:00
Alex Plate
1a91f0cbcb
Convert SubstituteHandler to kotlin 2019-02-15 19:17:37 +03:00
Alex Plate
30241e0837
Convert SplitHandler to kotlin 2019-02-15 18:58:14 +03:00
Alex Plate
aea098b668
Convert SourceHandler to kotlin 2019-02-15 18:54:36 +03:00
Alex Plate
95a441b5b1
Merge pull request #175 from citizenmatt/VIM-1303
VIM-1303 Update UI when look and feel changes
2019-02-15 18:19:11 +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
aca77e1279
Convert ShellHandler to kotlin 2019-02-15 17:13:59 +03:00
Alex Plate
f7b604cb9b
Convert SetHandler to kotlin 2019-02-15 17:11:02 +03:00
Alex Plate
9c5cfd6bca
Convert SelectLastFileHandler to kotlin 2019-02-15 17:08:55 +03:00
Alex Plate
f657ecac6f
Convert SelectFirstFileHandler to kotlin 2019-02-15 17:06:54 +03:00
Alex Plate
69aaca33a5
Convert RedoHandler to kotlin 2019-02-15 17:04:35 +03:00
Alex Plate
08168a7877
Convert QuitHandler to kotlin 2019-02-15 17:02:57 +03:00
Alex Plate
9054f48f88
Convert PromptReplaceHandler to kotlin 2019-02-15 16:59:34 +03:00
Alex Plate
fbe6b5a3a3
Convert PromptFindHandler to kotlin 2019-02-15 16:55:45 +03:00
Alex Plate
8af5634431
Convert NoHLSearchHandler to kotlin 2019-02-14 18:08:44 +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
4d20e8fb28
Convert NextTab and PreviousTab handlers to kotlin 2019-02-14 15:50:35 +03:00
Alex Plate
276b19bf09
Merge pull request #132 from andreigasparovici/master
Added :tabn(ext) and :tabp(revious) functionality

VIM-801
2019-02-14 14:56:43 +03:00
Alex Plate
b0ebbdd7ff
Convert HelpHandler to kotlin 2019-02-14 14:35:32 +03:00
Alex Plate
5014de6d9d
Convert FileHandler to kotlin 2019-02-14 14:23:28 +03:00
Alex Plate
e0e51835b5
Create function for handler's flags definition 2019-02-14 13:23:02 +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
c2da601722
Remove unused handler 2019-02-14 12:38:24 +03:00
Alex Plate
e8fea2e969
Convert DigraphHandler and EchoHandler to kotlin 2019-02-13 16:17:18 +03:00
Alex Plate
1fb93ea73d
Create kotlin-style command definition 2019-02-13 13:49:43 +03:00
Alex Plate
470f15fd3c
Convert ExitHandler and CommandName to kotlin 2019-02-12 20:47:59 +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
d69bf5d76f
Update changelog. Add John Grib to contributor list. 2019-02-12 18:55:01 +03:00
Alex Plate
ac484e36fa
Merge pull request #115 from johngrib/feature/add-command-shell
Added :shell command
2019-02-12 18:39:23 +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
582393a462
Fix :only command 2019-02-12 16:42:54 +03:00
Matt Ellis
0c1a08b231
VIM-1303 Update UI when look and feel changes 2019-02-07 08:54:41 +00:00
bradziolko
b88f13ee32 [VIM-1012] Support tab close preferences when using :q or :wq 2019-01-29 02:09:53 -06:00
Andrey Vlasovskikh
ff61a42670 Updated usages of obsolete APIs 2019-01-28 21:40:14 +03:00
Andrey Vlasovskikh
f160d855c0 Added missing nullity annotations 2019-01-28 21:38:37 +03:00
Andrey Vlasovskikh
51685a2094 Renamed attributes according to naming convention 2019-01-28 20:49:23 +03:00
Andrey Vlasovskikh
39aa60850d Fixed inspection warnings 2019-01-28 20:41:56 +03:00
Andrey Vlasovskikh
872921e6b7 Reformat code 2019-01-28 20:39:45 +03:00
Andrey Vlasovskikh
89788df95c Merge branch 'pull/173' 2019-01-28 20:38:03 +03:00
Andrey Vlasovskikh
00154f2b9f Merge branch 'pull/170' 2019-01-27 16:48:05 +03:00
Matt Ellis
531a9c28ae
VIM-1558 Support block inlays 2019-01-25 12:31:42 +00:00
Tony Arra
63be2c28e9 Strip tag attributes from closing tag for Vim-Surround 2019-01-21 09:17:10 -05:00
Matt Ellis
56c4e3e31f
VIM-1187 Fix performance with large files and relative line numbers 2019-01-08 13:47:05 +00:00
Andrey Vlasovskikh
333a5be30b Merge branch 'pull/162' 2018-12-31 18:05:38 +03: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
Andrew Potter
5e80e402ee Get indent from PsiFile so formatting on shift is consistent 2018-11-02 12:54:55 -04:00
Alex Plate
5529bf284a VIM-798 Arrow keys for window navigation commands
Add new mappings to allow window navigation with arrow keys:
- ^W-<left> as ^W-h
- ^W-<down> as ^W-j
- ^W-<up> as ^W-k
- ^W-<right> as ^W-l
2018-10-01 20:19:25 +03:00
Pierce Corcoran
9e2400de69
VIM-1473 Fix incorrect selection type for unnamed registers
Selection type for unnamed and unnamedplus will only be guessed when system clipboard is different from the internal register, and even then will never assume the text is a visual block selection.
2018-09-23 19:11:10 -07:00
Andrey Vlasovskikh
6506935d03 Merge branch 'vim-1274' 2018-09-21 19:31:40 +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
Andrey Vlasovskikh
173f570230 EA-108647 Check if the editor is disposed in invokeLater() 2018-09-14 18:19:37 +03:00
Andrey Vlasovskikh
57dcaba367 EA-89803 Fixed running IntelliJ write actions directly within Swing timer handler
We have to switch to a transaction with an appropriate modality state.
2018-09-14 18:08:45 +03:00
Andrey Vlasovskikh
d9f7955356 VIM-1366 Don't wrap secondary event loop for input() into write action
Extension handlers are now run without outer read / write actions and
they are required to synchronize access to the data structures of
IntelliJ by themselves.
2018-09-14 17:28:25 +03:00
Andrey Vlasovskikh
9cf264998f VIM-1317 Don't run Undo/Redo inside write actions
They show UI dialogs, which is not allowed under a write action, and
they use their own write actions when needed.
2018-09-14 17:23:10 +03:00
Andrey Vlasovskikh
1feac95069 VIM-339 Handle <Esc> by Vim only in primary or physical file editors
<Esc> is handled by the Vim emulation in primary editors of the main
window and in non-primary editors with physical files open in them,
but only in modes other than Normal. This is needed for the diff dialog
where you can have both physical file editors and non-physical file
editors, but they are non-primary, so users still expect <Esc> to close
the diff window when the editor is in the Normal mode.
2018-09-10 14:45:22 +03:00
Andrey Vlasovskikh
ed3f87e6a8 VIM-176 Treat console editors like any other editors
If an editor is a writable non-file editor (like a console), then we
activate the 'i' mode *and* allow running write commands. Thus,
Insert mode commands like arrow navigation will work in these editors.
2018-09-08 19:20:53 +03:00
Andrey Vlasovskikh
cc76c7f0f3
Merge pull request #156 from karavaevitalii/multiple-carets
Fixed bug with selecting occurrences when ignorecase is set
2018-08-27 21:55:06 +03:00
Vitalii Karavaev
57741cd5ce Fixed bug with selecting occurrences when ignorecase is set 2018-08-27 21:23:25 +03:00
Andrey Vlasovskikh
23fa55ea11 Updated the list of all supported commands
Removed the multiple carets support marker, since all commands are
basically covered now. We'll handle any bugs left in the same way we
do it for other bugs.
2018-08-27 20:50:07 +03:00
Vitalii Karavaev
0a052e7bb3 Cleanup 2018-08-10 18:18:43 +03:00
Vitalii Karavaev
60a96e9542 Cleanup 2018-08-10 17:32:30 +03:00
Vitalii Karavaev
f3f9abef0c <A-x> shows no more matches message when necessary 2018-08-10 17:06:10 +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
7dcacd3b01 Minor fixes 2018-08-09 17:45:56 +03:00
Vitalii Karavaev
2225033b7c Reset state and additional checks 2018-08-09 17:32:32 +03:00
Vitalii Karavaev
7c5194fbaa Better work in case of multiple carets 2018-08-09 14:55:22 +03:00
Vitalii Karavaev
361284fe06 Fixed <A-n> in visual mode 2018-08-09 14:25:29 +03:00
Vitalii Karavaev
aa3e55cacc Fixed bug with multiple carets <A-n> action 2018-08-09 13:54:31 +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
77bd800d95 private modifier 2018-08-08 16:11:55 +03:00
Vitalii Karavaev
831373c292 Cleanup 2018-08-08 15:59:44 +03:00
Vitalii Karavaev
346ada2eff Blank lines 2018-08-08 15:45:56 +03:00
Vitalii Karavaev
485ff37b22 Better work with nulls 2018-08-08 15:38:33 +03:00
Vitalii Karavaev
47ef6f4844 Show message when no more matches 2018-08-08 15:19:03 +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
15dc233a86 Overlap carets when jump to mark 2018-08-08 10:20:15 +03:00
Vitalii Karavaev
b070549eca Remove gn action 2018-08-07 17:42:18 +03:00
Vitalii Karavaev
71a3df028b Fixed review issues 2018-08-07 17:37:11 +03:00
Vitalii Karavaev
73ef8c821b Minor review issues 2018-08-07 16:47:18 +03:00
Vitalii Karavaev
bbd314b6df Test :s/// 2018-08-07 15:05:46 +03:00
Vitalii Karavaev
5764fe7555 Multiple carets support for :@ 2018-08-07 14:54:42 +03:00
Vitalii Karavaev
44cc17cb84 Multiple carets support for :s/// 2018-08-07 14:53:10 +03:00
Vitalii Karavaev
dba8879576 Formatted lines 2018-08-07 10:29:56 +03:00
Vitalii Karavaev
1deb48bf60 Fixed broken tests 2018-08-07 10:28:37 +03:00
Vitalii Karavaev
bd35f71c6a :sor multicaret support 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
0c78741642 Warnings 2018-08-06 15:54:58 +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
2cacdbaf00 Minor 2018-08-06 10:24:09 +03:00
Vitalii Karavaev
3041fe7c3b Rename VisualSelectNextOccurrence to VimSelectNextOccurrence 2018-08-06 09:45:49 +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
fc0a950af1 Cleanup 2018-08-03 14:35:23 +03:00
Vitalii Karavaev
e1872387d4 Shortcut for caret adding prototype 2018-08-03 14:08:06 +03:00
Vitalii Karavaev
ac10b96280 Better work with nullable carets 2018-08-03 11:15:17 +03:00
Vitalii Karavaev
d5313ebbda Remove warnings 2018-08-02 18:09:36 +03:00
Vitalii Karavaev
c3d1e5c58c Remove warnings 2018-08-02 17:26:08 +03:00
Vitalii Karavaev
478c0cd443 Replace block of code with function call 2018-08-02 17:20:29 +03:00
Vitalii Karavaev
2be2d861c9 Update action for [p and update package-info 2018-08-02 12:04:56 +03:00
Vitalii Karavaev
9731980fe6 Fixed incompatibility wit goto mark action and preparing to remove inconsistency between yank and delete 2018-08-02 11:57:06 +03:00
Vitalii Karavaev
392f8e5e60 Fix goto mark actions 2018-08-02 11:54:16 +03:00
Vitalii Karavaev
a7e1275b5f Remove redundant null check 2018-08-01 14:19:55 +03:00
Vitalii Karavaev
29a6d47cca Correct annotation 2018-08-01 14:18:04 +03:00
Vitalii Karavaev
65483dd34a Correct Javadoc 2018-08-01 14:12:08 +03:00
Vitalii Karavaev
3b290fe356 Add tests and fix bug for CopyGroup 2018-08-01 13:59:05 +03:00
Vitalii Karavaev
2648913b61 Corrected review issues 2018-08-01 10:55:54 +03:00
Vitalii Karavaev
d386e49bd5 Simplify logic and remove unused logger 2018-08-01 10:42:31 +03:00
Vitalii Karavaev
c1b4671435 Multiple carets support for :m 2018-07-31 16:37:47 +03:00
Vitalii Karavaev
cbeb0d229b Remove todo 2018-07-31 10:49:35 +03:00
Vitalii Karavaev
0c5ca37412 Multiple carets support for :pu command 2018-07-31 10:41:45 +03:00
Vitalii Karavaev
602071a440 Remove warning 2018-07-30 17:50:17 +03:00
Vitalii Karavaev
7061b58940 Remove warnings 2018-07-30 17:44:25 +03:00
Vitalii Karavaev
76c2c54e5a Remove unnecessary comments 2018-07-30 15:50:26 +03:00
Vitalii Karavaev
ffcf7d0630 Multiple carets support for :co 2018-07-30 15:42:20 +03:00
Vitalii Karavaev
40d0f6c1e2 Multiple carets support for join lines via :j 2018-07-30 15:05:41 +03:00
Vitalii Karavaev
bddd4db2b2 Uncertainty 2018-07-30 15:04:19 +03:00
Vitalii Karavaev
7ee18e81c7 Remove unused function 2018-07-30 10:56:50 +03:00
Vitalii Karavaev
700240d441 Remove warnings 2018-07-26 15:24:34 +03:00
Vitalii Karavaev
539d38259c Remove TODO 2018-07-26 15:17:29 +03:00
Vitalii Karavaev
2efb0dfb17 Multicaret support for go to line 2018-07-26 14:52:40 +03:00
Vitalii Karavaev
947d32d905 Multiple carets support for :go command 2018-07-26 13:55:51 +03:00
Vitalii Karavaev
56569966a6 Preparing for multicaret support for ex commands 2018-07-26 13:55:24 +03:00
Vitalii Karavaev
6092535041 Remove some warnings 2018-07-26 11:46:14 +03:00
Vitalii Karavaev
44a53ce28e Fix bug with overlapping carets 2018-07-26 11:33:32 +03:00
Vitalii Karavaev
a228f32f34 Remove possible NPE 2018-07-26 11:01:04 +03:00
Vitalii Karavaev
2082981bd6 Permute parameters 2018-07-26 10:28:41 +03:00
Vitalii Karavaev
3c59ee79f6 Refactoring and TODO 2018-07-25 16:47:00 +03:00
Vitalii Karavaev
b3ebd7c29d Fix caret order for different put cases 2018-07-25 14:53:28 +03:00
Vitalii Karavaev
76a5c39fdc Remove warnings and fixed null handling 2018-07-25 11:24:22 +03:00
Vitalii Karavaev
f4ec448d75 Add constants and remove TODO 2018-07-25 11:06:54 +03:00
Vitalii Karavaev
e38390f8a1 Codestyle 2018-07-25 10:59:12 +03:00
Vitalii Karavaev
2990389ea5 Codestyle 2018-07-25 10:50:03 +03:00
Vitalii Karavaev
249dfb166d Change if/else block to switch 2018-07-25 10:03:20 +03:00
Vitalii Karavaev
4c06d21396 Proper marks in case of put [count] 2018-07-25 09:57:56 +03:00
Vitalii Karavaev
a046f2975f Remove TODO: use tabs as needed 2018-07-24 11:51:52 +03:00
Vitalii Karavaev
0bf217ef36 Pair.NonNull instead of Pair 2018-07-24 10:12:19 +03:00
Vitalii Karavaev
f2712d8cfb Pair.create instead of constructor call 2018-07-23 18:14:59 +03:00
Vitalii Karavaev
bb32e7adb4 Multiple carets support for put visual text 2018-07-23 16:33:04 +03:00
Vitalii Karavaev
cadaec585b Minor fixes 2018-07-23 13:25:55 +03:00
Vitalii Karavaev
11c2f5014f Fixed bug yank blockwise 2018-07-23 12:50:58 +03:00
Vitalii Karavaev
2326489658 Multiple carets support for yank visual 2018-07-23 12:39:31 +03:00
Vitalii Karavaev
01ec08e20b Multiple carets support for going to character/line in command mode 2018-07-20 14:16:18 +03:00
Vitalii Karavaev
69ebcc17e9 Put text bug fixed 2018-07-20 14:15:27 +03:00
Vitalii Karavaev
b86bdd7847 Explicitly passing carets to some methods and cleanup 2018-07-20 11:53:50 +03:00
Vitalii Karavaev
fbd7409851 Moved putText to single method and better work with multicaret insertion 2018-07-20 11:25:53 +03:00
Vitalii Karavaev
0773c886ee Fixed bug with put blockwise text. Properly this time 2018-07-19 18:00:14 +03:00
Vitalii Karavaev
d05c7268d9 Fixed bug with put blockwise text 2018-07-19 17:44:11 +03:00
Vitalii Karavaev
80d0748edd minor 2018-07-19 17:15:42 +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
60917433d2 Update package-info 2018-07-19 11:22:36 +03:00
Vitalii Karavaev
dd59e0704a Update package-info 2018-07-19 11:18:57 +03:00
Vitalii Karavaev
d4bf472291 Refactoring 2018-07-19 11:07:56 +03:00
Vitalii Karavaev
039b650953 Remove redundant caret passing 2018-07-19 11:06:31 +03:00
Vitalii Karavaev
49590c831f PutTextAfterCursorAction implemented 2018-07-18 15:39:06 +03:00
Vitalii Karavaev
9aed0ce621 Revert CopyGroup and implement putTextBeforeCursor action 2018-07-18 12:27:37 +03:00
Vitalii Karavaev
9b653a7c63 Fix visual block insert/append 2018-07-18 10:38:16 +03:00
Vitalii Karavaev
bb0094038a Remove unnecessary caret passing in some cases and started to simplify ChangeGroup methods 2018-07-17 15:59:01 +03:00
Vitalii Karavaev
ae55f5d605 Multicaret support for yank visual range 2018-07-16 14:41:48 +03:00
Vitalii Karavaev
81ca21517a Update package-info 2018-07-16 14:41:27 +03:00
Vitalii Karavaev
24a4167296 Multicaret support for yank motion 2018-07-16 13:59:19 +03:00
Vitalii Karavaev
3ffd967b00 Update package-info 2018-07-16 13:41:50 +03:00
Vitalii Karavaev
a2a1f4806a Multicaret support for yank lines 2018-07-16 13:39:16 +03:00
Vitalii Karavaev
6b56d7d1cd Remove redundant code 2018-07-16 12:06:21 +03:00
Vitalii Karavaev
b5a802bf30 Update package-info 2018-07-16 11:58:39 +03:00
Vitalii Karavaev
b4586779b3 Remove unused function 2018-07-16 11:34:43 +03:00
Vitalii Karavaev
d92d5a1b33 Remove unused functions 2018-07-16 11:32:59 +03:00
Vitalii Karavaev
52ec080343 Remove unused function 2018-07-16 11:31:38 +03:00
Vitalii Karavaev
5bff61c2ee Discard redundant changes 2018-07-16 11:23:48 +03:00
Vitalii Karavaev
c12b713543 Remove unused methods and fix bug 2018-07-16 11:19:00 +03:00
Vitalii Karavaev
7bafa0f8c8 Fix broken going to [count] line end. 2018-07-16 11:16:43 +03:00
Vitalii Karavaev
a47cdb9f35 Remove unnecessary throws clause 2018-07-16 11:15:24 +03:00
Vitalii Karavaev
bd9ac3b031 Pull check if caret is not null up in base class 2018-07-16 11:14:29 +03:00
Vitalii Karavaev
22ad45cd58 Fixed expression with both pure and side-effects and inline unnecessary function call 2018-07-16 11:12:53 +03:00
Vitalii Karavaev
58e0b7704b Remove unused method 2018-07-16 10:30:19 +03:00
Vitalii Karavaev
b78854b8de Remove unnecessary function calls and properly handle multicaret jump to mark 2018-07-16 10:29:12 +03:00
Vitalii Karavaev
ae61ed456f Multiple carets support for put text instead of visual block 2018-07-12 17:32:50 +03:00
Vitalii Karavaev
bdc1103641 Proper indents 2018-07-12 15:45:47 +03:00
Vitalii Karavaev
689d19759d Remove indent in pasting text where necessary 2018-07-12 15:44:52 +03:00
Vitalii Karavaev
064d3765c0 Multiple carets support for auto indent and refactoring 2018-07-12 14:29:12 +03:00
Vitalii Karavaev
861028ef5c Proper code style 2018-07-12 12:20:03 +03:00
Vitalii Karavaev
75f88c539c Multiple carets support for putting text without indent 2018-07-12 10:20:31 +03:00
Vitalii Karavaev
1109650fde Multiple carets support for put text 2018-07-12 10:06:11 +03:00
Vitalii Karavaev
704f8d7e9d Proper indent in visual mode changes 2018-07-10 15:37:06 +03:00
Vitalii Karavaev
4a2c3d9098 Inserting new line for particular caret bug fixed 2018-07-10 14:22:32 +03:00
Vitalii Karavaev
d21b04acb5 Better multiple carets handling in some cases and cleanup 2018-07-10 13:38:17 +03:00
Vitalii Karavaev
5403336c78 Minor code cleanup 2018-07-09 16:09:54 +03:00
Vitalii Karavaev
def6d2bd5b Change behaviour when inserting previously inserted text 2018-07-09 14:53:54 +03:00
Vitalii Karavaev
04db2764c1 Better insertion after line end 2018-07-09 14:47:24 +03:00
Vitalii Karavaev
0e9b2250bd Multiple carets support for inserting after line end 2018-07-09 14:38:42 +03:00
Vitalii Karavaev
654d345d78 Fix bug in insertion previously inserted text 2018-07-09 11:05:59 +03:00
Vitalii Karavaev
99e379392b Fix typo 2018-07-09 09:54:41 +03:00
Vitalii Karavaev
1debd99701 Multiple carets support for jumping to older/newer cursor position in jump list 2018-07-06 17:03:48 +03:00
Vitalii Karavaev
a099070c79 Multiple carets support for moving caret to the middle column 2018-07-06 15:22:52 +03:00
Vitalii Karavaev
0a09b8bd5a Multiple carets support for motion to first non-blank character of the screen line 2018-07-06 15:09:56 +03:00
Vitalii Karavaev
b3750dd24d Multiple carets support for motion to first/last screen column 2018-07-06 14:59:13 +03:00
Vitalii Karavaev
db1b0c2516 Multiple carets support for searching substrings 2018-07-06 14:32:19 +03:00
Vitalii Karavaev
fc6208b95d Goto first line bug fixed 2018-07-06 14:17:43 +03:00
Vitalii Karavaev
e68d3eac7d Multiple carets support for repeating latest search 2018-07-06 12:41:48 +03:00
Vitalii Karavaev
d093b446c2 Multiple carets support for going to [count] line from bottom of window 2018-07-06 12:19:21 +03:00
Vitalii Karavaev
be839051d5 Multiple carets support for going to [count] line from bottom of window 2018-07-06 12:07:16 +03:00
Vitalii Karavaev
8937068b5f Multiple carets support for going to [count] line from top of window 2018-07-06 11:58:21 +03:00
Vitalii Karavaev
3f82020100 Multiple carets support for going to line 2018-07-06 11:39:57 +03:00
Vitalii Karavaev
63ee6bbc56 Multiple carets support for searching entry in reversed direction 2018-07-05 17:40:23 +03:00
Vitalii Karavaev
7046680765 Multiple carets support for searching entry in forward direction 2018-07-05 17:35:54 +03:00
Vitalii Karavaev
c17334f17f Multiple carets support for jumping on mark line 2018-07-05 17:13:01 +03:00
Vitalii Karavaev
ecd40231a5 Multiple carets support for jumping to mark added 2018-07-05 16:52:32 +03:00
Vitalii Karavaev
9b751da31c Multiple carets support for matching items 2018-07-04 17:48:34 +03:00
Vitalii Karavaev
f3d168f19f Multiple carets support for searching whole word 2018-07-04 16:08:37 +03:00
Vitalii Karavaev
4f4d9fda0b Multiple carets support for moving cursor after last char in the file 2018-07-04 15:10:32 +03:00
Vitalii Karavaev
f4bb745519 Multiple carets support for moving cursor to the first char in the file 2018-07-04 14:41:17 +03:00
Vitalii Karavaev
a03258999a Multiple carets support for deleting the word before cursor in insert mode 2018-07-04 12:31:29 +03:00
Vitalii Karavaev
39b166b87f Multiple caret support for insert previously inserted text and stop inserting added 2018-07-04 10:19:17 +03:00
Vitalii Karavaev
4952ddc494 Multiple carets support for inserting previously inserted text 2018-07-03 15:49:03 +03:00
Vitalii Karavaev
8ffc9b6581 Simple case for insert previous inserted text implemented 2018-07-02 17:46:17 +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
dca4b0a399 VIM-1287 Removed redundant code 2018-06-28 16:08:55 +03:00
Andrey Vlasovskikh
7f897440b7 Merge remote-tracking branch 'jpalus/master' 2018-06-04 16:05:10 +03:00
Andrey Vlasovskikh
5b21074b9d Merge remote-tracking branch 'jpalus/VIM-1431' 2018-06-04 16:01:42 +03:00
Jan Palus
50b2093548 generalize check on offset boundaries 2018-06-02 15:09:28 +02:00
Andrey Vlasovskikh
bc5ca28b13 Fixed API incompatibility 2018-05-30 22:26:50 +03:00
Andrey Vlasovskikh
3eed987488 Fixed code inspection warnings in FileGroup 2018-05-30 21:51:20 +03:00
Andrey Vlasovskikh
6f633700ae Removed deprecated API usages 2018-05-30 21:27:57 +03:00
Andrey Vlasovskikh
a7670829d5 Fixed NPE 2018-05-30 21:27:01 +03:00
Andrey Vlasovskikh
6fb8817391 Code style 2018-05-30 21:24:02 +03:00
Jan Palus
e90b7276cb VIM-1431 handle empty documents when checking if line is empty
Signed-off-by: Jan Palus <jpalus@fastmail.com>
2018-05-29 23:08:40 +02:00
Andrey Vlasovskikh
a1ba5fec2b Updated the index of supported and not supported commands 2018-05-29 22:45:04 +03:00
Andrey Vlasovskikh
6606211233 Incomplete commands index with the current status of multi-caret support 2018-05-29 20:08:32 +03:00
Andrey Vlasovskikh
b1daacc9fb Added TODO items for unused actions 2018-05-29 20:04:23 +03:00
Jan Palus
03fe7d9ea2 VIM-1427 add count support to tag motion 2018-05-29 00:45:44 +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
06cc59b7a3 Got rid of deprecated overrides in EditorActionHandlerBase 2018-05-26 19:47:47 +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
63b237114a Multicaret version for VisualOperatorActionHandler 2018-05-21 17:05:38 +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
422557d4ce Cosmetical changes 2018-05-12 19:01:01 +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
3b46e44e4f action.motion.text.* multicaret tests and implementation 2018-04-27 20:24:26 +03:00
Vasily Alferov
a75db02d05 Fix failed tests on Visual Block Mode. 2018-04-24 22:17:10 +03:00
Vasily Alferov
4698f1be5c Reformat code with IntellIJ IDEA tool. 2018-04-16 16:11:53 +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
5037a1182f Fix unused imports 2018-03-29 17:21:30 +05:30
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
Florian Hassmann
ab750b6e75 Fixes #VIM-1404. 2018-01-29 12:22:15 +01:00
Andrey Vlasovskikh
44a4a858fe IDEA-184351 Check if project is disposed before setting editor line numbers
Setting line numbers requires re-initializing the editor that means
accessing project code style settings. If the project has been disposed
then this operation is illegal.
2017-12-29 11:34:56 +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
b7273bc4f2 VIM-1379 Added check for empty ranges 2017-12-29 10:09:09 +03:00
qzed
b98427472f VIM-1110 Fix caret jumping after escape from block-insert mode 2017-12-28 15:53:02 +03:00
Andrey Vlasovskikh
bf42822626 VIM-862 Keep selected text after running possibly async IDE action
E.g. `:action ReformatCode` is run asynchronously in another thread, so
we used to exit the visual mode (and thus dropped the selection) before
it was run.
2017-12-27 19:00:42 +03:00
Andrey Vlasovskikh
2c99da538e VIM-1329 Use default modality state to run actions after focus settles down 2017-12-18 00:54:52 +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
473a305e5f Use SecondaryLoop of JDK 8
The current version of IdeaVim is compatible with IntelliJ 2017.1+
which has switched to Java 8+, so we no longer need compatibility
layers for earlier versions.
2017-12-15 01:25:58 +03:00
Andrey Vlasovskikh
bd84babecd Converted UiHelper into Kotlin 2017-12-14 03:26:01 +03:00
Andrey Vlasovskikh
1b83231b1c VIM-1329 Use IntelliJ API to request focus reliably 2017-12-14 00:29:11 +03:00
Andrey Vlasovskikh
f39ad34057 VIM-1368 Use IntelliJ API to run stuff after the current component gets focus 2017-12-14 00:28:02 +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
Andrey Vlasovskikh
a76b41b737 VIM-1367 Fixed resetting the default value
The previous fix tried to parse the current value instead of the default
one.
2017-11-03 05:00:29 +03:00
Andrey Vlasovskikh
2fc6553203 VIM-1367 Correctly reset parsed and stored 'iskeyword' option value 2017-11-03 04:26:46 +03:00
Andrey Vlasovskikh
98b003e601 VIM-1367 Deterministic order of options for reproducible tests 2017-11-03 04:23:29 +03:00
Andrey Vlasovskikh
6245b15d8f Cleanup 2017-11-03 03:48:15 +03:00
Andrey Vlasovskikh
ab1d7ba6cb VIM-1367 Removed unnecessary repetition in positive lookbehind
It resulted in an inspection warning that positive lookbehind groups
cannot contain 1 or more repetition patterns.
2017-11-03 03:34:11 +03: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
Andrei Gasparovici
82dfcdd5df Added :tabn(ew) and :tabp(revious) functionality 2017-08-18 11:38:52 +03:00
Konstantin Petrov
e97c49a032 Fix search for braces inside quotes the way vim does 2017-05-31 10:27:48 +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
Andrey Vlasovskikh
a882e37d04 Merge remote-tracking branch 'origin/vim-1007'
# Conflicts:
#	gradle.properties
#	resources/META-INF/plugin.xml
#	src/com/maddyhome/idea/vim/VimTypedActionHandler.java
2017-01-16 00:57:31 +03:00
Andrey Vlasovskikh
120b69c439 Fixed source API compatibility with branch 171 2017-01-15 23:22:40 +03:00
Andrey Vlasovskikh
a5e303d1ca Merge pull request #121 from gaganis/VIM-1216
Fixed . reseting the last find movement
2016-11-29 00:35:40 +03: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
72fbe758b4 VIM-1205 Don't move key handling into separate event for raw handlers 2016-11-22 21:58:32 +03:00
Pavel Fatin
6b9ab7163a Support for zero-latency rendering, #VIM-1007 fixed 2016-10-26 12:53:13 +02:00
Andrey Vlasovskikh
563092cffb Fixed caret model exception when changing selection in documents open in several editors 2016-10-21 18:11:15 +03:00
Andrey Vlasovskikh
f33f73d2f5 VIM-1190 Fixed exception "Write access is allowed from write-safe contexts only"
We now use IntelliJ's version of invokeLater() in order to satisfy the
new protocol for running read-write actions in modal dialogs.
2016-09-30 20:44:16 +03:00
Andrey Vlasovskikh
b595dfd443 VIM-1098 Don't start visual selection when mouse click was actually drag over single character 2016-09-01 20:50:55 +03:00
Andrey Vlasovskikh
364b3567fc VIM-1126 Fixed warning about modifying shortcuts of global actions for 2016.2 2016-07-07 17:39:29 +03:00
John Grib
b5ea2127d9 added :shell command 2016-06-17 15:03:38 +09:00
Andrey Vlasovskikh
9522a51dc7 Enabling key repeat on Mac OS X doesn't require restart 2016-04-29 21:52:35 +03:00
Andrey Vlasovskikh
0bf561e326 Merge remote-tracking branch 'pbu88/adds_more_folding_commands' 2016-04-29 21:34:19 +03:00
Andrey Vlasovskikh
3fde0fc209 Non-public methods made private 2016-04-29 21:19:17 +03:00
Andrey Vlasovskikh
24bc09796f Fixed NPE 2016-04-29 21:18:28 +03:00
Andrey Vlasovskikh
758bff79d6 Removed unused code 2016-04-29 21:16:05 +03:00
Andrey Vlasovskikh
3b0660799b VIM-843 Don't highlight search results after restart
Added limited support for 'viminfo' option. Only 'h' in 'viminfo' is
taken into account.
2016-04-29 21:15:01 +03:00
Andrey Vlasovskikh
6880afa73c VIM-139 Focus on current search and use modal confirmation for ':s///gc' 2016-04-29 01:33:28 +03:00
Andrey Vlasovskikh
8ee49edef0 VIM-287 Fixed insert new line before and after folds 2016-04-28 20:13:08 +03:00
Andrey Vlasovskikh
dd0a7207d5 Removed old block selection API usages to become compatible with IntelliJ branch 146 2016-04-22 03:22:02 +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
745a356c87 Cleanup 2016-02-21 07:08:21 +03:00
Andrey Vlasovskikh
b16a4a1343 Handle <Esc> in modal input better 2016-02-21 07:00:44 +03:00
Andrey Vlasovskikh
36e41555ea Cleaned up ModalEntry 2016-02-21 06:16:11 +03:00
Andrey Vlasovskikh
3f824cf205 Enable SecondaryLoop-based implementation for Java 7+ 2016-02-21 06:07:34 +03:00
dhleong
c61b3c2f29 More closely emulate SecondaryLoop with reflection and a Proxy 2016-02-17 20:46:33 -05:00
dhleong
fd97cfbd15 Add compat layer for JDK6
JDK7 mode works like a dream, but JDK6 still seems to break
after the first invocation.
2016-02-15 09:19:18 -05:00
dhleong
4b4c293008 Refactor modal input for Vim Extensions
Doesn't use dialogs, so should fix VIM-1086
2016-02-14 13:23:51 -05:00
Andrey Vlasovskikh
69a573a279 Handle <Esc> in inputKeyStroke() uniformly as "typed Esc" 2016-02-09 00:40:37 +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
Andrey Vlasovskikh
4f42d4dc4f Merge branch 'vlasovskikh/surround'
# Conflicts:
#	CHANGES.md
#	resources/META-INF/plugin.xml
#	src/com/maddyhome/idea/vim/option/Options.java
2016-02-04 23:08:37 +03:00