Alex Plate
b205f87902
Disable tests for options for split window
...
The behaviour of FileEditorManagerEx.split has been changed, causing the tests to fail. This should be fixed in a separate commit
2024-09-05 18:57:12 +03:00
Alex Plate
314304246a
Fix the LATEST-EAP-SNAPSHOT tests
2024-09-05 17:10:14 +03:00
Alex Plate
785688b1ca
Fix compatibility in tests with 2024.2
2024-09-05 16:42:16 +03:00
IdeaVim Bot
4c09ab4766
Add Felix Wiemuth to contributors list
2024-08-31 09:01:59 +00:00
Alex Plate
ee447bce07
Add a note to replace the raw string after the changes will be available
...
https://github.com/JetBrains/intellij-community/pull/2825
2024-08-30 18:57:00 +03:00
Alex Plate
5fb4c10f88
Add 2024.2 IJ for testing on TC
2024-08-30 18:42:02 +03:00
Alex Plate
ed2fcb08b0
[VIM-3620] Add a link to the usage survey
2024-08-30 18:34:10 +03:00
dedd90ce13
Fix(VIM-3615): Escape closes dialog while waiting for more keys
2024-08-30 16:46:53 +03:00
Alex Plate
73326e623e
Use the behavior form in docs
2024-08-30 16:42:03 +03:00
Alex Plate
a2bc34d6ec
[VIM-3620] Show the uninstall survey only when uninstalling IdeaVim
2024-08-30 16:41:36 +03:00
Felix Wiemuth
b652c7726a
Fix typo
2024-08-30 16:41:05 +03:00
Matt Ellis
fb7a2de07b
Encapsulate the command builder's state flag
...
This also gets rid of BAD_COMMAND, which was set but never checked - the function that set the flag would immediately reset the command builder
2024-08-30 16:36:24 +03:00
Matt Ellis
def9ca479b
Ensure builder resets to a root command trie node
...
Also refactors command nodes a bit for better debug/trace output
2024-08-30 16:36:24 +03:00
Matt Ellis
0936e0761f
Reorder CommandBuilder methods
...
Try to keep related functions together: awaiting arguments, count, registers, adding action/argument, processing keystrokes, build, reset.
2024-08-30 16:36:24 +03:00
Matt Ellis
09a335bcfe
Start to encapsulate setting command builder state
...
Also rename `pushCommandPart` and `completeCommandPart`
2024-08-30 16:36:24 +03:00
Matt Ellis
37b8d69bac
Remove unused EMPTY_COMMAND
2024-08-30 16:36:24 +03:00
Matt Ellis
13308050a8
Remove unnecessary OperatorArguments parameters
2024-08-30 16:36:24 +03:00
Matt Ellis
a1a553ebc9
Deprecate OperatorArguments.mode
2024-08-30 16:36:24 +03:00
Matt Ellis
5bb0c4f7cb
Use editor.mode instead of OperatorArguments.mode
...
`OperatorArguments.mode` is the mode *before* the command was completed, rather than the current mode, which is non-obvious. E.g. for a command in Insert mode, it will still be Insert, and for a (simple) command in Normal, it will still be Normal. The only difference is that a command such as `dw` would be in Operator-pending before the command is completed. That logic is not required for this method, so it's safe to use the current mode.
This allows us to start to deprecate `OperatorArguments.mode`.
2024-08-30 16:36:24 +03:00
Matt Ellis
da6736f24a
Simplify the logic when yanking during delete
2024-08-30 16:36:24 +03:00
Matt Ellis
4df1ce2ae8
Remove OperatorArguments.mode usage in block insert
...
`OperatorArguments.mode` is the mode *before* the command is completed, so might be Visual, Operator-pending, Insert, etc. It's not immediately obvious this is the case, so we're going to deprecate `OperatorArguments.mode` to avoid confusion with `editor.mode`.
It's not required for this method because it's only called for Visual-block mode.
2024-08-30 16:36:24 +03:00
Matt Ellis
00fd4cd491
Handle op-pending for space and backspace
2024-08-30 16:36:24 +03:00
Matt Ellis
d185672e2f
Deprecate OperatorArguments.isOperatorPending
...
Register specific handlers for Operator-pending mode instead of relying on a runtime flag for behaviour. Also refactors and renames some arrow motion handlers.
2024-08-30 16:36:24 +03:00
Matt Ellis
55fef03a4a
Add 'whichwrap' to dictionary
2024-08-30 16:36:24 +03:00
Matt Ellis
69b3e4f782
Start to refactor OperatorArguments
2024-08-30 16:36:24 +03:00
Matt Ellis
6be29b0378
Remove KeyHandler.isOperatorPending
...
It's easier to just look at mode. We don't need the additional check on command builder, because we can't be in OP_PENDING without pushing an operator action to the command builder
2024-08-30 16:36:24 +03:00
Matt Ellis
9965c863a6
Encapsulate command node state in builder
2024-08-30 16:36:24 +03:00
Matt Ellis
3f11ae512c
Move register pending state to command builder
2024-08-30 16:36:24 +03:00
Matt Ellis
1c842eb3d8
Avoid exposing misleading count on command builder
2024-08-30 16:36:24 +03:00
Matt Ellis
c7fbce675b
Update comment
2024-08-30 16:36:24 +03:00
Matt Ellis
d7e68488c8
Make Command.rawCount immutable
2024-08-30 16:36:24 +03:00
Matt Ellis
69d13a74e6
Remove unnecessary copy method
2024-08-30 16:36:24 +03:00
Matt Ellis
5a83df34a7
Replace var properties with read only
2024-08-30 16:36:24 +03:00
Matt Ellis
0a18c388e0
Simplify CommandBuilder
...
Fixes selecting last register if multiple registers are used in a command
2024-08-30 16:36:24 +03:00
Matt Ellis
1a3409e7df
Remove count from motion argument
...
Only Command has a count. The motion argument is now a sealed class hierarchy, and consists only of the motion action and optional argument. This is to reduce confusion over which count to use, and potential incorrect calculation of the count
2024-08-30 16:36:24 +03:00
Matt Ellis
e93db961a0
Wrap offsets argument as an external action
2024-08-30 16:36:24 +03:00
Matt Ellis
8fd76bd08f
Refactor properties for sealed Argument classes
2024-08-30 16:36:24 +03:00
Matt Ellis
0eea4a5b2c
Introduce sealed classes to represent an argument
2024-08-30 16:36:24 +03:00
Matt Ellis
18a0c533e2
Remove unused OperatedRange type
2024-08-30 16:36:24 +03:00
Matt Ellis
0bd8d8f4d2
Remove unused digraph command flag
2024-08-30 16:36:24 +03:00
Alex Plate
64a89c8863
[VIM-3620] Add the uninstall survey
...
We're actively working on understanding the users and what we can improve in the plugin
2024-08-28 18:57:29 +03:00
Filipp Vakhitov
5b17d7740e
Update generated files after merging PRs
2024-08-25 21:51:14 +03:00
IdeaVim Bot
e406885ec6
Add Igor Babko to contributors list
2024-08-24 09:01:39 +00:00
filipp
9bbeab8062
VIM-2074 Backspace behaviour is incorrect in Replace mode
2024-08-23 14:22:48 +03:00
filipp
373bfc4eab
Add endOffset to LiveRange
2024-08-23 14:22:48 +03:00
filipp
050f2f7b97
Respect emojis and don't assume that every character is a single offset
2024-08-23 14:18:03 +03:00
Filipp Vakhitov
e30bc14843
Make closing command line safer
2024-08-23 14:18:03 +03:00
Filipp Vakhitov
76d590be11
Support more flexible command line restrictions for Fleet
2024-08-23 14:18:03 +03:00
Filipp Vakhitov
b005328b4a
Exclude generated files from .gitignore
...
I've also added sorting to be more confident that the generated file will be persistent across different machines
2024-08-23 14:18:03 +03:00
Filipp Vakhitov
ad20021cee
Remove currentAction and some unused code
2024-08-23 14:18:03 +03:00