Matt Ellis and lippfi
0c867b3869
Make some CommandBuilder properties immutable
2024-07-23 23:08:24 +03:00
Matt Ellis and lippfi
b3bcab4336
Refactor DigraphResult to sealed classes
2024-07-23 23:08:24 +03:00
Matt Ellis and lippfi
fe1b48a9b3
Refactor digraph prompt handling
2024-07-23 23:08:24 +03:00
Matt Ellis and lippfi
b5a0862520
The last command part is the current one
2024-07-23 23:08:24 +03:00
Matt Ellis and lippfi
babc1f54e5
Return the last valid register if it exists
...
The last command part is not guaranteed to be a "select register" part. The user might have selected a register then typed an operator, and we might be waiting for a motion.
2024-07-23 23:08:24 +03:00
Matt Ellis and lippfi
32b910a65b
Remove unused functions and properties
2024-07-23 23:08:24 +03:00
Alex Plate
4a85058ba2
Start using kotlin 2.0
...
Originally this is needed to update the dependency on AceJump, which uses the kotlin 2.0 compiler, and its classes are not compatible with the old compiler
2024-07-19 17:13:59 +03:00
Filipp Vakhitov
5588c27037
Attempt to fix VIM-3540
...
I'm not sure what causes the issue, but everything was working when we were updating visual attributes per each caret and... let update them per each caret
2024-07-17 14:45:50 +03:00
Filipp Vakhitov and Alex Pláte
d46102ccaf
Remove deprecated method from vim-engine
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
bf6517e58f
Add comment
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
aec2f4c435
Remove isCancel argument
...
It was not used anywhere
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
8f905758d5
Remove typing in ModalInput
...
Typing is more suitable for command lines than a modal input, and most likely it should be used instead
It is still possible to support typing by properly implementing the handleKey method
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
80cc236f48
Remove modal input on click
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
e432a02a45
Remove confirmChoice method
...
It used secondary loop
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
d7894fa7f4
ProcessSubstituteCommand refactoring part 9
...
Finally, moved confirmation dialog to modal input
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
853d7032f0
ProcessSubstituteCommand refactoring part 8
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
5f9f57e1c0
ProcessSubstituteCommand refactoring part 7
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
f4381c8216
ProcessSubstituteCommand refactoring part 6
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
20eee7cae7
ProcessSubstituteCommand refactoring part 5
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
33392c2148
ProcessSubstituteCommand refactoring part 4
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
bb67564fbe
ProcessSubstituteCommand refactoring part 3
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
61ccbcd788
ProcessSubstituteCommand refactoring part 2
...
We do not need the `doAll` condition (because the next code block with `doAll` adjusts line and column for the next match to be correct),
And the line2 can't be >= editor.lineCount()
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
1dbaa3be6d
ProcessSubstituteCommand refactoring part 1
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
872bc22830
Remove shouldRecord from KeyConsumer
...
shouldRecord value was only updated in ModeInputConsumer when the key was not handled. But when the key is not handled, it is not passed to finishedCommandPreparation and the shouldRecord value is not used
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
ce23ed814c
Move command line key handling logic to KeyConsumer
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
82cd534756
Remove startExEntry method
...
We may create a command line via the VimCommandLineService and forget (or do not know) about calling startExEntry necessary. So we move its logic inside the creation of the command line
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
673809d6b9
Move lastCommand to CmdFilterCommand
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
cdbaf73b1e
Remove unused fields from VimProcessGroup
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
7f911b7e72
Fix VisualAreaMatcher
...
It looks for the last selection info in all conditions, not the ones that were specified
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
75935ce4d1
Add readInputAndProcess to replace inputString and save us from using secondary loop
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
f0b203409e
Replace cancelExEntry with close method in VimCommandLine
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
b3b369eb59
Remove unnecessary write action
...
`insertRegister` is self synchronized
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
96072982cf
Replace deprecated inputString() with ModalInput
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
149edefad5
Delegate handling closing keystrokes to implementations
...
Sometimes it may mean aborting interception (CTRL-C), sometimes finishing it (CR)
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
52d3840c83
Rename argument
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
793677d4fd
Add typeText() method to VimModalInput
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
68dcab6262
Introduce ModalInput to get rid of Swing's secondary loop
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
f38fd3512c
Fix passing key to editor when the output panel is scrolled to its end
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
e515278ba3
Add label field to VimOutputPanel
2024-07-17 13:30:54 +03:00
Filipp Vakhitov and Alex Pláte
9cc69e41ee
Add KeyHandling logic to VimOutputPanel
2024-07-17 13:30:54 +03:00
Filipp Vakhitov
2109ff235c
Fix tests
2024-07-16 20:32:11 +03:00
Filipp Vakhitov
8369391902
Fix(VIM-3530): "Yank inner block"/"Change inner block" uses wrong block
2024-07-16 18:47:58 +03:00
Alex Plate
3465e11c3a
Initialize the injector in multiple entry points of IntelliJ
...
Initially, injector was initialized in VimPlugin, assuming that almost every interaction with the plugin goes through it. However, with the plugin evolution, this class starts to be less used.
As IJ doesn't have any single entry point for the plugins, we initialize it in multiple places.
However, the architecture where the plugin might be not initizlied is considered as a bad acrhitecture and should be reviewed.
Related ticket: VIM-3369
2024-07-12 15:09:18 +03:00
dependabot[bot] and github-actions[bot]
ca3e56d0d6
Bump org.mockito.kotlin:mockito-kotlin from 5.3.1 to 5.4.0
...
Bumps [org.mockito.kotlin:mockito-kotlin](https://github.com/mockito/mockito-kotlin ) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/mockito/mockito-kotlin/releases )
- [Commits](https://github.com/mockito/mockito-kotlin/compare/5.3.1...5.4.0 )
---
updated-dependencies:
- dependency-name: org.mockito.kotlin:mockito-kotlin
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-10 18:21:34 +03:00
filipp and lippfi
ea98e50f65
Sometimes safety is a bad thing
2024-07-08 13:09:08 +03:00
filipp and lippfi
168174e383
Add missing resetOpPending to KeyHandler.reset
2024-07-08 13:09:08 +03:00
filipp and lippfi
53cd4e1b88
Remove KeyHandlerStateResetter
...
It's an oneliner that we can live without
2024-07-08 13:09:08 +03:00
filipp and lippfi
27e3561bb8
Safer VimListenersNotifier
2024-07-08 13:09:08 +03:00
filipp and lippfi
9bb9cb13e3
Fix possible bug in the ExOutputModel.show() method and add documentation
2024-07-08 13:09:08 +03:00
filipp and lippfi
16455f7241
Remove the update() method from VimOutputPanel
2024-07-08 13:09:08 +03:00