Piotr Mikulski
2a6569742d
populate intelij navigation history together with ideavim jumplist
2020-02-17 17:55:45 -08:00
John Weigel
3d7d75bae4
Merge remote-tracking branch 'upstream/master'
2020-02-16 21:11:02 -06:00
John Weigel
6da4d0ce5e
Rework buffer list to more closely mimic vim.
2020-02-16 20:40:17 -06:00
Alex Plate
c873081dc3
Merge pull request #133 from igrekster/master
...
Add argtextobj.vim plugin emulation
2020-02-14 12:30:13 +03:00
Alex Plate
eb01b25f35
Fix some cases by disabling [, { and < support (what is not supported in the original plugin)
2020-02-14 12:23:32 +03:00
Alex Plate
c0c9cfaf86
Get rid of several getText
methods
2020-02-14 10:54:22 +03:00
Alex Plate
304f860eb2
Use java 8 JetBrains annotations
2020-02-14 10:32:18 +03:00
Matt Ellis
14c8b6a248
Fix nullability compile error on 2019.2
2020-02-11 10:29:02 +00:00
Matt Ellis
9b71215cde
Merge branch 'master' into feature/showcmd
2020-02-11 00:24:29 +00:00
Matt Ellis
4f43bcffb9
Replace SelectRegisterAction with direct parsing
...
It's not a command, but part of a command
2020-02-11 00:08:08 +00:00
Matt Ellis
29e4dc5fb5
Show digraph entry in showcmd
2020-02-10 23:38:02 +00:00
Matt Ellis
0dc95cb13c
[VIM-434] Display showcmd in status bar
...
IdeaVim has showcmd enabled by default. Vim has it enabled by default, but disabled for Unix, with concerns about slow terminals. It is enabled by defaults.vim
2020-02-10 11:35:52 +00:00
igrekster
5ee0a93675
Add argtextobj.vim plugin emulation
2020-02-09 11:57:54 +11:00
Alex Plate
767b3c4a39
Add some scheduled for removal annotations
2020-02-08 20:57:44 +03:00
Alex Plate
bb948a463c
Add option to make status bar icon gray
2020-02-08 20:56:13 +03:00
Alex Plate
e4e9a03d0a
Add information about why EPs are used to register actions and ex handlers.
2020-02-08 18:14:04 +03:00
Alex Plate
50ba386f59
Write tests for dynamic extensions
2020-02-08 18:07:20 +03:00
Alex Plate
bcc9b0a7b1
Remove plugin owner after extension removal
2020-02-08 15:38:54 +03:00
Alex Plate
2c8f4940b9
Support EasyMotion extension
2020-02-08 15:25:24 +03:00
Alex Plate
41876cf8fd
Make vimExtension dynamic
2020-02-08 14:56:39 +03:00
Alex Plate
f6fd0b52f0
Rename RequiredShortcutOwner to MappingOwner
2020-02-08 14:36:35 +03:00
Alex Plate
843faa7cc6
Make plugins disposable
2020-02-08 14:36:01 +03:00
Alexey Gerasimov
a8af2c3242
Fix Set creation
2020-02-07 22:24:46 +05:00
Alexey Gerasimov
e5bfad974e
Copyright and comment
2020-02-07 21:50:06 +05:00
Alexey Gerasimov
50c2d04503
Migrate to new checkInString
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
480de62686
Improve existing checkInString
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
955b501058
Make Direction enum public
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
d985527624
Rewrite checkInString in Kotlin
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
afbe7f0e69
Add findPositionOfFirstCharacter function
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
94e65ddce6
Use isQuoteWithoutEscape when findCharacterPosition to detect escaped char
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
cb9f144255
isQuoteWithoutEscape small improvement
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
ac84624faa
Use Direction enum instead of int
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
30097fbae6
Assume that caret is in string/char only if there is closing char
2020-02-07 19:48:40 +05:00
Alex Plate
c295dd5c62
Use special class for storing requiredShortcuts
2020-02-07 16:07:14 +03:00
Alex Plate
373fef2824
Refactor MappingInfo
2020-02-07 12:42:36 +03:00
Alex Plate
cfc255bf2b
Rename .java to .kt
2020-02-07 12:41:57 +03:00
Alex Plate
ea7e58535b
Fix tests
2020-02-07 12:41:47 +03:00
Alex Plate
0b67dd1d05
Merge pull request #218 from citizenmatt/feature/registers
...
Macros record input keystrokes, not mapped keystrokes
This PR fixes VIM-1835 by recording input keystrokes for macros instead of the mapped keystrokes.
This PR is also required as a stepping stone for showcmd support (VIM-434), as both issues require refactoring KeyHandler#handleKey, and I thought it best to separate the issues.
A few other things were fixed as part of this PR:
VIM-1899 - support an argument to the :registers command
VIM-1900 - improve output of :registers, :marks, :jumps and :ascii
2020-02-04 18:46:15 +03:00
Alex Plate
1519faef81
Fix compatibility with the IdeaVim-EasyMotion
2020-02-04 11:13:38 +03:00
Matt Ellis
9fad4a74ed
Remove keys from Command
...
Also refactors PutVisualTextAction
2020-02-04 00:36:59 +00:00
Matt Ellis
3eb46114f8
Remove Shortcut class
2020-02-03 23:35:04 +00:00
Matt Ellis
6a5fd30531
Remove unnecessary empty shortcut registration
2020-02-03 23:31:18 +00:00
Matt Ellis
96e83150e5
Ensure :jumps formats non-printable characters correctly
...
Also ensures long output lines are truncated
2020-02-03 22:50:39 +00:00
Matt Ellis
b2b65c65b9
Ensure :ascii formats non-printable characters correctly
2020-02-03 22:50:38 +00:00
Matt Ellis
5b028b4fa3
Ensure :marks formats non-printable characters correctly
...
Also adds a bunch of tests, and fixes offset for ^ and ] registers
2020-02-03 22:50:38 +00:00
Matt Ellis
8f4e1b3409
[VIM-1900] Ensure :reg formats non-printable characters correctly
2020-02-03 22:50:38 +00:00
John Weigel
ff209d0120
Merge remote-tracking branch 'origin/master'
2020-02-01 22:38:18 -06:00
John Weigel
ea2fe618b5
Add support for buffer list (buffers, files, ls).
2020-02-01 22:33:12 -06:00
Matt Ellis
3403cdf84b
[VIM-1835] Macros record actual keystrokes not mapped
2020-02-01 11:36:40 +00:00
Alex Plate
4f9a6f3a7b
Make vimExCommand EP dynamic
2020-01-31 19:14:11 +03:00
Alex Plate
c8d6d233e5
Revert [Make vimExCommand EP dynamic]
2020-01-31 18:15:55 +03:00
Alex Plate
0cfb65a19a
Make vimExCommand EP dynamic
2020-01-31 17:59:07 +03:00
Alex Plate
384d917021
Make vimAction EP dynamic
2020-01-31 12:05:46 +03:00
Alex Plate
f1c8c67789
Use enumMap to store key roots
2020-01-31 10:17:56 +03:00
Alex Plate
75e8f4ec6d
Deny vimAction extension point contributions from other plugins
2020-01-30 21:23:23 +03:00
Matt Ellis
d1d0323112
[VIM-1899] Add argument to :registers command
...
Also introduce testable clipboard handling
2020-01-27 10:47:37 +00:00
Alex Plate
ab31dae582
Add todo for VimLocalConfig
2020-01-27 12:25:45 +03:00
Alex Plate
64f176cedb
Control dynamic loading of plugin via the application component
2020-01-27 11:45:26 +03:00
Alex Plate
0d190e4a63
Update copyright
2020-01-27 11:35:00 +03:00
Alex Plate
13cdb7cc35
Merge pull request #215 from citizenmatt/refactor/command-state
...
Refactor key handler state
2020-01-27 11:34:48 +03:00
Alex Plate
80074177fc
Make ascii doc a bit clearer
2020-01-27 11:11:05 +03:00
Alex Plate
b2267c4b6c
Add information about non-released actions
2020-01-24 13:41:47 +03:00
Alex Plate
1b7c3f0da3
Merge pull request #214 from sumoooru2/master
...
Implement c_CTRL-N/P
2020-01-22 10:56:37 +03:00
Alex Plate
50c04ce71c
Change LookupKeys implementation
2020-01-20 15:29:40 +03:00
Alex Plate
bc6ff6bc8e
Convert characterHelper to kt
2020-01-19 17:55:15 +03:00
Alex Plate
93bcf2a7e8
Rename .java to .kt
2020-01-19 17:55:14 +03:00
Alex Plate
c3b503adff
Set up a mechanism to define the KeyStrokes that should work with active lookup
2020-01-19 17:34:12 +03:00
Alex Plate
ecdcbdda10
Put all range files into the ranges directory
2020-01-16 15:13:56 +03:00
Alex Plate
b97c9a5ed0
Rename .java to .kt
2020-01-16 15:13:55 +03:00
Alex Plate
84a6843a7b
Convert ExOutputModel to kt
2020-01-16 12:26:39 +03:00
Alex Plate
17eed7467c
Rename .java to .kt
2020-01-16 12:26:39 +03:00
Alex Plate
310ffc849c
Convert ExCommand to kt
2020-01-16 12:23:43 +03:00
Alex Plate
3e6756160a
Rename .java to .kt
2020-01-16 12:23:43 +03:00
Alex Plate
563e809a2d
Put all exceptions to single kt file
2020-01-16 12:18:20 +03:00
Alex Plate
86ec3f3bcd
Rename .java to .kt
2020-01-16 12:17:54 +03:00
Matt Ellis
7b225cb824
Remove CHAR_OR_DIGRAPH state
2020-01-07 20:14:56 +00:00
Matt Ellis
562e0b06df
Refactor expected argument type
2020-01-07 19:54:20 +00:00
Matt Ellis
51ce064507
Simplify and document handling of EX_STRING
2020-01-07 19:09:58 +00:00
Matt Ellis
ebaeff9b4d
Merge branch 'master' into refactor/command-state
2019-12-30 16:31:24 +00:00
Matt Ellis
8889e799ca
Refactor setting command argument
2019-12-30 16:26:32 +00:00
Matt Ellis
668705e475
Refactor handling of duplicate operator chars
2019-12-30 16:08:04 +00:00
Matt Ellis
e428e909bf
Simplify handling of count editing characters
2019-12-30 16:08:00 +00:00
Matt Ellis
d755c751c2
Move fix up of command/motion count
2019-12-30 15:36:52 +00:00
Matt Ellis
312c547412
Rearrange methods
2019-12-30 15:30:33 +00:00
Matt Ellis
48d30f2a3c
Extract CommandBuilder
2019-12-30 15:28:15 +00:00
Matt Ellis
d8ed30df14
Encapsulate command node state
2019-12-27 18:09:50 +00:00
Matt Ellis
50176cb267
Move mapping mode to mapping state
2019-12-27 16:19:57 +00:00
Matt Ellis
5898d21857
Remove unnecessary annotations
2019-12-27 12:44:13 +00:00
Matt Ellis
e3839bc0b2
Remove unused command flags override
2019-12-27 12:42:00 +00:00
Matt Ellis
f97555d4a8
Rename executing command
2019-12-27 12:34:13 +00:00
Matt Ellis
79bdca9769
Move command stack to per-editor state
2019-12-27 12:26:10 +00:00
sumoooru2
138c2956ac
Implement c_CTRL-N/P
2019-12-27 19:37:01 +09:00
Matt Ellis
ced457dd94
Move command state to per editor state
2019-12-27 10:33:22 +00:00
Matt Ellis
784fc6c6fa
Rename mode state class and make immutable
2019-12-27 10:10:39 +00:00
Alex Plate
b4e0ec282f
Convert vim surround plugin to kt
2019-12-26 16:45:42 +03:00
Alex Plate
cbf7dfabcb
Rename .java to .kt
2019-12-26 16:45:42 +03:00
Alex Plate
69a273982f
Fix 183 capability
2019-12-24 10:34:57 +03:00
Matt Ellis
f817e6cb7f
Extract mapping state
2019-12-23 16:49:27 +00:00
Alex Plate
eef1b25e9f
Convert common package to kt
2019-12-23 17:20:15 +03:00
Alex Plate
622de851fe
Rename .java to .kt
2019-12-23 17:20:15 +03:00
Alex Plate
8cecb61d28
Convert selection type to kt
2019-12-23 16:21:39 +03:00
Alex Plate
77d8d27dfa
Rename .java to .kt
2019-12-23 16:21:39 +03:00
Alex Plate
340f259b17
[VIM-1884] Add CTRL-J to the list of keys working with lookup
2019-12-23 15:54:52 +03:00
Alex Plate
5cf68a7f06
[VIM-1878] Update submode in case of active template
2019-12-23 12:54:57 +03:00
Matt Ellis
6a622565ca
Move mapping availability check
2019-12-19 17:00:38 +00:00
Alex Plate
0ae5abcd0c
[VIM-1874] Add possibility to execute option listener after adding
2019-12-19 18:54:51 +03:00
Alex Plate
b6cecb2125
Refactor options change listener
2019-12-19 18:54:50 +03:00
Alex Plate
3aa3a9c9a8
Get rid of unused name sorter
2019-12-19 18:13:51 +03:00
Alex Plate
2c11ed43e4
[VIM-1875] Fix isk loading on startup
2019-12-19 17:12:29 +03:00
Matt Ellis
23126aeb6d
Extract abandoned mapping sequence handling
2019-12-19 11:49:53 +00:00
Matt Ellis
61fd67472b
Extract completed mapping sequence handling
2019-12-19 11:39:34 +00:00
Matt Ellis
105c073e1f
Extract unfinished mapping sequence handling
2019-12-19 01:11:24 +00:00
Rafał Hajdacki
b695e3c646
Fix usage of invalid path separator
2019-12-18 14:09:40 +01:00
Matt Ellis
200f3484b6
Move current arg type state to per-editor
2019-12-10 20:20:13 +00:00
Matt Ellis
6a40eb48fe
Remove forward search state
2019-12-10 20:14:32 +00:00
Matt Ellis
fb3e9ce9f3
Move captured keys to per-editor state
2019-12-10 20:11:08 +00:00
Matt Ellis
91865460a2
Move DigraphResult to top level class
2019-12-10 20:05:12 +00:00
Matt Ellis
644afe541e
Move <BS> digraph state to DigraphSequence
2019-12-10 20:01:42 +00:00
Matt Ellis
232303f06a
Refactor to maintain digraph state at all times
...
Also allows <C-K> and <C-V>/<C-Q> to be remapped
2019-12-10 19:59:11 +00:00
Matt Ellis
280845610b
Move digraph sequence state to per-editor
2019-12-10 19:32:25 +00:00
Matt Ellis
6108c9d6d2
[VIM-1284] Allow mapping numbers
...
Includes special case for 0 while entering counts. See :help :map-modes.
Also fixes issues when both operator and motion have a count - value should be multiplied, not appended (e.g. 3d2w is the same as 6dw, no 32dw!). See :help operator
2019-12-10 19:31:38 +00:00
Matt Ellis
ce04e995ee
Move command count state per editor
2019-12-10 19:31:23 +00:00
Alex Plate
917b77c8ad
Remove unused ifs
2019-12-10 10:18:54 +03:00
Alex Plate
a2cd8ec19c
Add left/right to the list of keys working with lookup
2019-12-10 10:12:51 +03:00
Alex Plate
6300d39065
Another approach to handle with warnings
2019-12-06 18:52:15 +03:00
Alex Plate
2457079724
Fix some code smells
2019-12-06 18:31:06 +03:00
Alex Plate
ba84e723e8
Remove unused option type
2019-12-06 18:23:27 +03:00
Alex Plate
bf75e75d6f
ListOption can't return null anymore
2019-12-06 18:17:42 +03:00
Alex Plate
c3183a8bd7
Replace string buffer with string builder
2019-12-06 18:14:59 +03:00
Alex Plate
7c162fc7ed
Fix some possible exceptions
2019-12-06 18:14:35 +03:00
Alex Plate
529c5ac8d7
Fix isPuncf method
2019-12-06 18:11:42 +03:00
Alex Plate
60e619e45e
ExPanel doesn't return null
2019-12-06 17:55:59 +03:00
Alex Plate
a89bdcdd3b
Fix exception with d:
2019-12-06 16:36:28 +03:00
Alex Plate
0b517671cb
Make some argument collections immutable
2019-12-05 17:27:14 +03:00
Alex Plate
a15dc3ed60
Suppress some inspections
2019-12-05 12:58:32 +03:00
Alex Plate
b7d60f4cb5
Fix tests
2019-12-04 16:19:16 +03:00
Alex Plate
82a331a940
VIM-1362 Search with confirm scroll down far enough
2019-12-04 16:05:11 +03:00
Alex Plate
c31e688f11
Suppress deprecation
2019-12-04 15:49:47 +03:00
Alex Plate
0c887027d3
Suppress some deprecations
2019-12-04 12:44:18 +03:00
Alex Plate
7c7df85d1a
Perform partial reset after autocomplete
2019-12-03 13:22:09 +03:00
Alex Plate
a7c025d927
Add Enter to the list of keys that are not processed with active lookup
2019-12-03 12:50:33 +03:00
Alex Plate
dc713c477b
Disable down/up keys for lookup
2019-12-02 15:57:08 +03:00
Alex Plate
7e71edaee2
Suppress wrong error
2019-12-02 15:49:20 +03:00
Alex Plate
3f8925cbb0
VIM-1853 Fix marks for disposable projects
2019-12-02 15:47:02 +03:00
Alex Plate
5f9e24b314
VIM-1855 Fix initialization error
2019-12-02 10:56:08 +03:00
Alex Plate
dcd799ad85
Comment deprecated method
2019-12-02 10:48:30 +03:00
Alex Plate
ff0d7a4345
Update initialization logic
2019-12-02 10:47:33 +03:00
Alex Plate
d68bad313e
VIM-1854 Fix i_Ctrl-T
...
Refactor shift left/right classes as well
2019-11-29 12:33:08 +03:00
Alex Plate
bd09917396
Remove async startup and different small optimizations
2019-11-29 11:46:34 +03:00
Alex Plate
17a87f80e3
All keys are allowed during the lookup except TAB
2019-11-28 19:38:46 +03:00
Alex Plate
59f4dc8c78
Surround and Commentary extensions can be repeated with a dot command
...
VIM-1118
2019-11-28 18:58:58 +03:00
Alex Plate
572a96328a
CTRL-A accepts all sizes of number
...
VIM-1424
2019-11-28 18:08:02 +03:00
Alex Plate
a7ac3bec7f
Reset keyHandler state before the command execution
2019-11-28 15:56:06 +03:00
Alex Plate
3e78f50a76
Create commandState
helper function
2019-11-28 14:42:57 +03:00
Alex Plate
a4843e57cb
Remove REPEAT mode
...
Replace it with `isDotRepeatInProgress()` method
2019-11-28 13:31:57 +03:00
Alex Plate
d6d90dda58
Rename FLAG_NO_REPEAT to FLAG_NO_REPEAT_INSERT
2019-11-28 13:02:49 +03:00
Alex Plate
c92c5e234c
Convert some classes to kt
2019-11-28 12:13:29 +03:00
Alex Plate
987f06d518
Rename .java to .kt
2019-11-28 12:13:29 +03:00
Alex Plate
eaf7476785
Refactor repeat action
2019-11-28 12:13:29 +03:00
Alex Plate
5c559f921d
[VIM-1847] Add option to remove the status bar icon
2019-11-27 11:00:42 +03:00
Alex Plate
77f6b3fcb8
Show the plugin version for internal mode
2019-11-26 15:55:33 +03:00
Alex Plate
f56ed7fd50
Update status bar popup location
2019-11-26 13:22:20 +03:00
Alex Plate
a470b579a9
Fix exception
2019-11-26 11:55:54 +03:00
Alex Plate
a2eb7d44c0
Fix turn off and on plugin
2019-11-26 11:29:32 +03:00
Alex Plate
dfc83a7aea
Update ktdocs
2019-11-25 19:38:04 +03:00
Alex Plate
71686e45e3
[EA-211536] Fix exception by aliasing
2019-11-25 19:31:17 +03:00
Alex Plate
d836320b31
[VIM-1845] Show action group popups
2019-11-25 18:50:00 +03:00
Alex Plate
19e7c058c3
Convert VimShortcutKeyAction to kt
2019-11-25 14:16:58 +03:00
Alex Plate
f1ae3607e4
Rename .java to .kt
2019-11-25 14:16:57 +03:00
Alex Plate
d03bfaeb53
Convert action package to kt
2019-11-25 14:05:23 +03:00
Alex Plate
33f363cb31
Rename .java to .kt
2019-11-25 14:05:23 +03:00
Alex Plate
cdb87b6a70
Convert file package to kt
2019-11-25 13:59:27 +03:00
Alex Plate
b5497d83a9
Rename .java to .kt
2019-11-25 13:59:26 +03:00
Alex Plate
802b7c33b6
Convert copy package to kt
2019-11-25 13:36:00 +03:00
Alex Plate
bb4f81fb84
Rename .java to .kt
2019-11-25 13:35:59 +03:00
Alex Plate
998073ac7f
Convert shift package to kt
2019-11-25 12:13:55 +03:00
Alex Plate
93c7a5bdd2
Rename .java to .kt
2019-11-25 12:13:55 +03:00
Alex Plate
3fb2ce47e9
Convert insert package to kt
2019-11-25 12:04:57 +03:00
Alex Plate
61a8217d83
Rename .java to .kt
2019-11-25 12:04:56 +03:00
Alex Plate
ad5e4341fa
Convert delete package to kt
2019-11-25 11:57:42 +03:00
Alex Plate
5b192795e6
Rename .java to .kt
2019-11-25 11:57:42 +03:00
Alex Plate
5db9c5d31e
Convert change package to kt
2019-11-25 11:36:29 +03:00
Alex Plate
ff469a386e
Rename .java to .kt
2019-11-25 11:36:29 +03:00
Alex Plate
3a90cf0e7b
Convert number package to kt
2019-11-25 11:31:27 +03:00
Alex Plate
07dbad8c70
Rename .java to .kt
2019-11-25 11:31:27 +03:00
Alex Plate
390d92b16f
Fix bindings for active lookup
...
VIM-1325
2019-11-22 19:37:52 +03:00
Alex Plate
d45d56f330
Find action by id without all actions initiation
2019-11-22 17:35:20 +03:00
Alex Plate
2e7cde3ca5
Replace TODO with TO BE IMPLEMENTED in info file
2019-11-22 16:55:49 +03:00
Alex Plate
0594ea0b98
Convert macro package to kt
2019-11-22 16:26:05 +03:00
Alex Plate
37d09781b4
Rename .java to .kt
2019-11-22 16:25:43 +03:00
Alex Plate
b0f3a0ea30
Convert motion package to kt
2019-11-22 15:54:57 +03:00
Alex Plate
8282abf264
Rename .java to .kt
2019-11-22 15:53:22 +03:00
Alex Plate
e863ffd949
Update getKeyStroke for Neo layouts
...
VIM-987
2019-11-21 17:06:00 +03:00
Alex Plate
d3d35bbea1
Fix incapability with <193
2019-11-20 18:12:20 +03:00
Alex Plate
8eff6d80a2
Fix after update
2019-11-20 18:09:11 +03:00
Alex Plate
77c8947ccd
Fix after update
2019-11-20 18:00:54 +03:00
Alex Plate
48556f6917
Update first plugin initialization
2019-11-20 17:59:08 +03:00
Alex Plate
2e8dc4234f
Do not connect to the EditorAcgtionManager before the first editor is created
2019-11-20 17:59:07 +03:00
Alex Plate
a6a60b6e71
Do not start project manager
2019-11-20 17:59:05 +03:00
Alex Plate
eba9eaf37a
Faster command parser
2019-11-20 17:59:04 +03:00
Alex Plate
ae31b1c23d
Faster keys parsing
2019-11-20 17:59:02 +03:00
Alex Plate
535a0532df
Use ArrayList implementation for KeyMapping
2019-11-20 17:59:01 +03:00
Alex Plate
0579d242f6
Lazy loading of KeywordOption
2019-11-20 17:58:59 +03:00
Alex Plate
b4910ed8f4
Refactor key parsing
2019-11-20 17:58:58 +03:00
Alex Plate
2bb1399ae7
Remove unnecessary reset
2019-11-20 17:58:56 +03:00
Alex Plate
062ada96ff
Do not initialize some services on first startup
2019-11-20 17:58:56 +03:00
Alex Plate
bb94238e9c
Remove invertMap function
2019-11-20 17:58:55 +03:00
Alex Plate
43a40c1f6b
Update keyparser to accept « brackets
2019-11-20 17:58:53 +03:00
Alex Plate
639866a9e1
Remove unused name property
2019-11-20 17:58:53 +03:00
Alex Plate
05bbe6b799
Rename name to names
2019-11-20 17:58:51 +03:00
Alex Plate
e19b1c8bf0
Create interface for complicated commands
2019-11-20 17:58:49 +03:00
Alex Plate
0648d621b5
Move handler names to plugin.xml
2019-11-20 17:58:47 +03:00
Alex Plate
93c0de9ebb
Create bean class for ex commandsï¿¿
2019-11-20 17:58:45 +03:00
Alex Plate
1af7f9388d
Create a ktdoc for ActionBeanClass
2019-11-20 17:58:42 +03:00
Alex Plate
76f0eaebce
Remove keyStrokesSet field
2019-11-20 17:58:41 +03:00
Alex Plate
ae71957236
Remove usages of getKeyStrokesSet
2019-11-20 17:58:40 +03:00
Alex Plate
5004f0280e
Refactor duplicable commands
2019-11-20 17:58:27 +03:00
Alex Plate
8a63fa42ae
Reformat actions source code
2019-11-20 17:36:49 +03:00
Alex Plate
05ecb92a88
Use plugin.xml to define mappings for actions
2019-11-20 17:36:10 +03:00
Alex Plate
d05cc3cd35
Merge pull request #210 from igrekster/format-motion
...
Implement `gq<motion>` code formatting command for motions
2019-11-20 15:51:39 +03:00
Alex Plate
96dff832ba
Merge pull request #209 from igrekster/multicaret-ignorecase-fix
...
Fix multiple cursors selection getting stuck with ignorecase
2019-11-20 15:47:23 +03:00
Alex Plate
e43339613c
Add Rafał Hajdacki to contributors list
2019-11-20 15:32:23 +03:00
Rafał Hajdacki
28d9bd0c73
Read ideavimrc from XDG config home directory
2019-11-19 22:20:52 +01:00
Alex Plate
8e12c9bef0
Fix backward motion for ex commands
2019-11-19 14:31:30 +03:00
Alex Plate
46cf112378
Revert user statistic
2019-11-14 13:12:50 +03:00
Alex Plate
a6ea89162a
Change collector option
2019-11-08 14:50:02 +03:00
Alex Plate
1039cf661d
Fix capability with 183
2019-11-08 14:41:18 +03:00
Alex Plate
eaf9f0bbfa
Fix compatibility with older IDEA versions
2019-11-07 18:24:34 +03:00
Alex Plate
31e1edcc72
Add userstatistic info
2019-11-07 16:26:22 +03:00
Alex Plate
7d9d8d4a02
Fix execution of actions in visual mode with incsearch enabled
2019-11-07 11:14:16 +03:00
Alex Plate
71cb43e751
Remove garbage
2019-11-05 17:40:15 +03:00
Alex Plate
76634e3eed
Fix "wrap with if"
2019-11-05 15:53:33 +03:00
igrekster
21536fb3ef
Implement gq<motion>
code formatting command for motions
2019-11-02 17:17:09 +11:00
igrekster
7c0ee2429d
Allow duplicable commands with g
prefix key
...
Change the implementation for `dd`, `yy`, etc. to support commands with
`g` prefix key - (`gqq`, `guu`, `g~~`).
2019-11-02 17:17:09 +11:00
Alex Plate
9d6f43cfeb
Fix problem with lookup selection
2019-11-01 13:55:32 +03:00
Alex Plate
316cd2c02c
Rename refactoring to ideaselection
2019-10-31 13:05:22 +03:00
Alex Plate
bfdf54db67
Add tests for idearefactormode option
2019-10-30 17:46:25 +03:00
Alex Plate
4ca9e74249
Refactor controlNonVimSelection
2019-10-30 16:43:54 +03:00
Alex Plate
33caeeaf1d
Fix log
2019-10-30 16:02:12 +03:00
Alex Plate
53a8c3ecc8
Move all mode exit methods to the same place
2019-10-30 16:00:03 +03:00
igrekster
0ddb7f971d
Fix multiple cursors selection getting stuck with ignorecase
...
With `ignorecase` enabled, select next (`<A-n>`) would get stuck on the
second occurrence even though there are more occurrences to select. This
was happening because part of logic was still doing case sensitive
comparison against the current pattern. The fix is to use case
insensitive comparator everywhere the pattern is used, if `ignorecase`
option is set.
2019-10-30 23:59:32 +11:00
Alex Plate
fabe066f94
Move selection control methods to the separate file
2019-10-30 14:45:40 +03:00
Alex Plate
5672bc0fb2
Rename function
2019-10-30 14:29:51 +03:00
Alex Plate
c77f43e7c7
Initial idearefactormode support
2019-10-30 13:00:04 +03:00
Alex Plate
d47ad34909
Fix removed vimstate saving
2019-10-30 12:38:06 +03:00
Alex Plate
96f731e9c9
Refactor MotionUp/Down actions
2019-10-29 15:37:48 +03:00
Alex Plate
1b9376a9f5
Rename motion up/down actions
2019-10-29 15:31:54 +03:00
Alex Plate
1425ee0048
Ctrl-N and Ctrl-P actions for lookup in normal mode
2019-10-29 15:28:54 +03:00
Alex Plate
3a014b2a13
Convert VimPluginToggleAction to kotlin
2019-10-29 14:39:55 +03:00
Alex Plate
38c4e6bebc
Rename .java to .kt
2019-10-29 14:39:05 +03:00
Alex Plate
171404bf43
Change the superclass of VimPluginToggleAction
2019-10-29 14:33:14 +03:00
Alex Plate
73b1adce1b
Make common action for enabling/disabling IdeaVim
2019-10-28 18:42:37 +03:00
Alex Plate
fee8009f38
Make vim actions popup as a separate action
2019-10-28 14:59:35 +03:00
Alex Plate
8d698aeacd
Update the Join EAP dialog
2019-10-28 13:50:21 +03:00
Alex Plate
fbd588444f
Hide some icon actions to sublist
2019-10-26 16:06:21 +03:00
Alex Plate
5735769ee7
null save marks restoring
2019-10-25 20:19:40 +03:00
Alex Plate
150f9190d5
Add customisation for surround with for
2019-10-25 19:58:00 +03:00
Alex Plate
6a1e8a0c22
Fix template with multiple variables
2019-10-25 17:14:23 +03:00
Alex Plate
66fca4a921
[VIM-1819] Fix execution of some rider actions
2019-10-25 15:26:33 +03:00
Alex Plate
9a2accc74b
Use the correct action for next variable
2019-10-25 14:33:52 +03:00
Alex Plate
5584b5ec3a
Refactor selection correction during the template
2019-10-24 16:17:34 +03:00
Alex Plate
3b4121f59a
Reformat code
2019-10-24 16:15:11 +03:00
Alex Plate
c9bb160291
Add savemodefor option
2019-10-23 13:17:02 +03:00
Alex Plate
586979644c
Add inNormalMode helper function
2019-10-23 13:15:09 +03:00
Alex Plate
0d376eaa1d
Update icon list labels
2019-10-22 12:44:25 +03:00
Alex Plate
086c3d1a24
Update the join EAP dialog
2019-10-22 12:33:45 +03:00
Alex Plate
91e75561a3
Remove the default shortcut
2019-10-21 17:35:55 +03:00
Alex Plate
979bf26441
Change the implementation of system marks
2019-10-21 16:58:22 +03:00
Alex Plate
49844ddd9b
Refactor fileLocation classes
2019-10-21 15:30:46 +03:00
Alex Plate
d095ebb2f3
Rename .java to .kt
2019-10-21 15:07:14 +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
ee9e3a6673
Covert DocumentManager.kt to kotlin
2019-10-18 10:24:48 +03:00
Alex Plate
81a6bd528d
WIP: Renaming file 'DocumentManager' with Kotlin extension
2019-10-18 10:09:20 +03:00
Alex Plate
9bef55c63e
Correct selection processing
...
The last character in the line is not selected if the selection was started from the middle of this character and has a negative direction
2019-10-17 19:17:38 +03:00
Alex Plate
9b8686c25f
Reset caret on escape
2019-10-17 17:43:37 +03:00
Alex Plate
7130760114
Fix vertical caret movements with inlays
2019-10-17 17:34:10 +03:00
Alex Plate
2258ffa5eb
Fix incompatibilities with older version of IJ
2019-10-17 15:38:14 +03:00
Alex Plate
20b8e8db8b
Add icon to status bar
2019-10-17 15:20:01 +03:00
Alex Plate
0738d965fd
Add ideavim icon for actions
2019-10-16 15:05:45 +03:00
Alex Plate
a3a421410f
[VIM-1749] Tag surround is finished on >
2019-10-15 19:52:48 +03:00
Alex Plate
03c38e3454
[VIM-1804] Correct disabling and enabling IdeaVim
2019-10-15 18:14:13 +03:00
Alex Plate
be7d632cba
Disable IdeaVim while AceJump is active.
...
https://github.com/acejump/AceJump/issues/266
2019-10-14 17:05:18 +03:00
Alex Plate
8c0a85abf4
Vim script supports evaluating of integers
2019-10-14 12:44:08 +03:00
Alex Plate
497e8c06f1
Create getter for last direction
2019-10-10 19:35:04 +03:00
Alex Plate
c1bf84605c
Make findAll function public
2019-10-10 18:44:37 +03:00
Alex Plate
e362f12394
Add comment for toRegex function
2019-10-10 16:29:51 +03:00
Alex Plate
02d201a2f1
Parse the scope of let expression
2019-10-10 16:28:27 +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
a255597bc0
Fix exception
2019-10-08 10:37:11 +03:00
Alex Plate
29858e8b10
Do not handle plugin incomplete mappings
2019-10-08 10:31:47 +03:00
Alex Plate
972cfb265b
Change MapHandler formatting
2019-10-04 18:46:30 +03:00
Alex Plate
5e8a3afe61
Provide correct mapping names
...
vmap - mapping for visual and select mode
xmap - mapping for visual mode
2019-10-04 18:45:46 +03:00
Alex Plate
700decb2e0
Update mappings handler for properly handler intersecting mappings.
2019-10-02 18:44:43 +03:00
Alex Plate
8368055397
Registrar should be written in java due to capability problems
2019-10-01 20:33:00 +03:00
Alex Plate
0d0f1f1c0c
External plugins can now contribute to vimExtension
2019-10-01 19:59:41 +03:00
Alex Plate
db68ae5cea
Add tests for extension in op mode
2019-10-01 10:15:44 +03:00
Alex Plate
0fd7c4aa4f
Clean up
2019-09-30 19:46:40 +03:00
Alex Plate
8592e6ef60
Plugins can act as an operator
2019-09-30 19:46:03 +03:00
Alex Plate
e9fb02220a
Update api of ListenerSuppressor
2019-09-30 19:46:03 +03:00
Alex Plate
aa54a0cd98
Execute mapping in sync way
2019-09-30 19:46:02 +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
5bf2bc4a7b
Reformat Command
2019-09-27 14:56:24 +03:00
Alex Plate
70fd7ef89d
operator-W doesn't affect the next line
2019-09-26 15:31:05 +03:00
Alex Plate
c236ddd967
Add docs to Nodes
2019-09-26 11:25:49 +03:00
Alex Plate
b551518911
Add additional checks for command consistency
2019-09-25 20:09:21 +03:00
Alex Plate
1be49b06f3
Fix processing of / and ? commands
2019-09-25 20:01:20 +03:00
Alex Plate
200a9c6318
Update key handling process
2019-09-25 20:01:19 +03:00
Alex Plate
9f10106d75
Use only one handler to process @@ and @: commands
2019-09-25 20:00:23 +03:00
Alex Plate
6d4ff752a0
Double commands are processed in original way
2019-09-25 16:22:54 +03:00
Alex Plate
29ecae66a9
Make baseExecute as final method
2019-09-25 13:20:16 +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
8d83b3b1e7
Remove parameter from getMotionRange
2019-09-24 17:13:20 +03:00
Alex Plate
155570b6bf
Remove unused flag
2019-09-24 16:44:12 +03:00
Alex Plate
831dc35935
Update processing of text objects
2019-09-24 16:42:46 +03:00
Alex Plate
b641f1b67c
Motion command should explicit define inclusive / exclusive
2019-09-24 15:24:39 +03:00
Alex Plate
3c4906b8ac
Get rid of useless FLAG_MOT_EXCLUSIVE
2019-09-23 17:31:17 +03:00
Alex Plate
a575bc92cc
Correctly process d_ command
2019-09-18 22:40:29 +03:00
Alex Plate
7794e9ccd2
Fix undo mapping
2019-09-18 21:28:28 +03:00
Alex Plate
4f5301a7e0
Fix mapping for undo action
2019-09-17 18:42:41 +03:00
Alex Plate
6842936a75
Add state for awaiting for digraph (or char) input
2019-09-17 18:42:41 +03:00
Alex Plate
a0bf6599fa
Add comment for command flags option
2019-09-17 18:42:41 +03:00
Alex Plate
c0384949a3
Add javadoc for key mapping
2019-09-17 18:42:41 +03:00
Alex Plate
371f4b128e
Rename EX_ENTRY to CMD_LINE mode
2019-09-17 18:42:41 +03:00
Alex Plate
29fc776293
Remove NONE argument
2019-09-17 18:42:40 +03:00
Alex Plate
bbdf87190c
Extract node argument into the separate variable
2019-09-17 18:42:40 +03:00
Alex Plate
02a448f284
Convert command nodes to kt
2019-09-17 18:42:40 +03:00
Alex Plate
8665878b04
Remove useless FLAG_OP_PEND flag
2019-09-17 18:42:40 +03:00
Alex Plate
c23812941b
Clean up Argument class
2019-09-17 18:42:40 +03:00
Alex Plate
fdac774745
Convert FilterMotionAction to kt
2019-09-17 18:42:40 +03:00
Alex Plate
0a38b65ded
WIP: Renaming file 'FilterMotionAction' with Kotlin extension
2019-09-17 18:42:39 +03:00
Alex Plate
a7f44c8dd1
Revert "Temporally disable multithread startup"
...
This reverts commit bef3b3ba
2019-09-17 18:32:12 +03:00
Alex Plate
bef3b3ba62
Temporally disable multithread startup
2019-09-17 17:49:11 +03:00
Alex Plate
037aee7c59
Make kotlin jvm 1.8 compatible.
2019-09-17 11:07:09 +03:00
Alex Plate
0e3c13099b
Do not use external APP_CONFIG variable
2019-09-17 10:36:18 +03:00
Alex Plate
c736de7875
Deprecate local storage due to bug in storage settings
2019-09-06 18:45:12 +03:00
Alex Plate
42375d143e
[VIM-1772] Fix last character for :y command
2019-09-04 17:30:34 +03:00
Alex Plate
7e6d7aed20
Add some docs to controlNonVimSelection method
2019-09-04 16:07:31 +03:00
Alex Plate
ea68d0c28f
Enter correct caret shape after new mode entering
2019-09-04 16:00:14 +03:00
Alex Plate
9cc82aedf2
Join exit visual functions
2019-09-04 15:13:10 +03:00
Alex Plate
c52abce656
Fix small problem with "wrap with if"
2019-09-04 13:07:22 +03:00
Alex Plate
cf2f223ad4
[VIM-1781] Fix yanking with $ motion
2019-09-04 11:30:24 +03:00
Alex Plate
daae1aec6c
[VIM-1785][VIM-1731] Fix yanking to clipboard
2019-09-03 18:41:38 +03:00
Alex Plate
59bcd24c47
Make actions loading async
2019-09-03 14:07:36 +03:00
Alex Plate
44e224489b
Update action registration
2019-09-03 14:07:35 +03:00
Alex Plate
8134e0223f
Disable async initialization
2019-09-03 14:07:35 +03:00
Alex Plate
482249a05b
Convert ex commands to extension points
2019-09-03 14:07:35 +03:00
Alex Plate
d0998dc093
Do not register sticky balloon
2019-09-03 14:07:35 +03:00
Alex Plate
848bb01c10
Get rid of VimActionBean
2019-09-03 14:07:35 +03:00
Alex Plate
e39eb76aca
Remove id and text from actions
2019-09-03 14:07:35 +03:00
Alex Plate
d6d2a55747
Use handlers directly (without actions)
2019-09-03 14:07:35 +03:00
Alex Plate
355fa1a622
Migrate methods from VimCommandAction to handlers
2019-09-03 14:07:34 +03:00
Alex Plate
fb007b8835
Move action settings to handler
2019-09-03 14:07:34 +03:00
Alex Plate
256f5fcd0e
Handlers do not execute EditorActionHandler anymore
2019-09-03 14:07:34 +03:00
Alex Plate
e698c950a3
VimCommandActionBase doesn't extend EditorAction anymore
2019-09-03 14:07:34 +03:00
Alex Plate
d0b9c3c118
Make action in command not nullable
2019-09-03 14:07:34 +03:00
Alex Plate
24358ca1a9
[A2EP] Add method to find vim action by id
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
6a21c94a0c
[A2EP] Execute actions w/o using executeAction
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
2d39a1e4b8
[A2EP] Move some actions to the level of VimActionBase
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
e97a8da721
[A2EP] Remove action id from command tree
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
665aaa3af9
[A2EP] Create "native actions"
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
17fe1da4ed
[A2EP] Convert actions into extension point
...
A2EP - Process of convertation actions to extenstion points
2019-09-03 14:07:33 +03:00
Alex Plate
cb6c94b4f9
Transform all groups into application services
2019-09-03 14:07:33 +03:00
Alex Plate
6fd6765bee
Initialize IdeaVim components on non-EDT
2019-09-03 14:07:32 +03:00
Matt Ellis
261911f6de
[VIM-1773] Provide fall back error stripe colour
2019-09-02 17:37:44 +01: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
39982b507a
[VIM-1685] Correct shape of caret in case of zero-width selection
2019-08-26 16:52:01 +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
7045ffbdb8
Fix global marks removing
2019-08-26 12:27:23 +03:00
Alex Plate
c886e49682
Add comment for different types of marks
2019-08-26 12:13:35 +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
131387d0ff
Add comment about changes that should be performed on version update
2019-08-23 16:57:20 +03:00
Alex Plate
1c02ad6b4c
Merge pull request #204 from citizenmatt/feature/line-numbers
...
Improve relative line numbers and VCS annotations
2019-08-23 16:12:55 +03:00
Alex Plate
d93890ddcb
Merge pull request #205 from citizenmatt/bug/ex-caret
...
[VIM-1766] Fix ex caret rendering on Linux
2019-08-23 15:14:27 +03:00
sumoooru2
67896b7d3a
Fix jump between files with moveCaretToJump
2019-08-22 16:26:26 +09:00
Alex Plate
62466123ff
Change URLs to https
...
TPV-3480
2019-08-20 13:10:19 +03:00
Matt Ellis
14163a0791
[VIM-1766] Fix ex caret rendering on Linux
2019-08-13 20:28:22 +01:00
Jørgen Granseth
52a8a175a6
Move constants for :delmarks to MarkGroup
...
Reduce, reuse, recycle.
2019-08-12 20:19:14 +02:00
Matt Ellis
0a83b0826a
Use line number converter for relative line numbers
...
Fixes most problems with relative line numbers and VCS annotations. Only downside is that the current line is shown as blank unless :set number is set as well as :set relativenumber. There is also a chance some other plugin could install a different line number converter without us knowing, although there are no known examples of this.
Resolves VIM-1032, fixes VIM-1671, fixes VIM-1762
2019-08-10 14:26:16 +01:00
Matt Ellis
d854cd7024
Improve relative line numbers and VCS annotations
...
Improves TextAnnotationGutterProvider implementation, but still has issues. Relative line numbers can display alongside VCS annotations, but 183 and 191 treats the relative line number provider as a VCS annotation, so the VCS toggle is enabled incorrectly, and toggling incorrectly closes the relative line provider. 192 works much better - VCS annotations ignores the relative line numbers, but disabling relative line numbers also closes VCS annotations because we’re not using a 192 specific API.
Resolves VIM-1032, fixes VIM-1671, fixes VIM-1762
2019-08-09 23:39:02 +01:00
Matt Ellis
7ac8d7a43a
Fix moving caret while confirming replace
2019-08-08 12:13:38 +01:00
Alex Plate
b012618968
Add readonly marker
2019-08-07 17:24:19 +03:00
Alex Plate
fba59ff347
[EA-134791] Fix yank in motion
2019-08-07 17:24:18 +03:00
Matt Ellis
27d2742386
Fix bug with search updates getting stuck off
2019-08-07 09:42:45 +01:00
Matt Ellis
5ef25cfa6f
Keep scroll location when adding incsearch offset
2019-08-06 23:24:39 +01:00
Matt Ellis
17e3dfe2bb
[VIM-1757] Improve handling of search offsets
2019-08-06 22:32:47 +01:00
Alex Plate
307e438a1e
[EA-128752] Fix NPE on isPrimaryEditor
2019-08-06 15:38:33 +03:00
Alex Plate
89489f7c7f
[EA-144484] Fix NPE on panel activation
2019-08-06 15:15:31 +03:00
Alex Plate
923a4706a0
[EA-137898] Fix file is invalid exception
2019-08-06 14:23:03 +03:00
Alex Plate
2594c7179e
[EA-138502] Control-flow exceptions (like ProcessCanceledException) should never be logged
2019-08-06 14:21:33 +03:00
Matt Ellis
a334ff33cd
[VIM-1717] Reset scroll position correctly if no incsearch match
2019-08-06 00:33:58 +01:00
Alex Plate
0e2289caa6
[EA-129083] Fix OOBE for # action
2019-08-05 20:39:07 +03:00
Alex Plate
be26968237
[EA-138309] Fix possible exception
2019-08-05 20:20:44 +03:00
Jørgen Granseth
b0c1ecfdc5
Add access flag
2019-08-05 19:09:59 +02:00
Alex Plate
b4d5dcbf57
Reformat code
2019-08-05 19:06:27 +02: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