filipp
06ef1c1182
VIM-1639 Ctrl-o and Ctrl-i jumping in files of different projects
2023-10-26 10:23:16 +03:00
filipp
a9ba9789fd
Fix(VIM-696): Vim selection issue after undo
2023-10-25 16:55:32 +03:00
filipp
fdd32cb954
Remove deprecated MarkGroup.java
2023-10-25 16:55:32 +03:00
Alex Plate
af7bdb55a1
Fix rider issues with the new handler
2023-10-20 17:42:05 +03:00
Alex Plate
69af9aeff0
Fix(IDEA-300030): Mapping with enter to action may not work
2023-10-20 16:16:28 +03:00
Alex Plate
88f4192d61
Fix tests
2023-10-20 12:32:05 +03:00
Alex Plate
8c06767fdc
Show error instead of warning in case of exception
2023-10-20 11:10:55 +03:00
Matt Ellis
405b9ba7ea
Fix(VIM-2562): Fix hang with multi-width chars in command line
2023-10-11 11:08:08 +03:00
Alex Plate
ab9bd76d34
Update isOctopusEnabled function
2023-10-11 09:38:30 +03:00
Alex Plate
b3ad2fd715
Next handler may be null
2023-10-10 16:01:24 +03:00
Alex Plate
97ca6ce5b8
Dialogs are now closed by esc
2023-10-10 15:33:49 +03:00
Alex Plate
e1abc4374e
Correct the shape of the caret after entering the cell in py notebooks
2023-10-10 13:08:26 +03:00
Alex Plate
9eeeb15c6c
Enable octopus handler by default
2023-10-10 11:39:14 +03:00
Alex Plate
337f5ade59
Get rid of deprecated method
2023-09-14 16:31:26 +03:00
Matt Ellis
c37e2f4176
Update fallback window when all windows close
2023-09-11 11:04:09 +03:00
Matt Ellis
626d59d3fc
Only use fallback for first initialisation
...
Subsequent initialisation will be treated like EDIT
2023-09-11 11:04:09 +03:00
Matt Ellis
ddd058a26f
Fix name of usage statistic
2023-09-11 11:04:09 +03:00
Matt Ellis
aa6f53fa68
Require editor when getting/setting global option
2023-09-11 11:04:09 +03:00
Matt Ellis
1335e9f7f2
Improve detection of editor open scenarios
2023-09-11 11:04:09 +03:00
Matt Ellis
c75599b6a0
Refactor editor options initialisation
2023-09-11 11:04:09 +03:00
Matt Ellis
700198d8bc
Remove test only vimscript execute method
2023-09-11 11:04:09 +03:00
Matt Ellis
3efab5928e
Evaluate ideavimrc in the fallback window context
2023-09-11 11:04:09 +03:00
Matt Ellis
93037b6866
Add fallback window to capture local option state
2023-09-11 11:04:09 +03:00
Matt Ellis
0f19e50c69
Improve hierarchy of option accessors
...
Getting the effective IJ options would allow access to Vim global and IJ global, but not Vim effective. IntelliJ specific options are now a separate hierarchy, so the Vim effective and IJ effective accessors now simply access all Vim or all IJ options.
2023-09-11 11:04:09 +03:00
Matt Ellis
66ea6ad3d4
Rename OptionScope to OptionAccessScope
2023-09-11 11:04:09 +03:00
Alex Plate
5ebe290424
Check if the caret if valid
2023-09-01 15:27:27 +03:00
Alex Plate
4532d68743
Convert change group to kotlin
2023-09-01 14:29:51 +03:00
Alex Plate
1903e18397
Rename .java to .kt
2023-09-01 14:13:57 +03:00
Alex Plate
a705bf7053
Get rid of the exception suppression
...
This suppression existed for a very long time. Now it hid one of the exceptions I expected.
2023-09-01 13:58:11 +03:00
Alex Plate
26e9bf5197
Detect if we run the action in runForEachCaret
scope or not
2023-09-01 13:25:15 +03:00
Alex Plate
e7a8b45c10
[VIM-3051] Refactor the way we store modes in IdeaVim
...
Now we have a single variable with current mode instead of stack of modes.
2023-08-25 11:38:21 +03:00
Alex Plate
2e0ec73d77
Remove some deprecated methods
2023-08-25 11:17:28 +03:00
Alex Plate
5d4996c085
Optimize imports on the project
2023-08-11 11:54:38 +03:00
filipp
1fe64e69ca
Support running tests if headless
2023-08-04 19:00:47 +03:00
Matt Ellis
d4aa1f87e0
Fix read-only stdin when running application
2023-08-03 14:58:47 +03:00
filipp
41df06a48b
Fix failing tests second attempt
...
(please please)
2023-08-03 14:00:03 +03:00
Matt Ellis
98ca4080dd
Do not enter INSERT mode for read-only editors
...
It's not enough that the document is writable, the editor needs to be non-read-only, too.
Fixes VIM-2313, fixes VIM-2318, fixes VIM-2666, fixes VIM-2951
2023-08-01 12:22:26 +03:00
Matt Ellis
dd24ebf184
Rename OptionsScope.AUTO to EFFECTIVE
2023-07-31 11:28:32 +03:00
Matt Ellis
4e33b5f351
Migrate to effective value change listeners
2023-07-31 11:28:32 +03:00
Matt Ellis
54dc184dd0
Introduce option effective value change listener
2023-07-31 11:28:32 +03:00
Matt Ellis
c8c9d1729e
Introduce listener for global option changes
2023-07-31 11:28:32 +03:00
Matt Ellis
e6e4b81f3b
Simplify guicursor caret attributes cache
2023-07-31 11:28:32 +03:00
Matt Ellis
1c465f028e
Fix option scopes for :let command
2023-07-31 11:28:32 +03:00
Matt Ellis
12824c22c4
Add :setglobal command
2023-07-31 11:28:32 +03:00
Matt Ellis
64c5ad72a3
Use accessor API to set global-local value
2023-07-31 11:28:32 +03:00
Matt Ellis
365d8d34ce
Introduce AUTO scope for effective option values
2023-07-31 11:28:32 +03:00
Matt Ellis
ced25bbf28
Initialise options when opening windows/buffers
...
Note that this temporarily changes the semantics of `:set` to always set the local option, instead of setting the global option (because we now eagerly initialise local values). Neither is correct, but we don't yet have a way to support the proper behaviour.
2023-07-31 11:28:32 +03:00
Matt Ellis
7e1ce5a203
Use Vim terminology in storage service
2023-07-31 11:28:32 +03:00
Matt Ellis
aeec754f7e
Override IjVimEditor.toString for better debugging
2023-07-31 11:28:32 +03:00
Matt Ellis
aff956f4c8
Update parsed value cache for declared scope
2023-07-31 11:28:32 +03:00
Matt Ellis
0f49fd6406
Introduce declared scope for all options
2023-07-31 11:28:32 +03:00
filipp
a71b35097f
Fix(VIM-2246): X11/Xorg Primary selection register "* not supported
2023-07-28 19:56:42 +03:00
filipp
0058f81e76
VIM-3022 Search is broken in folded regions
2023-07-27 01:03:12 +03:00
Matt Ellis
a78e21a167
Use soft wraps instead of hard wraps in ex output
...
Hard wraps require figuring out the width of the panel, and all we have is the width of the associated editor, which excludes gutter, etc. Easier to let the UI toolkit handle it
2023-07-19 18:04:02 +03:00
Alex Plate
834d1476ce
Replace VimDataContext with a dataContextWrapper
...
This should fix some issues like
https://jb-web.exa.aws.intellij.net/report/16130069
https://jb-web.exa.aws.intellij.net/report/16092668
2023-07-14 16:58:26 +03:00
filipp
2bc0c4c41b
Better buffer storage
2023-07-14 15:06:03 +03:00
filipp
58ad8417e5
Fix vim logger
2023-07-14 13:22:32 +03:00
samabcde
d3f942aebc
VIM-2920 fix select block expansion when enclose boundary is line break
2023-07-07 11:46:41 +03:00
Ludwig Valda Vasquez
28887c1da2
Update VimMessages#updateStatusBar to accept VimEditor
...
This is required for vim support in Fleet.
2023-07-07 10:57:56 +03:00
Alex Plate
13139966ea
Implement UserDataHolder for out VimDataContext
...
This is needed for fix Rider issues with put: https://youtrack.jetbrains.com/issue/RIDER-94213/StackOverflowError-when-using-GotoDeclaration-action-or-gd-with-IdeaVIM-plugin-in-Rider-2023.2#focus=Comments-27-7617177.0-0
2023-06-30 10:50:38 +03:00
filipp
6b70b11ffc
Focus active tab after :tabclose
2023-06-23 17:05:09 +03:00
filipp
e474075778
Basic support for commands that were not added to grammar
2023-06-23 15:18:57 +03:00
filipp
10bcd20cd8
Retire obsolete commands
...
With all the gratefulness for 20 years of service. Thank you, pioneers of our plugin's legacy.
2023-06-20 15:59:09 +03:00
Martin Yzeiri
dd490967d3
Add Matchit PHP patterns
2023-06-12 10:39:45 +03:00
Martin Yzeiri
391202877a
Extract tagNamePattern to an argument
...
Providing a custom tagNamePattern makes it easier to interop with
languages like PHP.
2023-06-12 10:39:45 +03:00
Martin Yzeiri
c48acd8fb7
Simplify JavaScript PSI checks
...
The less than/greater than operators are the only binary expressions in
the JS patterns, so the extra PSI checks are redundant.
2023-06-12 10:39:45 +03:00
Martin Yzeiri
c8428258fe
Switch to linkedMapOf
...
mapOf happens to give us LinkedHashMaps, but we'll use the explicit
constructor since insertion order matters for PatternsTables.
2023-06-12 10:39:45 +03:00
Alex Plate
7b71af9e1d
Fix(VIM-2964): Fix an issue with leaking caret instance
...
Now I use the subscription to the disposer, but I think we can update it to the flow
2023-06-06 16:12:54 +03:00
filipp
cc2de42415
Moving from gorgeous YAML to good old JSON
2023-06-06 10:42:42 +03:00
filipp
434d882314
Add vimscriptfunctionannotation
option
2023-06-06 10:42:42 +03:00
filipp
617d9d90ed
Add excommandannotation
option
2023-06-06 10:42:42 +03:00
filipp
f456e0a8dd
Fix tests
2023-06-06 10:42:42 +03:00
filipp
ee704f53c7
Support lazy ex command classloading
2023-06-06 10:42:42 +03:00
filipp
8aeab29303
Annotate ex-commands
2023-06-06 10:42:42 +03:00
filipp
627c8a6eca
Move some functions to engine
2023-06-06 10:42:42 +03:00
filipp
8094758a82
Add function providers
2023-06-06 10:42:42 +03:00
filipp
c1b87eba03
Annotate functions
2023-06-06 10:42:42 +03:00
Alex Plate
b48950ff3a
Fix(VIM-2953): The previous fix for :q command caused weird behavior of tab closing
...
The initial change was caused by VIM-2912 in a8f0145333
, but when I took the old function back, it seems that both issues are fixed.
2023-05-31 11:41:25 +03:00
samabcde
4e7149c945
VIM-2615 add support to sort u command, fix natural sort issue when both string not contain number
2023-05-29 14:41:06 +03:00
Alex Plate
904ca5d529
Remove argument argument
from text object
2023-05-19 10:16:23 +03:00
Alex Plate
aabe56e8b3
Disable alternative context resolve during copy because of binary incompatibility with the newer version of EAP
2023-05-17 13:08:07 +03:00
Alex Plate
2e8454907d
Fix esc for replace in octopus mode
...
VIM-2938
2023-05-17 12:39:39 +03:00
Matt Ellis
94ef9692f2
Fix typo in ideajoin notification
2023-05-17 10:54:13 +02:00
Matt Ellis
798750bf95
Use options API for more cached values
2023-05-17 10:54:13 +02:00
Matt Ellis
52dcb2d290
Treat 'iskeyword' as a local-to-buffer option
2023-05-17 10:54:13 +02:00
Matt Ellis
4cc883f174
Refactor search helper companion to interface
...
Helper functions now take the editor rather than the text, ready for search to rely on per-editor options (i.e. '`iskeyword'`). Also standardises on `Int` for search parameters. While the file size is a `Long`, the editor returns a `CharSequence`, which is indexed by `Int`.
2023-05-17 10:54:13 +02:00
Matt Ellis
5a3c5bd761
Treat 'virtualedit' as a global-local option
2023-05-17 10:54:13 +02:00
Matt Ellis
66830b7cb3
Treat 'idearefactor' as a global-local option
2023-05-17 10:54:13 +02:00
Matt Ellis
b742865e8a
Treat 'ideajoin' as a global-local option
2023-05-17 10:54:13 +02:00
Matt Ellis
fd314a3288
Treat 'matchpairs' as a local option
2023-05-17 10:54:13 +02:00
filipp
527b321ee0
Fix(VIM-2945): %-movement mismatches braces
2023-05-14 00:09:00 +03:00
filipp
d89fbeea62
Fix(VIM-2930): vim-multiple-cursors + ReplaceWithRegister issue
2023-05-07 23:51:05 +03:00
filipp
a1d0c3ebf4
Remove println
2023-05-05 09:41:27 +03:00
filipp
2088c1ce00
Move more methods to engine
2023-05-05 09:41:27 +03:00
Martin Yzeiri
bcf10a0b8e
Matchit: Ignore JS comparison operators
...
In files that mix HTML and JavaScript, arrow functions or forms like (x > y)
conflict with the brackets on HTML tags. We can ignore those JS elements
using PSI checks like we do for some Ruby keywords.
2023-04-26 11:14:06 +03:00
Martin Yzeiri
546137c0f5
Matchit: Correct HTML regex
...
A final closing > is required on the search pair, otherwise tags with a
shared prefix in their names will conflict.
2023-04-26 11:14:06 +03:00
Martin Yzeiri
92bc691e1f
Matchit: Improve comment handling
...
Since the cursor can come before the start of the matching pair, we need
to check the PSI element at the first match offset, not the caret offset,
when deciding if we need to skip comments.
This fix makes the special isHtmlAttribute check unnecessary. If the caret
is in an HTML attribute, the first match offset will point to the start
of the tag.
2023-04-26 11:14:06 +03:00
Matt Ellis
77ad9deeba
Use interface for IJ specific options
2023-04-26 10:26:06 +03:00
Matt Ellis
330d92116c
Refine inheritance of IJ specific option classes
2023-04-26 10:26:06 +03:00
Matt Ellis
899adfc1b0
More refactoring to use new API
2023-04-26 10:26:06 +03:00
Matt Ellis
23535a6ad5
Remove OptionValueAccessor
2023-04-26 10:26:06 +03:00
Matt Ellis
e8b7f00370
Remove accessor from new API
2023-04-26 10:26:06 +03:00
Matt Ellis
3f2c5070ee
Migrate local option access to new API
2023-04-26 10:26:06 +03:00
Matt Ellis
a2352525c5
Migrate global option access to new API
...
Also fixes some incorrect usages of local options as global, e.g. 'ideajoin' and 'scroll'. There are some options that should be local that are only ever accessed at global scope. These need fixing in the future, e.g. 'iskeyword', 'matchpairs' and 'virtualedit'
2023-04-26 10:26:06 +03:00
Matt Ellis
50384a526b
Introduce option accessor delegated properties
...
Also migrates tests to use new properties
2023-04-26 10:26:06 +03:00
Matt Ellis
9ade3365ff
Extract StringListOption
...
While it is conceptually very similar to StringOption, the implementation of list vs not-list operations are very different, and having a separate type will allow us to do more interesting things with overloading when we introduce delegate properties
2023-04-26 10:26:06 +03:00
filipp
8107f669cd
Fix ReplaceWithRegister with single caret
2023-04-19 15:22:49 +03:00
filipp
2f55d92d83
Move more methods to engine
2023-04-19 15:07:06 +03:00
Alex Plate
f4be162aea
Fix issue with missing key-repeat dialog on new mac machine
2023-04-14 23:14:01 +03:00
Alex Plate
c64810509f
Fix(VIM-2909): Fix incorrect file detection while closing diff window
2023-04-13 15:58:56 +03:00
Alex Plate
a8f0145333
Fix(VIM-2912): Fix focus after :q
2023-04-12 11:01:03 +03:00
Stzx
26ed6670d5
Fix dispose
operation
2023-04-04 08:02:03 +03:00
Alex Plate
260bb47434
Different approach for getting editor during bookmarks initialization in order to get rid of slow operations exception
2023-04-01 09:01:19 +03:00
Alex Plate
9d7872e64e
Update initialization instructions
2023-03-31 17:39:06 +03:00
filipp
31bdc23b3c
Add support for variables in exists function
2023-03-31 17:37:57 +03:00
Matt Ellis
f803c0aa72
Add deterministic initialisation of options
2023-03-31 17:37:48 +03:00
Matt Ellis
531b0e3537
Provide an API to override option default value
...
This is specifically to support ideaput in 'clipboard'
2023-03-31 17:37:48 +03:00
Matt Ellis
18d52c2459
Make addListener more strongly typed
2023-03-31 17:37:48 +03:00
Matt Ellis
b7dcff79ae
Improve modifyOptionValue
2023-03-31 17:37:48 +03:00
Matt Ellis
8f8c05e451
Remove string based option helper functions
2023-03-31 17:37:48 +03:00
Matt Ellis
af3ebe60f4
Use strongly typed options instead of constants
2023-03-31 17:37:48 +03:00
Matt Ellis
be64d24c00
Introduce strongly typed properties for options
2023-03-31 17:37:48 +03:00
Matt Ellis
8f04575efd
Extract IJ specific options to own file
2023-03-31 17:37:48 +03:00
Matt Ellis
4e1b8f3ec4
Extract IJ specific options to own class
2023-03-31 17:37:48 +03:00
Matt Ellis
88f0d2e532
Replace constants with strongly typed properties
2023-03-31 17:37:48 +03:00
Matt Ellis
d042ee3058
Move octopushandler option out of vim-engine
2023-03-31 17:37:48 +03:00
Alex Plate
24df3be8f1
Print more logging in case the vim shortcut is disabled
2023-03-31 17:13:25 +03:00
Alex Plate
0f07e4bdc3
Fix(VIM-2896): Correct ordering of handlers
2023-03-31 12:45:54 +03:00
filipp
f4068301ff
Add information about text range in original script for executable
2023-03-31 11:00:39 +03:00
Alex Plate
832c1c0be3
Revert "Update formatting"
...
This reverts commit bf0fba9c58
.
2023-03-27 11:32:59 +03:00
Alex Plate
bf0fba9c58
Update formatting
2023-03-27 08:27:13 +00:00
Alex Plate
0f8b67e6ce
Reformat files
2023-03-27 11:14:00 +03:00
Alex Plate
f0505b8919
Fix(VIM-2433): Do not clear clipboard after inserting with ideaput
2023-03-17 13:26:13 +02:00
Alex Plate
db12fbe725
Get rid of test clipboard manager
2023-03-17 11:56:50 +02:00
Alex Plate
0ae57af270
Do not track action ids for vim actions
2023-03-16 10:52:53 +02:00
Alex Plate
0510fe8530
Ktlint format
2023-03-16 10:52:52 +02:00
Alex Plate
3ebaf38486
Fix bug in nerdtree
2023-03-16 10:52:51 +02:00
filipp
84fc962bb0
ReplaceWithRegister
2023-03-15 18:42:22 +02:00
Alex Plate
6b76270d51
Reformat code
2023-03-15 07:59:25 +02:00
filipp
21162ba34e
Fix(VIM-2286): Set surround not working for me as expected
2023-03-14 15:24:11 +02:00
filipp
0fea44f735
Fix(VIM-1750): Surround with tag wrong position
2023-03-14 01:14:35 +02:00
filipp
b383706bfb
Fix(VIM-1746): IdeaVim Surround removes unwanted characters
2023-03-14 00:23:45 +02:00
filipp
a78f66fd36
Better multiple caret support for surround
2023-03-14 00:23:44 +02:00
filipp
48ec19d9bf
Fix(VIM-1551): Surround: line surround not working
2023-03-13 23:45:05 +02:00
filipp
9454ebcb35
Move some methods to engine
2023-03-13 19:34:14 +02:00
Alex Plate
441721b63f
Reformat source code
2023-03-13 11:44:02 +02:00
Alex Plate
01e4c80adb
Remove traces of the experimental API
2023-03-13 10:29:09 +02:00
Alex Plate
ad63afc242
Add more info to the issue report
2023-03-13 09:35:24 +02:00
Alex Plate
8210b122bc
Update version of kt lint and reformat files
2023-03-13 09:01:38 +02:00
Alex Plate
a0d3cf561b
Apply ktlint reformat
2023-03-13 08:43:52 +02:00
filipp
f385c3fa21
Fix(VIM-795): Ctrl-w + h doesn't alway work (window navigation to the left window)
2023-03-12 00:20:08 +02:00
filipp
3ddd4a1a58
Fix(VIM-2868): Pasting in visual mode with P should not replace yank register like when pasting with p
2023-03-10 23:30:35 +02:00
filipp
4c7c3dba00
Fix(VIM-2733): vim-surround emulation interacts incorrectly with unmatched quotes on previous lines
2023-03-10 21:20:18 +02:00
Alex Plate
119975c313
Remove experimental API
2023-03-10 18:30:07 +02:00
Alex Plate
d5eaf85473
Better support for esc in octopus mode
2023-03-10 14:33:31 +02:00
Alex Plate
66172c843d
Enable explicit api mode for IdeaVim
2023-03-10 13:20:29 +02:00
Alex Plate
88b3373e5c
Add option to enable octopus handler
2023-03-10 12:11:17 +02:00
Alex Plate
320d91d639
Add esc to octopus handler
2023-03-10 12:00:41 +02:00
Matt Ellis
c192f319d1
Simplify setting known options a little
2023-03-10 10:17:45 +02:00
Matt Ellis
097dfa06a6
Add a couple of convenience functions
2023-03-10 10:17:45 +02:00
Matt Ellis
90ca544d0a
Move getter helpers out of the options interface
...
The interface now has a simple setter and getter, as well as other functions for managing options. More friendly functions for getting and setting values are available as extension functions
2023-03-10 10:17:45 +02:00
Matt Ellis
2bc9640b88
Remove last of 'set' validation code
2023-03-10 10:17:45 +02:00
Matt Ellis
40ffddf5ef
Push toggle option validation into ':set' command
2023-03-10 10:17:45 +02:00
Matt Ellis
bd28c9da23
Push more ':set' command validation into command
2023-03-10 10:17:45 +02:00
Matt Ellis
11ef024779
Move ':set' command validation out of interface
...
Moves functions that require validation parameters to extension functions. Core interface should not require additional user facing paramter
2023-03-10 10:17:45 +02:00
Matt Ellis
91c8e7ebda
Rename getOptionByNameOrAbbrev
2023-03-10 10:17:45 +02:00
Matt Ellis
3c3014fdc6
Remove unused getAbbrevs function
2023-03-10 10:17:45 +02:00
Matt Ellis
d97e4c44ee
Rename "token" and remove default argument
2023-03-10 10:17:45 +02:00
Matt Ellis
1b88c514da
Move IjVimOptionGroup to correct package & rename
2023-03-10 10:17:45 +02:00
Matt Ellis
96c1094a61
Replace OptionService with VimOptionGroup
...
Leaves a skeleton, deprecated implementation of OptionService for existing external use by plugins
2023-03-10 10:17:45 +02:00
Matt Ellis
4232d3d8a2
Remove unused local options types
2023-03-10 10:17:45 +02:00
Matt Ellis
73b64c19ff
Move OptionValueAccessor to options package
2023-03-10 10:17:45 +02:00
Matt Ellis
15ccdb2055
Remove unnecessary getOptionServiceImpl
2023-03-10 10:17:45 +02:00
Matt Ellis
418067b077
Remove unused deprecated method
...
No external usages
2023-03-10 10:17:45 +02:00
Matt Ellis
88b29d1a14
Isolate and remove deprecated code
...
Moves ToggleOption to the proper package, leaving behind a skeleton class to keep ideavim-sneak and IdeaVim-EasyMotion happy.
Removes NumberOption and related number OptionsManager properties which are only used by which-key 0.6.2, because this plugin is already broken due to a separate API change. (The plugin is expecting the command trie to use `CommandPartNode<ActionBeanClass>`, but it's actually using `CommandPartNode<VimActionsInitiator>`). Also removes `ToggleOption.value`, used by which-key
2023-03-10 10:17:45 +02:00
Matt Ellis
4540d216cb
Move StrictMode out of options package
2023-03-10 10:17:45 +02:00
kawagh
1bd6defc84
Include escaped character in search target
2023-03-10 09:37:46 +02:00
Alex Plate
181d76ae7b
Improvements for octopus handler
2023-03-09 16:45:06 +02:00
filipp
72be9845fa
Fix(VIM-2885): "v:searchforward" does't work for IdeaVim
2023-03-09 15:56:34 +02:00
filipp
00901f60dc
Add get()
function
2023-03-08 20:06:43 +02:00
filipp
21aaf06a63
Add split function
2023-03-08 19:21:02 +02:00
Alex Plate
d81774c9a7
Add octopus connector that attaches IdeaVim to IJ using EditorActionHandlers
2023-03-08 13:56:31 +02:00
Alex Plate
2cb6fb041e
Use injector to create execution context
2023-03-08 13:06:36 +02:00
Alex Plate
b7d5ee9a75
Add doc why we can move to project activity at the moment
2023-03-08 12:59:48 +02:00
Alex Plate
24dd84b31c
Revert "Migrate to project activity"
...
This reverts commit fc7efd5484
.
2023-03-08 12:57:13 +02:00
Alex Plate
0e96819e86
Update creation of execution context
2023-03-08 11:35:01 +02:00
Alex Plate
fc7efd5484
Migrate to project activity
2023-03-08 09:30:33 +02:00
filipp
2c9aa8e30e
FIX(VIM-2881): ReplaceRegister does no longer worker with MultiCursor
2023-03-07 17:24:19 +02:00
Alex Plate
a3039e05d4
Fix(VIM-1735): Fix enabling mulple carets after line selection
2023-03-07 09:44:01 +02:00
Alex Plate
bed078213b
Fix some qodana issues
2023-03-07 09:44:01 +02:00
Alex Plate
b413c8e715
Update formatting
2023-03-05 00:20:18 +00:00
Alex Plate
5b636b2b5e
Perform code cleanup
2023-03-03 17:57:42 +02:00
Alex Plate
6db4874acd
Migrate NerdTree to new startup activity
2023-03-03 17:57:41 +02:00
Alex Plate
c5f8eaf1cf
Run ktlinter
2023-03-03 17:57:41 +02:00
Alex Plate
c9568b4301
Switch to AnActionWrapper instead of deprecated EmptyAction
2023-03-03 17:57:41 +02:00
Alex Plate
e1c712abb7
Include the original editor context into our custom editor context
...
Bug reference: https://youtrack.jetbrains.com/issue/VIM-2315/Bug-in-leader-key-handling-in-ideavim#focus=Comments-27-6918383.0-0
2023-03-03 17:57:41 +02:00
Dominic Palmer
dd69d0fad2
Prevent viewport displacement on undo
2023-03-01 17:41:59 +02:00
filipp
8fe6c8bde7
Jumps refactoring
2023-02-28 13:11:08 +02:00
Alex Plate
ec4684c336
Fix qodana inspections
2023-02-28 10:10:24 +02:00
Alex Plate
ec05ca11ba
Fix possible NPE
2023-02-28 10:00:42 +02:00
Dominic Palmer
7ebd604390
Include empty lines in the selection when dragging backwards from EOL
2023-02-28 09:52:23 +02:00
Alex Plate
7bc50df300
Fix possible npe
2023-02-28 09:31:38 +02:00
Alex Plate
6e854eb889
Update formatting
2023-02-26 00:19:08 +00:00
filipp
d009ece391
Fix jumps
2023-02-24 15:22:31 +02:00
filipp
266d164a34
Add option to turn off using IDE jumps by JumpService
2023-02-24 14:48:50 +02:00
filipp
aaf957a3c2
Fix(VIM-44): Unify navigation history between ideavim and idea
2023-02-24 14:44:53 +02:00
filipp
ec80a20146
Rename method
2023-02-13 13:05:34 +02:00
filipp
cd46497829
Fix(VIM-282): Cursor line wrapping support (whichwrap)
2023-02-13 13:04:53 +02:00
Alex Plate
138dc7082e
Update formatting
2023-02-05 00:18:21 +00:00
filipp
0accfbd65f
Fix(VIM-1768): Delete surrounding character while in multiple cursors mode
2023-02-01 23:06:25 +02:00
filipp
e112d87e28
Register FunctionStorage as service
2023-02-01 21:08:35 +02:00
Alex Plate
d01e804b24
Fix(VIM-658): Stop macro on error
2023-02-01 20:47:15 +02:00
Alex Plate
72ca9a2297
Reuse potemkin progress for internal macros
2023-02-01 20:26:06 +02:00
Alex Plate
007a1694d7
Remove useless parameter
2023-02-01 19:50:48 +02:00
Alex Plate
74dd307318
Convert macro group to kotlin
2023-02-01 19:46:09 +02:00
Alex Plate
4bf5f6dcc1
Rename .java to .kt
2023-02-01 19:46:08 +02:00
Alex Plate
9b56fbc3ed
Convert more tests from java to kotlin
2023-01-28 08:48:23 +02:00
Alex Plate
bdcdfda8c4
Rename .java to .kt
2023-01-28 08:48:22 +02:00
Alex Plate
17c248eda0
Fix(VIM-2787): Save ideavimrc loading
2023-01-27 10:55:51 +02:00
Alex Plate
bee82a1941
Adding experimental inspection
2023-01-27 10:55:49 +02:00
filipp
772c574149
VimMarkServiceImpl refactoring
2023-01-27 00:20:40 +02:00
filipp
d577411e72
Fix(VIM-2850)
2023-01-27 00:20:40 +02:00
filipp
da75da6791
Fix easymotion compatibility
2023-01-23 14:36:31 +02:00
filipp
d50daad918
Fix easymotion compatibility
2023-01-23 12:57:44 +02:00
Alex Plate
484a1f264b
Update formatting
2023-01-22 00:18:31 +00:00
filipp
e79821385d
Remove caret from method signatures in CaretRegisterStorage
2023-01-20 17:24:28 +02:00
filipp
44336460c5
Fix IDEA compatibility
2023-01-20 16:50:58 +02:00
filipp
46f0309171
VIM-2840 Replace with register does not work with count
2023-01-20 16:33:16 +02:00
Matt Ellis
308e8bfbc3
Replace default interface methods with extensions
2023-01-18 17:47:32 +02:00
Matt Ellis
42b8b5814f
Simplify check for option existence
2023-01-18 17:47:32 +02:00
Matt Ellis
11fcb17c29
Replace appendValue with :set in tests
2023-01-18 17:47:32 +02:00
Matt Ellis
9c54fbe733
Migrate isSet to option value accessor API
2023-01-18 17:47:32 +02:00
Matt Ellis
9cc206d548
Introduce friendly API for consuming options
2023-01-18 17:47:32 +02:00
Matt Ellis
a97cf8a3ec
Remove unnecessarily cached list field
2023-01-18 17:47:32 +02:00
Matt Ellis
f0ea5f3968
Extract IDEA specific option constants
2023-01-18 17:47:32 +02:00
Matt Ellis
8d44afc8e6
Sort option name constants
2023-01-18 17:47:32 +02:00
Matt Ellis
62ed3bd7f2
Rename option name constants
2023-01-18 17:47:32 +02:00
Matt Ellis
bb44044956
Move IJ specific options out of engine
2023-01-18 17:47:32 +02:00
Matt Ellis
d95810f6e5
Sort options
2023-01-18 17:47:32 +02:00
filipp
341dc6c58b
Post-merge fixes
2023-01-17 16:15:34 +02:00
filipp
a2364b7512
Pull request polishing
2023-01-16 19:23:13 +02:00
filipp
350e1c08d0
Add loading marks and jumps states to VimPlugin
2023-01-16 19:23:00 +02:00
filipp
d2c849fceb
Post-merge fixes
2023-01-16 19:21:10 +02:00
filipp
c4e9d5d14f
Multiple carets support for marks
2023-01-16 19:19:46 +02:00
filipp
a8d225f812
Save jumps after IDE close
2023-01-16 18:51:11 +02:00
filipp
bdfb8c7ee4
Fix exchange
2023-01-16 18:51:11 +02:00
filipp
9ab9d88eb5
VimJumpService implementation
2023-01-16 18:51:11 +02:00
filipp
a4c7b38b7a
Update formatting
2023-01-16 18:51:11 +02:00
filipp
fe1ae29fa3
Better selection marks
2023-01-16 18:40:31 +02:00
filipp
af497e6906
Post-merge fixes
2023-01-16 18:40:30 +02:00
filipp
ce77148a38
Multiple carets support for marks
2023-01-16 18:40:24 +02:00
Alex Plate
0ee6ce0a55
Remove some forEachCaret methods
2023-01-16 11:43:00 +02:00
Alex Plate
39f0e14fee
Remove one of the unused methods
2023-01-16 09:53:52 +02:00
Alex Plate
dc09907f93
Remove dynamic loader stopper
2023-01-16 09:38:38 +02:00
Alex Plate
e674d8ac3a
Remove more usages of runForEachNative
2023-01-12 10:31:14 +02:00
Alex Plate
141af4f097
Remove one of for each methods
2023-01-12 10:19:11 +02:00
Alex Plate
908c978242
Global copyright update
2023-01-10 10:09:25 +02:00
Alex Plate
0ecfdc5cf3
Fix issue with incorrect position of the caret after put
2023-01-09 10:52:29 +02:00
Patrick Elmquist
831e335b5d
Fixed typos in Tutor
2023-01-09 10:17:31 +02:00
Alex Plate
337c526e23
Fix(VIM-2833): Fix rare deadlock during put in insert mode from clipboard
2023-01-06 09:58:52 +02:00
Alex Plate
fb46993a05
Reformat sources
2023-01-06 09:26:05 +02:00
Alex Plate
ef2738838f
Update copyright rules
2023-01-06 09:26:05 +02:00
Alex Plate
b9669e452c
Add some information to issue template
2023-01-06 09:26:04 +02:00
Matt Ellis
3be6acf5b5
Restore type qualifiers for some static methods
2023-01-06 09:22:08 +02:00
Matt Ellis
b5619adf45
Cleanup MotionGroup.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
62540fe1b2
Reformat MotionGroup.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
fd85fdf0ac
Convert MotionGroup to Kotlin
2023-01-06 09:22:08 +02:00
Matt Ellis
e09208c757
Rename MotionGroup.java to MotionGroup.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
753f2110c6
Clean up ScrollGroup.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
7917e8417b
Import EditorHelper methods
2023-01-06 09:22:08 +02:00
Matt Ellis
a0447b4840
Convert ScrollGroup from Java to Kotlin
2023-01-06 09:22:08 +02:00
Matt Ellis
2e561a2af4
Rename ScrollGroup.java to ScrollGroup.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
a330a3e472
Make editor converter property accessors inline
2023-01-06 09:22:08 +02:00
Matt Ellis
6df695f650
Cleanup ScrollViewHelper.kt
2023-01-06 09:22:08 +02:00
Matt Ellis
d77edaa056
Convert ScrollViewHelper to Kotlin
2023-01-06 09:22:08 +02:00
Matt Ellis
4f78246c7f
Rename ScrollViewHelper.java to .kt
2023-01-06 09:22:08 +02:00
Matt Ellis
8d3ccdaf9c
Extract scroll functionality into ScrollGroup
2023-01-06 09:22:08 +02:00
Matt Ellis
17e1061866
Extract scrollCaretIntoView to helper class
...
This file is licensed under the Vim license, so that scrolling the caret into view can be based on the Vim implementation
2023-01-06 09:22:08 +02:00
Matt Ellis
30d4b06393
Fix dangling doc comment
2023-01-06 09:22:08 +02:00
Martin Yzeiri
bb67584cba
Matchit: Add more Rider file types
2023-01-04 08:56:41 +02:00
Alex Plate
e28ec93c80
Reformat project
2023-01-04 08:44:28 +02:00
Martin Yzeiri
28ba36dddb
Matchit: Support cshtml files
...
Enables HTML jumps in Razor (.cshtml) templates.
2022-12-29 07:51:59 +02:00
Alex Plate
672601b028
Do not check updates for dev version of the plugin
2022-12-28 14:41:10 +02:00
Alex Plate
e5045f28ab
Update tutor a bit
2022-12-28 12:21:36 +02:00
Runinho
faebf66065
improve formating
2022-12-28 08:58:14 +02:00
Runinho
dc030d6895
Fix(VIM-2760) notebookCommandMode detection
2022-12-28 08:58:14 +02:00
Matt Ellis
c0e17a6c61
Fix issue with lastColumn not being invalidated
2022-12-27 15:45:18 +02:00
Matt Ellis
b5046b089e
Fix incsearch not scrolling to current match
2022-12-27 15:45:18 +02:00
Alex Plate
1075112bfa
Add IdeaVim tutor
2022-12-27 10:48:58 +02:00
Alex Plate
2091a59897
Temp fix for VIM-2808: disable formatting after paste for rider
2022-12-22 15:49:04 +02:00
Alex Plate
654a443d4b
Fix compatibility with plugins
2022-12-21 10:59:23 +02:00
Alex Plate
a88263874a
Do not check for updates if the plugin is disabled
2022-12-21 10:06:46 +02:00
Alex Plate
8e8efe4862
Fix(VIM-2813): Migrate update checker to VimStandalonePluginUpdateChecker
2022-12-19 10:06:52 +02:00
Alex Plate
b154e31a28
Update formatting
2022-12-04 00:16:36 +00:00
Alex Plate
42eefb763b
Add an editor to the action executor
2022-12-02 11:52:39 +02:00
Alex Plate
27be351636
Adopt immutable caret around the source code
2022-12-02 11:36:46 +02:00
Alex Plate
dcac3be0da
Pass editor to the message service
2022-12-01 14:29:54 +02:00
Alex Plate
fb5177633a
More uses of ImmutableVimCaret
2022-12-01 08:38:52 +02:00
Alex Plate
743b978e6f
Update engine
2022-11-30 13:11:16 +02:00
Alex Plate
1fd877c597
Small refactoring of vim caret
2022-11-30 11:49:09 +02:00