Matt Ellis
f0abe5d80d
Fix range for fall back comment mode
...
Callback to reset caret was always called, even if action was unavailable. Fall back action would therefore act on current line only.
2023-10-27 12:45:02 +03:00
fb78cdd304
Add operating system type to has()
function
2023-10-27 12:28:06 +03:00
Matt Ellis
5fd54dccd3
Add support for ShowHoverInfo action to 2023.1 and 2023.2 ( #733 )
...
* Fix(VIM-2106) Implement ShowHoverInfo if not provided by platform
* Bump minimum build to 2023.1 RTM
2023-10-27 11:06:11 +03:00
filipp
9ccd39d724
Better VIM-696
2023-10-26 16:38:12 +03:00
filipp
c876079e04
Fix(VIM-1639): Ctrl-o and Ctrl-i jumping in files of different projects
...
A commit with proper notation to run all the "Fixed tasks"
2023-10-26 13:38:45 +03:00
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
cb8385a092
Fix issue adding back hidden status bar widget
2023-08-03 15:00:28 +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
e3957d2207
Minor updates from code review
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
4d907213c3
Split ex-commands in YAML
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
7491d19309
Add yaml files
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
1e17db6d21
Add lorem ipsum tests to dictionary
2023-03-20 17:42:28 +02: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
ae18ccb8cd
Add new word to the doc
2023-03-13 09:35:24 +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
40d9a201ea
Use bundle for exception messages
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
Alex Plate
dd35c4907e
Update minimal version of IJ
...
Build based on 231 has tons of incompatibilities with 223
2023-02-23 10:26:30 +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
6419279514
Prepare to 2.1.0 release
2023-01-10 09:59:51 +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
Alex Plate
1e58ead126
Move scripts into the separate module
2022-12-29 09:26:45 +02:00
Alex Plate
fafa7572d0
Extract plugin dependencies check into the separate file
2022-12-29 08:27:12 +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
34dd332f0b
Create an entry point for kotlin scripts
2022-12-28 18:04:36 +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
a6ec2d5ed7
Update changelog
2022-12-21 10:34:55 +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
Alex Plate
2b1198dfd9
Rename extensions to plugins to be more consistent
2022-11-30 08:11:39 +02:00
Alex Plate
8db23fba43
Extract ImmutableVimCaret interface
2022-11-29 20:02:26 +02:00
Alex Plate
75516a7217
Fix track action ids
2022-11-28 18:06:20 +02:00
Alex Plate
fd0819ca30
Add link to plugins
2022-11-28 17:36:57 +02:00
Alex Plate
fd3e32eaa8
Move some calls to vim engine
2022-11-28 13:29:41 +02:00
Alex Plate
a8bebb88b1
Move vimLeadSelectionOffset to the engine
2022-11-28 13:19:16 +02:00
Alex Plate
db95804eeb
Move caret method now returns VimCaret instance
...
This is important for Fleet because the carets in Fleet are immutable
2022-11-25 16:53:19 +02:00
Alex Plate
34426ae32d
Pass editor to undo redo
2022-11-25 13:35:29 +02:00
Alex Plate
c3cd207b2b
Add some logging
2022-11-25 09:40:48 +02:00
Alex Plate
ac1d334bf1
Fix(VIM-2797): Introduce variable to mute default argtextobj mappings
2022-11-23 11:44:47 +02:00
Alex Plate
7324ee5e8d
Update formatting
2022-11-20 00:18:56 +00:00
Alex Plate
54c2299654
Remove several methods from VimCaret
2022-11-18 14:37:32 +01:00
Alex Plate
b2cfb6d6ed
Refactor visual mode entering
2022-11-18 13:08:27 +01:00
Alex Plate
e8a11b8f79
Remove unused method
2022-11-18 12:28:42 +01:00
Alex Plate
f16890f9a7
Remove unused method
2022-11-17 16:35:33 +01:00
Alex Plate
e881bec45d
Move more change group methods to engine
2022-11-17 16:14:26 +01:00
Alex Plate
18eea7ca2d
Move change group methods to the engine
2022-11-17 16:03:41 +01:00
Alex Plate
316410a561
Move some methods from put group to the engine
2022-11-17 14:57:19 +01:00
Alex Plate
76a1a190f6
Refactor change group
2022-11-17 14:08:07 +01:00
Alex Plate
c243ae9cef
Add refactoring to simplify change group
2022-11-17 14:07:57 +01:00
Matt Ellis
101dc355ba
Rename parameters in Mark and Jump
2022-11-17 14:07:46 +01:00
Matt Ellis
f5f3d0b827
Rename line parameters and variables
...
Buffer lines are just called "line", but visual lines (or where things are ambiguous) are explicitly named
2022-11-17 14:07:46 +01:00
Matt Ellis
53cb5d1fe9
Rename more logical position helper functions
2022-11-17 14:07:46 +01:00
Matt Ellis
0978ca616f
Rename caret logical position helper functions
2022-11-17 14:07:46 +01:00
Matt Ellis
bbf42c0a28
Rename editor logical position helper functions
2022-11-17 14:07:46 +01:00
Matt Ellis
7df04c6e2e
Rename VimLogicalPosition to BufferPosition
2022-11-17 14:07:46 +01:00
Alex Plate
309197781e
Fix some tests
2022-11-17 10:14:03 +01:00
Alex Plate
5a3ee970a0
Move editor helper functions to engine
2022-11-17 09:37:22 +01:00
Alex Plate
7cbe63e484
Move some editor functions to engine
2022-11-16 23:21:22 +01:00
filipp
5342b02091
Converted MacOS chars to ASCII for statistics
2022-11-16 21:26:41 +02:00
Alex Plate
7eeca57135
A few fixes
2022-11-16 13:22:40 +01:00
Alex Plate
2162985e4a
Move more methods to engine
2022-11-16 13:05:59 +01:00
Alex Plate
5d53f4c13a
Move some methods from editor helper to engine
2022-11-16 12:37:03 +01:00
Alex Plate
829a228d79
Revert "Remove contributions of Piotr Mikulski <piotr@near.org>"
...
This reverts commit 860592291f
.
2022-11-16 09:45:08 +01:00
Alex Plate
4c589c9610
Revert "Refactor commands output"
...
This reverts commit 05852b07
2022-11-16 09:45:08 +01:00
Alex Plate
b9fc58ec45
Move some methods to engine
2022-11-16 09:45:07 +01:00
Alex Plate
193a84dafd
Move method to engine
2022-11-16 09:43:53 +01:00
Alex Plate
3880a33208
Refactoring
2022-11-16 09:43:53 +01:00
Alex Plate
2edf897e39
Move getMotionRange to base method
2022-11-16 09:43:51 +01:00
Matt Ellis
27d1170c75
Move creating adjusted offset out of action
2022-11-16 09:41:59 +01:00
Matt Ellis
11c850a41e
Remove unused property
2022-11-16 09:41:59 +01:00
Matt Ellis
ff4ee06a1f
Remove unnecessary setting of vimLastColumn
2022-11-16 09:41:59 +01:00
Matt Ellis
c5ab3490b3
Remove preOffsetComputation hook
...
Cached intended column is invalidated and recalculated if the caret has moved (intentionally or outside IdeaVim's control)
2022-11-16 09:41:59 +01:00
Matt Ellis
b5aba454ae
Remove more postMove overrides
2022-11-16 09:41:59 +01:00
Matt Ellis
3257cc82dc
Rename functions to indicate target motion
...
I.e. line number (currently buffer, should be Vim logical line), current line, or relative to current line
2022-11-15 10:34:12 +02:00
Matt Ellis
ef73733596
Remove unnecessary method from VimCaret
2022-11-15 10:34:12 +02:00
Matt Ellis
e0b3e1db24
Move StrictMode to engine
2022-11-15 10:34:12 +02:00
Matt Ellis
e0b51d653a
Move action to correct package
2022-11-15 10:34:12 +02:00
Matt Ellis
c17ebbf4d7
Rename various scroll functions
2022-11-15 10:34:12 +02:00
Matt Ellis
44a26d59a4
Rename screen line functions to "display"
2022-11-15 10:34:12 +02:00
Matt Ellis
6b8f81f7eb
Rename screen column functions to "display"
...
Two reasons:
1. It is good if the engine uses Vim terminology. A "screen" in Vim includes all window/display lines from all windows in the terminal screen, including the status and command line. IntelliJ doesn't have this concept. A display line is most similar to IntelliJ's visual lines, but describes the window/display's character grid, not the buffer contents.
2. moveCaretToMiddleColumn needs renaming to indicate that it's for a display line, not a logical line, and to make way for an implementation of `gM`, which does work on logical lines
2022-11-15 10:34:12 +02:00
Matt Ellis
89548d132a
Remove obsolete helper method
2022-11-15 10:34:12 +02:00
Alex Plate
785f29abf8
Fix some qodana inspections
2022-11-10 13:38:18 +02:00
Alex Plate
7791c0b7be
Get rid of runForEachCaret in DeleteJoinLinesAction
2022-11-08 13:45:21 +02:00
Alex Plate
2cfbff5cf6
Move nerdtree action to background thread
2022-11-08 10:02:47 +02:00
Alex Plate
3df637b265
Remove macrodelay option
2022-11-08 09:42:11 +02:00
Alex Plate
ea220d2514
Update formatting
2022-11-06 00:20:06 +00:00
Alex Plate
8bb75fc376
Add ThirdPartyLicenses.md file
2022-11-04 10:15:42 +02:00
Alex Plate
d461fe555d
Refactor status bar icon
2022-11-04 09:55:34 +02:00
Alex Plate
2355435275
Update copyright
2022-11-04 09:24:03 +02:00
Alex Plate
4781d29d67
Prepare to 2.0.0 version
2022-11-01 20:08:27 +02:00
Alex Plate
f5b6ca50f4
Update IdeaVim license to MIT
...
VIM-2782
2022-11-01 20:00:07 +02:00
Alex Plate
05852b07c6
Refactor commands output
2022-11-01 19:47:27 +02:00
Alex Plate
689aa4cf95
[VIM-570] Fix for chinese characters
2022-11-01 19:47:27 +02:00
Alex Plate
ac69c0d9c6
Fix search with offset
2022-11-01 19:47:27 +02:00
Alex Plate
860592291f
Remove contributions of Piotr Mikulski <piotr@near.org>
...
6a4bb7395b
9b4825db77
2022-11-01 19:47:26 +02:00
Alex Plate
113597333c
Remove contributions of kk <kevinz@weghst.com>
...
4849992ca9
2022-11-01 19:47:26 +02:00
Alex Plate
a83d71aa39
Remove contributions of Marquis Wang <marquis@marquiswang.com>
2022-11-01 19:47:26 +02:00
Alex Plate
93299ae843
Remove contributions of Marcel Hild <hild@b4mad.net>
2022-11-01 19:47:25 +02:00
Alex Plate
4300cf5330
Prepare to 1.12.0 release
2022-11-01 19:11:28 +02:00
Matt Ellis
45908f2a84
Remove unnecessary scroll method
2022-10-28 08:15:32 +03:00
Matt Ellis
8648220e21
Fix(VIM-2778) Remove override of editor scroll setting
...
Let user decide how editor scrolls when IntelliJ performs navigation, e.g. go to file member
2022-10-28 08:15:32 +03:00
Alex Plate
68e285b514
Update plugin.xml
2022-10-27 11:25:43 +03:00
Alex Plate
9d049b06c3
Use java pattern matching in the code
2022-10-27 10:58:14 +03:00
Alex Plate
1105529e91
Update minimal IJ version to 223
2022-10-27 10:29:58 +03:00
Alex Plate
f54fd84de3
Fix(VIM-2776): Use filename index for file search
2022-10-25 09:47:50 +03:00
Alex Plate
da3d83ecc6
Update formatting
2022-10-23 00:26:59 +00:00
filipp
4af8e574c4
Log keystrokes only in ASCII
2022-10-19 14:59:09 +03:00
Alex Plate
bdcb5c4f33
Update colors
2022-10-18 16:56:43 +03:00
Alex Plate
6c0cc7285f
Fix(VIM-2766): Move NERDTree update to background thread
2022-10-18 11:31:15 +03:00
Alex Plate
d3424021c8
Fix(VIM-2768): Refactor listeners
2022-10-17 17:39:40 +03:00
Alex Plate
c131cb338e
Update description in plugin.xml
2022-10-17 15:45:14 +03:00
filipp
14d242a233
Disable logging undefined handlers
2022-10-17 14:56:16 +03:00
Alex Plate
a131b7d29a
Update IdeaVim motto
2022-10-17 12:35:05 +03:00
Alex Plate
e3d3b73903
Fix incompatiility with futur versions of IJ
2022-10-04 09:48:18 +03:00
Alex Plate
45f18ff91c
Update formatting
2022-10-02 00:26:29 +00:00
filipp
19dd49670c
Statistic
2022-09-26 11:51:56 +03:00
filipp
6e0f301fb8
Fix(VIM-2757) Wrong gv
behavior
2022-09-22 04:08:39 +03:00
filipp
c76b8db293
Fix(VIM-2718) Copied value is not inserted
2022-09-21 03:00:53 +03:00
Alex Plate
871b60fe8d
Revert "[New Typing Handler]: Switch j
command to new typing handler"
...
This reverts commit 43a79dba
2022-09-12 09:30:22 +03:00
Alex Plate
6715a5b61f
Revert "[New Typing Handler]: Support d
"
...
This reverts commit c32c62ea
2022-09-12 09:29:46 +03:00
Alex Plate
9f00dbd6f4
Update formatting
2022-09-11 00:19:01 +00:00
filipp
7fbc17624f
Fix(VIM-2718): Fixed case where the primary caret was changed
2022-09-11 00:24:06 +03:00
Alex Plate
ca0db15e01
Fix(VIM-2749): Fix :tabn and :tabN commands
2022-09-09 17:20:09 +03:00
Alex Plate
c32c62eacc
[New Typing Handler]: Support d
2022-09-06 13:13:31 +03:00
Alex Plate
43a79dbad4
[New Typing Handler]: Switch j
command to new typing handler
2022-09-05 15:22:10 +03:00
Alex Plate
183ed10592
Fix(VIM-2744): Fix undo from ex line
2022-08-29 09:31:55 +03:00
Alex Plate
f6e7d04fd5
Fix accessing bookmarks
...
Tests were failing because IdeaVim group is created by default by project name
2022-08-25 11:59:05 +03:00
Alex Plate
f8fa8b73fa
Move some methods to vim engine
2022-08-23 15:26:55 +03:00
Alex Plate
aee126b625
Formatting
2022-08-23 15:26:53 +03:00
Alex Plate
396ac86939
Fix strange issue on ideavimrc reload
2022-08-23 15:26:50 +03:00
Alex Plate
81816f903f
Update formatting
2022-08-21 00:17:52 +00:00
Alex Plate
7f1e3bb155
Fix(VIM-1758): Commentary plugin in rider
2022-08-17 10:13:04 +03:00
Alex Plate
241f554133
Fix(VIM-1903): Autoindent now works in rider
2022-08-17 10:11:19 +03:00
Alex Plate
9498d0779c
Revert "Refactoring IdeaVim to use editor actions instead of registering shortcuts in the editor"
...
This reverts commit b12fd5100f
.
2022-08-15 18:59:35 +03:00
Alex Plate
b12fd5100f
Refactoring IdeaVim to use editor actions instead of registering shortcuts in the editor
2022-08-15 18:42:32 +03:00
Alex Plate
92f622430d
Revert "Add a hidden gem"
...
This reverts commit 362b9a5c3a
.
2022-08-15 17:22:31 +03:00
Alex Plate
ef518f5b23
Revert "Rename hidden gem to neovim"
...
This reverts commit 4fd1a25557
.
2022-08-15 17:22:31 +03:00
Alex Plate
7acb17ebdb
Small update
2022-08-15 17:22:31 +03:00
Alex Plate
4fd1a25557
Rename hidden gem to neovim
2022-08-12 12:14:17 +03:00
Alex Plate
f32d42e625
Nice knowledge popup
2022-08-12 12:10:57 +03:00
Alex Plate
362b9a5c3a
Add a hidden gem
2022-08-12 10:49:55 +03:00
Alex Plate
12903066b9
Workaround for VIM-2487
2022-08-12 09:45:07 +03:00
Alex Plate
89623b04d6
Update changelog
2022-08-09 10:25:14 +03:00
Alex Plate
162d7b021f
Update reference to changes
2022-08-09 09:50:02 +03:00
Alex Plate
b14e59ab5b
Disable removing selection after undo
2022-08-09 09:49:28 +03:00
Alex Plate
47dcefcfbf
Update formatting
2022-08-07 00:20:00 +00:00
Alex Plate
91f580771d
Fix test with closing buffer
2022-08-04 19:18:26 +03:00
Alex Plate
6711f1dbab
Specify update thread for actions
2022-08-01 13:09:23 +03:00
Alex Plate
0b7a883efb
Fix(VIM-2723): Move focus to editor after :q
2022-08-01 09:29:44 +03:00
c7b51b7fa5
Implement partial code completion support in macros
...
Works ok with insertions (Enter, Ctrl+Enter) but not with replacements (Tab)
2022-07-22 10:02:23 +03:00
Alex Plate
33d3f270a3
Fix(VIM-2710): Show options value on set opt
2022-07-20 09:56:23 +03:00
Alex Plate
8bc616cc55
New vim behaviour: ci(
searches for brackets
...
Change in vim:
b9115da4be
https://github.com/vim/vim/pull/8670
VIM-2699
2022-07-14 12:08:26 +03:00
Alex Plate
1998221a0b
Remove useless @NotNull annotations
2022-07-13 10:26:57 +03:00
Alex Plate
a9b1625749
Update deprecated action listeners
2022-07-13 10:26:16 +03:00
Alex Plate
b411836570
Hide macos notification during UI testing
2022-07-13 09:23:35 +03:00
Alex Plate
ee4ce5033a
Fix tests
2022-07-11 11:09:43 +03:00
Alex Plate
97f5c9225e
Cleanup the sources
2022-07-08 11:24:10 +03:00
Alex Plate
c011628420
Reformat code
2022-07-08 09:14:43 +03:00
Alex Plate
bc6c726a45
Fix macro with count execution
2022-07-07 14:35:49 +03:00
Alex Plate
dfc3df713e
Update changelog
2022-07-07 12:22:46 +03:00
Alex Plate
0d9b81eab3
Update minimal version of IJ
2022-07-07 10:02:14 +03:00
Alex Plate
2b32cb26b1
Set since version in config
2022-07-06 20:39:30 +03:00
Alex Plate
0746dcc686
Fix some neovim tests
2022-07-06 19:41:05 +03:00
filipp
3bf68a2bb8
Update formatting
2022-07-06 13:11:11 +06:00
Alex Plate
3cf8ae52ed
Add link to the docs
2022-07-06 09:30:25 +03:00
Matt Ellis
62632a4514
Improve handling of fractional width fonts
2022-07-06 09:29:36 +03:00
Alex Plate
249bd3778a
Add a note about refactoring
2022-07-06 09:14:52 +03:00
filipp
ab9e5d7a4a
Fix selection issue with oldundo
set
2022-07-06 12:12:55 +06:00
filipp
083b7dc952
Fix(VIM-2698) Undo causes confirmation dialog to reappear forever
2022-07-06 11:35:29 +06:00
Alex Plate
ba23c9ab5e
Rename variable service
2022-07-05 11:27:53 +03:00
Alex Plate
51e7c745ea
Move number option to a different package
2022-07-05 10:26:14 +03:00
Alex Plate
7eae7a98e8
Command state compatibility
2022-07-05 10:05:02 +03:00
Alex Plate
fe9566eebd
Convert helper to kt
2022-07-04 10:59:24 +03:00
Alex Plate
b69756730f
Rename .java to .kt
2022-07-04 10:59:23 +03:00
Alex Plate
6cd1a60b53
More compatibility
2022-07-04 10:33:31 +03:00
Alex Plate
9d935e47b5
Move compatibility
2022-07-04 09:49:50 +03:00
Alex Plate
a7d5372d06
Move classes to a different package
2022-07-04 09:49:50 +03:00
Alex Plate
a575942c81
Compatibility
2022-07-04 09:49:50 +03:00
Alex Plate
6f5def0abf
Update formatting
2022-07-03 00:19:25 +00:00
filipp
f0fcd7f133
Better offset for multiple carets with surround
2022-07-02 18:59:21 +06:00
filipp
6115adb72e
Add registers to carets
2022-07-02 18:51:10 +06:00
filipp
bfd0b5fd91
Merge remote-tracking branch 'origin/master'
2022-07-02 11:21:33 +06:00
Alex Plate
c7ebce39bf
Make options compatible
2022-07-01 16:10:13 +03:00
Alex Plate
a0dc7a792f
Add more compatibility methods
2022-07-01 15:55:07 +03:00
Alex Plate
5c82d112c9
More compatibility methods
2022-07-01 10:05:13 +03:00
Alex Plate
40fd50d7f1
Add midding import
2022-07-01 09:27:07 +03:00
Alex Plate
f7b948fee2
Add CommandState compatibility layer and rename our main CommandState to VimStateMachine
2022-07-01 09:04:27 +03:00
filipp
f3025757b6
Merge remote-tracking branch 'origin/master'
2022-06-30 11:02:41 +06:00
Alex Plate
2ac4b265d1
Add compatibility method
2022-06-29 16:30:26 +03:00
Alex Plate
46e994b563
Fix incorrect inheritance
2022-06-29 11:42:21 +03:00
Alex Plate
81482bd298
Add more compatibility changes
2022-06-29 11:25:11 +03:00
Alex Plate
f1a239c085
Make compatibility function public
2022-06-29 10:42:04 +03:00
Alex Plate
a48e38de7b
Make function static
2022-06-29 10:25:41 +03:00
Alex Plate
0aaacee117
Add more classes for compatibility
2022-06-29 09:54:50 +03:00
Alex Plate
b8373af69f
Move MappingMode to a different package
2022-06-29 09:54:49 +03:00
Alex Plate
e99b2ee73d
Add new method for compatibility
2022-06-29 09:54:49 +03:00
Alex Plate
7e79d5a960
Add method for compatibility
2022-06-28 11:13:54 +03:00
filipp
4dc7982baa
(EA-480768) Better exception message
2022-06-27 16:19:45 +06:00
Alex Plate
d77c5bb5cf
Update formatting
2022-06-26 00:20:17 +00:00
Alex Plate
a3ca1b965b
Fix(VIM-2691): Save file on :w
2022-06-24 08:26:02 +03:00
filipp
46ea752164
Add tolower()
, toupper()
, join()
2022-06-24 02:58:41 +06:00
b50197f7ce
Fix(VIM-2227): Wrong behavior when deleting / changing surround with invalid character
2022-06-23 18:19:28 +03:00
Alex Plate
9eaf8b5d2d
Move some other methods to vim-engine
2022-06-22 18:36:08 +03:00
filipp
e365d0b07c
Unsubscribe document listener in UndoRedoHelper
2022-06-20 03:26:40 +06:00
filipp
69c273c4a5
Track more actions
2022-06-19 01:07:18 +06:00
filipp
7c1ae9812e
Update formatting
2022-06-18 06:26:11 +06:00
filipp
5c794ac40e
Fix(VIM-749) Support for :let command
2022-06-18 06:21:26 +06:00
filipp
9dbe3c3363
Fix(VIM-308) Undo requires one more step if the cursor is not at the position where it was after undo
2022-06-16 18:50:42 +06:00
filipp
8a98f46235
Move mapDepth to MappingState
2022-06-15 16:22:31 +06:00
filipp
9ed8db4d4a
Add oldundo
option
2022-06-15 16:06:47 +06:00
Alex Plate
5b94276836
Move more methods to vim-engine
2022-06-15 12:58:15 +03:00
filipp
f1e427e2ff
Fix command history
2022-06-14 22:10:04 +06:00
filipp
412b60d6b4
Fix selection after undo
2022-06-14 18:36:14 +06:00
Alex Plate
11d9ef7507
Partially move change group to vim-engine
2022-06-14 10:31:23 +03:00
Alex Plate
38ed9c206a
Fix compilation
2022-06-13 12:53:05 +03:00
Alex Plate
8235a649a1
Move VisualMotionGroup to vim-engine
2022-06-13 12:53:05 +03:00
Alex Plate
09efdd076e
Remove unused method
2022-06-13 12:53:05 +03:00
Alex Plate
350e9cfca2
Fix(VIM-2595): Support plugins in macro execution
2022-06-10 15:27:03 +03:00
Alex Plate
5639edf173
Refactor mapping stack
2022-06-10 15:27:03 +03:00
Alex Plate
f72313df9c
Fix(VIM-2671): Fix using plugins from mappings
2022-06-10 15:27:03 +03:00
filipp
f52eb5e124
Update formatting
2022-06-10 00:07:27 +06:00
filipp
5da9c5e1cd
Move variableService logic to base class
2022-06-09 23:54:43 +06:00
filipp
53fdd891fb
Move optionService logic to base class
2022-06-09 02:17:40 +06:00
Alex Plate
fe66d06ce2
Move VimMark to vim-injector
2022-06-08 12:06:45 +03:00
Alex Plate
b6e917a2d7
Get rid of DialogDataContext
...
Actually, it was removed for some time already.
Caused this exception: https://web.ea.pages.jetbrains.team/#/issue/533401
2022-06-07 16:40:38 +03:00
Alex Plate
a6a39d249b
Move key group to vim-engine
2022-06-07 15:53:31 +03:00
Alex Plate
518784c371
Use ShortcutOwnerInfo in savedShortcuts
2022-06-07 15:53:30 +03:00
filipp
51c50cb902
Update formatting
2022-06-07 04:00:06 +06:00
filipp
6355d7765e
Add documentation to OptionService.kt and fix some exception messages
2022-06-07 03:59:23 +06:00
filipp
f62575c870
Fix bugs with appending/prepending/removing value from string option
2022-06-07 01:09:19 +06:00
filipp
01e367cadf
Delete deprecated OptionsManager.kt
2022-06-07 01:08:10 +06:00
Alex Plate
e248bb5565
Update formatting
2022-06-05 00:23:42 +00:00
filipp
3b3a036806
Remove StringHelper.kt & CommonStringHelper.kt
2022-06-03 22:22:49 +06:00
Alex Plate
ccf48d1e53
Add some more notes to injector about it's status
2022-06-01 13:59:51 +03:00
filipp
eb536766db
Fix exception during parsing of empty stings
2022-05-30 15:34:17 +06:00
Alex Plate
f3b6687d79
Update kotlin version
2022-05-30 11:22:24 +03:00
Alex Plate
7332cd1ed1
Start implementing Troubleshooter
2022-05-30 09:52:11 +03:00
Alex Plate
7726f4347b
Unmap removed mappings after using ReloadVimRc action
2022-05-30 09:52:11 +03:00
Alex Plate
ee092d988b
Update formatting
2022-05-29 00:17:16 +00:00
filipp
f3b4933ef2
Fix number options
2022-05-25 19:33:40 +06:00
Alex Plate
c6fdf9cdf4
[VIM-2643]: Implement a redo-register feature
2022-05-25 11:30:55 +03:00
Matt Ellis
d7c4e4a8dd
Add support for "-Command" flag for powershell
...
Fixes VIM-2622
2022-05-25 11:30:36 +03:00
Matt Ellis
b7c54d02cb
Fix minor scroll bug
...
If caret is less than 'sidescrolloff' columns from the left of the screen, moving down one line will animate. Greater than 'sidescrolloff' does not animate. This is because the scroll model tries to scroll to a negative horizontal offset, to try and put the caret in the middle of the screen. This isn't possible, but the scroll model sees a large enough distance to trigger an animation.
2022-05-25 11:30:36 +03:00
Alex Plate
831e4e8c42
Fix services initialization in VimInjectorBase
2022-05-24 13:49:01 +03:00
Alex Plate
329722f338
Turn off experimental api
2022-05-24 13:05:12 +03:00
filipp
47d4aee986
Support return
without expression
2022-05-23 22:47:47 +06:00
filipp
938325b93e
Update formatting
2022-05-23 21:02:39 +06:00
filipp
4ff7e9aefa
Move some logic to base classes
2022-05-23 21:00:32 +06:00
filipp
f52792e7f0
Move Regexp from engine
2022-05-23 00:10:57 +06:00
filipp
cbc6662ef7
Update formatting
2022-05-08 21:10:40 +06:00
filipp
26ffc2ad32
Move some classes to vim-engine
2022-05-08 21:09:52 +06:00
filipp
df32e573b0
Move some classes to vim-engine
2022-05-08 15:49:53 +06:00
filipp
19647d96b2
Move some classes to vim-engine
2022-05-08 12:23:14 +06:00
Alex Plate
b1714a2fc1
Update formatting
2022-05-08 00:16:10 +00:00
filipp
83199d5475
Move some classes to vim-engine
2022-05-07 22:45:52 +06:00
Alex Plate
4c0af66dff
Update formatting
2022-05-01 00:20:06 +00:00
Alex Plate
b82f1e6602
Move more classes to vim-engine
2022-04-27 10:40:44 +03:00
Alex Plate
4104258219
Move playbackregister to vim-engine
2022-04-26 14:21:10 +03:00
Alex Plate
11054f908b
Move some classes from file package to vim-engine
2022-04-26 10:02:23 +03:00
Alex Plate
385bcbc383
fix(VIM-2604): Update action execution rules
2022-04-25 14:41:32 +03:00
Alex Plate
62c79e1470
Move yank package to vim-engine
2022-04-25 09:45:48 +03:00
Alex Plate
1a99918819
Move some put actions to vim-engine
2022-04-25 09:45:48 +03:00
Alex Plate
7e3a9e0b38
Move window actions to vim-engine
2022-04-25 09:45:48 +03:00
Alex Plate
f51d74f2b8
Use correct name of notifications toolwindow for Track Action Ids
2022-04-25 09:45:24 +03:00
Alex Plate
987cba6072
Change implementation of configurable for lazy loading
2022-04-25 09:45:24 +03:00
Alex Plate
770e6371df
Rename .java to .kt
2022-04-25 09:45:24 +03:00
filipp
3ef86186eb
Fix parsing strings with \r
in the end
2022-04-25 00:30:56 +06:00
Alex Plate
ac41890759
Update formatting
2022-04-24 00:15:29 +00:00
Matt Ellis
9a06ee97c4
Refactor CaretVisualAttributesHelper
2022-04-21 10:36:15 +03:00
Matt Ellis
d7dfc6dc05
Remove pre-212 caret attribute helpers
2022-04-21 10:36:15 +03:00
Alex Pláte
5a6de3afaa
Merge pull request #493 from citizenmatt/feature/commentary
...
Improvements to Commentary extension
2022-04-21 10:28:30 +03:00
Matt Ellis
cd242511a8
Fallback to line comment if block is unavailable
...
Fixes VIM-2381
2022-04-20 12:37:11 +01:00
Matt Ellis
acc7d0954d
Maintain old mappings for compatibility
2022-04-20 00:16:22 +01:00
Alex Plate
330d64c7cb
Move mark package to vim-engine
2022-04-19 18:43:33 +03:00
Alex Plate
673e43dd77
Move scroll package to vim-engine
2022-04-19 10:20:15 +03:00
Alex Plate
c2c5c60899
Move select package to vim-engine
2022-04-19 09:56:38 +03:00
Matt Ellis
7d5176829b
Merge branch 'master' into feature/commentary
2022-04-18 17:12:02 +01:00
Matt Ellis
fd0dc0d445
Remove unnecessary setting of sub mode
2022-04-15 13:36:44 +01:00
Matt Ellis
be11317667
Use comment actions instead of low level handlers
2022-04-13 10:53:25 +01:00
Matt Ellis
22fce51640
Fix Exchange tests after operator changes
...
OperatorAction no longer normalises linewise ranges, but Exchange doesn't need this
2022-04-12 23:47:46 +01:00
Matt Ellis
4223da47d6
Refactor and simplify Commentary objects
...
Also introduces Visual support for the `g@` operator action
2022-04-12 22:05:48 +01:00
Matt Ellis
64100fea59
Add Commentary command
2022-04-12 16:53:21 +01:00
Matt Ellis
2244c65233
Reposition caret after commenting
2022-04-12 16:26:28 +01:00
Matt Ellis
e08bffd7ba
Add gcu mapping
2022-04-12 15:33:24 +01:00
Matt Ellis
0d5aa52af2
Add gc text object
...
Fixes VIM-2589
2022-04-12 15:33:23 +01:00
filipp
e617fc4c34
Move some classes from vimscript package to engine
2022-04-10 15:57:46 +06:00
Alex Plate
c34a7f123d
Update formatting
2022-04-10 00:15:21 +00:00
Matt Ellis
cc029fc98e
Implement gcc as gc_ motion
...
gcc now respects count
Fixes VIM-1687
2022-04-08 16:50:10 +01:00
Matt Ellis
feae15c48c
Use same mapping as Commentary plugin
2022-04-08 16:47:54 +01:00
Matt Ellis
07485727c4
Use Kotlin helper functions
2022-04-08 16:46:08 +01:00
Matt Ellis
8b0ad7680b
Rearrange code
2022-04-08 16:44:04 +01:00
Matt Ellis
43d70cd467
Convert to Kotlin
2022-04-08 16:35:03 +01:00
Matt Ellis
d73b605ef0
Rename Java to Kotlin
2022-04-08 16:32:59 +01:00
Alex Plate
2fbab395f1
Fix incorrect code
2022-04-08 09:54:43 +03:00
filipp
a9fd32f64e
Move some actions from change.insert
2022-04-07 23:49:18 +06:00
filipp
da7a2226d4
Move actions from change.shift
2022-04-07 23:49:18 +06:00
filipp
44b37339dc
Moved actions from change.delete
2022-04-07 23:49:18 +06:00
filipp
713c3f0a3c
Moved some actions from change.change package
2022-04-07 17:50:10 +06:00
Martin Yzeiri
8ab3664992
Matchit: Add CMake Patterns
2022-04-07 11:55:31 +03:00
Martin Yzeiri
03e6101747
Matchit: Add GNU Make Patterns
2022-04-07 11:55:31 +03:00
Martin Yzeiri
9f47995c10
Matchit: Add C patterns
2022-04-07 11:55:31 +03:00
Martin Yzeiri
d58f36ea1a
Matchit: Enhance pattern creation
...
The new LanguagePatterns class lets us easily configure the patterns for
a language in a similar way to the original plugin. Most language
features can be configured by passing strings to the alternate
constructor. And the overloaded + operator makes combining patterns easy.
findMatchingPair() was refactored to work with the new class.
In addition, the concept of prefixes was removed. The cursor should jump
if it's anywhere inside or before an extended pair (excluding the
default pairs). Instead of appending a prefix to each regex, we simply
check in findMatchingPair() what the closest pair to the cursor is. The
original plugin behaves the same way.
We prefer matches containing the cursor over matches after the cursor.
If the cursor in inside multiple patterns, we pick the smaller one. And
a default pair after the cursor is preferred over any extended pairs
after the cursor.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
442970a986
Matchit: Refactor parsePatternAtOffset()
...
The ending offset of the initial match isn't enough information for some
language features. For example, if the cursor is on "i" in the "else if"
of a Makefile, the previous implementation would jump to the "else" on a
reverse jump instead of treating "else if" as a single structure.
parsePatternAtOffset() needs to return both the match start and end for
us to correctly handle such a distinction.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
fcc6c8a3c5
Matchit: Simplify findClosingPair() and findOpeningPair()
...
findClosingPair() always moves forward and findOpeningPair() always
moves backwards. That fact lets us simplify both implementations.
Using a stack of Pairs to track the match starts and ends is unnecessary
since we know ahead of time whether the jump needs to go to the start or
end of the target pair.
findOpeningPair() can be further simplified since it doesn't need to
check the isInOpPending flag -- the distinction between operator pending
mode and regular jumps only matters when moving forward in the buffer.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
1dbd4b4391
Matchit: Use setOf for sets
2022-04-07 11:55:31 +03:00
Alex Plate
4ecfb796d4
Move some classes of scroll package to vim-engine
2022-04-04 23:53:14 +03:00
Alex Plate
de9fa81da3
Move objects to vim-engine
2022-04-04 23:53:14 +03:00
Alex Plate
351e3b15ea
Move leftright package to vim-engine
2022-04-04 22:48:41 +03:00
Alex Plate
2b9b48ac2f
Split PutGroup into base class
2022-04-03 23:48:21 +03:00
Alex Plate
7c4ac5f561
Move toggle recording to vim-engine
2022-04-03 23:39:41 +03:00
Alex Plate
def09b0be8
Update formatting
2022-04-03 00:15:00 +00:00