Alex Plate
75cd79312c
Which-Key plugin don't use VimShortcutKeyAction anymore, so we can hide it
...
The change was here: https://github.com/TheBlob42/idea-which-key/commit/2a1191a260244decc3091f675adf21c2a8950a20
2025-06-06 17:02:35 +03:00
Alex Plate
77a106f9c6
Throw ProcessCanceledException instead of silently ignoring it in VimTypedActionHandler
...
This is a requirement from the platform
2025-05-30 19:41:41 +03:00
Alex Plate
1f66bdf5ed
Refactor tests in ChangeActionTest.kt for better readability by reformatting doTest calls and improving code style consistency.
2025-05-30 15:12:43 +03:00
Alex Plate
7c4cfe44ae
Remove unused MutableBoolean data class from KeyHandler
2025-05-30 14:20:25 +03:00
Alex Plate
b58c1a42d2
Remove unused mappingCompleted parameter from handleKey methods
...
This updates method signatures and removes the redundant parameter throughout the codebase. Adds a deprecated overload for backward compatibility.
2025-05-30 14:16:40 +03:00
Alex Plate
02fab15aa9
Add tests that verify the behaviour with oldundo flag
2025-05-28 16:45:06 +03:00
Alex Plate
6c9d85cce0
Add a big number of undo tests for macros
...
This is a part of work for VIM-3935. Since we'll have to change the `CommandProcessor` execution, this may affect the "undo" command behavior. To ensure the stability, we add undo tests before making a refactoring.
2025-05-28 12:40:56 +03:00
Alex Plate
360080e8c0
Enable some disabled tests
2025-05-28 12:14:08 +03:00
Alex Plate
e41831798e
Add a big number of undo tests for ex commands
...
This is a part of work for VIM-3935. Since we'll have to change the `CommandProcessor` execution, this may affect the "undo" command behavior. To ensure the stability, we add undo tests before making a refactoring.
2025-05-28 11:48:38 +03:00
Alex Plate
c93c9e539c
Add a big number of undo tests
...
This is a part of work for VIM-3935. Since we'll have to change the `CommandProcessor` execution, this may affect the "undo" command behavior. To ensure the stability, we add undo tests before making a refactoring.
2025-05-28 09:46:05 +03:00
Alex Plate
149e3f92ae
Update .gitignore to exclude local Claude settings file
2025-05-28 09:40:53 +03:00
Alex Plate
233bad0070
Turn off TeamCity emulation when running tests locally
...
IJ platform runs additional project leak checks when it detects teamcity run. It was quite complicated to understand why tests were failing on TC, but not locally, so I decided to enable TeamCity emulation to have these checks locally.
However, it turned out that in addition to that, an IJ platform also collects CPU statistics on TeamCity, which may take around a minute. This dramatically affects the performance of local execution. So, this property is turned off.
2025-05-28 09:38:54 +03:00
Alex Plate
b44308c9ef
Remove skipping of command execution if it happens not on the EDT
...
This requirement was a fix for VIM-318 introduced in ac654d70fa .
However, now we always run IdeaVim on EDT. Also, this check prevents the migration of IdeaVim to the background thread: VIM-3935
2025-05-27 18:30:16 +03:00
Alex Plate
8c612afed6
VIM-3929: Re-enable IdeaVim in diff editors
2025-05-27 13:07:43 +03:00
Alex Plate
2c057e937a
Fix(VIM-3929): IdeaVim is disabled in non-file based editors of IDE
...
This change should fix issues in Rider evaluate window and other places.
However, we may face small issues as IdeaVim will be disabled in more places than it used to be. However, this approach looks safer as before that we were disabling some random keys
2025-05-23 19:34:17 +03:00
Alex Plate
2548008116
Add missing switches to EDT during test
2025-05-23 17:14:26 +03:00
Alex Plate
c43eb1212e
Bring back CommandState to fix the compatibility with the external plugins
2025-05-23 16:53:01 +03:00
Alex Plate
4c11399b43
Bring the compatibility with the latest EAP version
...
Removed a single test on JSON. There are always problems with the json plugin in IJ. In 2025.2 EAP it was unbundled.
2025-05-23 16:48:37 +03:00
Alex Plate
18f3ba6fe1
Rethrow ProcessCancelledException
2025-05-23 16:22:04 +03:00
Alex Plate
2435136734
Remove vimscript roadmap file
2025-05-23 16:00:37 +03:00
Alex Plate
4d2a7df6b4
Cleanup readme file
2025-05-23 13:19:46 +03:00
Alex Plate
8e136bf769
Update list of supported IDEs
2025-05-21 12:31:29 +03:00
Alex Plate
be73e662bd
Change wording to JetBrains IDEs on the readme
...
This is a new proper name for the ide family
2025-05-21 12:30:46 +03:00
Alex Plate
e932fe2059
Add com.ugarosa.idea.edgemotion as a dependant plugin
2025-05-14 12:02:06 +03:00
Alex Plate
d3f248d2f9
Refactor reset to avoid service initialization during the dispose
2025-05-09 19:04:10 +02:00
Alex Plate
f623c1eef9
Fix(VIM-3784): Integrate a notification that will warn new GoLand users that they use IdeaVim
2025-05-09 18:39:17 +02:00
Alex Plate
f03734e235
Fix(VIM-3786): Disable IdeaVim in the AI assistant
2025-05-09 16:31:44 +02:00
Alex Plate
85acdc2e24
Fix(VIM-3881): Execute undo/redo directly for the remote dev scenarios
2025-05-09 16:20:27 +02:00
Alex Plate
afa70e20e1
Correct the rider test
2025-05-09 15:27:43 +02:00
Alex Plate
73f3d328c5
Try to wait longer till Rider will start
2025-05-09 13:51:40 +02:00
Alex Plate
df3224b02d
Start Rider with printing the logs to the output
2025-05-09 13:34:51 +02:00
Alex Plate
0e56a4e86e
Remove background Rider start to see the problem when loading
2025-05-09 13:32:22 +02:00
Alex Plate
66ce949cc5
Do not use installer for Rider tests
2025-05-09 13:00:50 +02:00
Alex Plate
ab635972cc
Remove a lot of deprecated methods in IdeaVim
2025-05-09 12:58:47 +02:00
Alex Plate
7fbf321cbd
Do not use installer for Rider tests
2025-05-09 12:17:13 +02:00
Alex Plate
d4c24fcc7f
Remove the outdated file with implemented vimscript functions
2025-05-09 12:17:12 +02:00
Alex Plate
35ddb21fe0
Fix the deprecated method use
2025-05-09 11:09:11 +02:00
Alex Plate
ccdd708907
Get rid of the old way of action execution
2025-05-08 18:22:40 +02:00
Alex Plate
73e61e0955
Get rid of hacks for Rider regarding esc and enter
2025-05-08 17:49:15 +02:00
Alex Plate
c3fa093d32
Upgrade the code to use the 2025.1 functions
2025-05-08 17:47:35 +02:00
Alex Plate
a94d509441
Remove other code deprecations
2025-05-08 17:33:41 +02:00
Alex Plate
12fd5bc79a
Remove deprecated functions
2025-05-08 17:20:58 +02:00
Alex Plate
235368c449
Remove old comments regarding vim-engine extraction
2025-05-08 17:20:00 +02:00
Alex Plate
57ecd25640
Refactor MacKeyRepeat.kt in order to remove the deprecated methods use
2025-05-08 17:18:17 +02:00
Alex Plate
09d37ebd38
Convert MacKeyRepeat to kotlin
2025-05-08 17:11:39 +02:00
Alex Plate
81bc3f1f1b
Rename .java to .kt
2025-05-08 17:11:39 +02:00
Alex Plate
9e3058dace
Code cleanup: remove some deprecations from the source code
2025-05-08 17:04:25 +02:00
Alex Plate
6819d4f96c
Add Mia Vucinic to the contributors list
2025-05-08 13:41:11 +02:00
Alex Plate
518eac1476
Fix the authors update script
2025-05-06 14:28:59 +02:00
Alex Plate
5bf2b51c5d
Add a comment about the change
2025-05-05 17:00:33 +02:00
Alex Plate
a9f9ae3727
Fix(VIM-3786): Make a workaround to fix shift-enter in AI chat
2025-04-29 19:36:05 +03:00
Alex Plate
8bfcd13c33
Fix(VIM-3882): Register the VimShortcutAction to the editor component instead of its wrapper
...
It turned out the editor.getComponent returns not the editorComponent, but the parent of the component. This caused no problems until the AI plugin started to register enter/esc on the editor component directly. Since an editor component is more specific than the component with vim actions, the vim shortcuts were suppressed.
In this change, we start to register shortcuts on the editor component directly, allowing them to properly work on the same level as AI shortcuts. This is also the level where the shortcuts are supposed to be registered.
2025-04-28 17:55:18 +03:00
Alex Plate
2cd5c9db72
Add Lejia Chen to the Authors list
...
Lejia was providing exceptional support for the IdeaVim project for two-plus years starting from 2023.
2025-04-28 11:45:15 +03:00
Alex Plate
2f33d41713
Update the minimal version of IJ to 251
2025-04-22 08:56:07 +03:00
Alex Plate
8247392dc3
Fix some compilation warnings
2025-04-16 22:12:36 +03:00
Alex Plate
c8504e1138
Fix warning about synchronization on primitive
2025-04-16 21:35:01 +03:00
Alex Plate
443e50b55f
Add tests for case changing
...
Mostly to highlight that commands in format `gugu` and `gUgU` don't work for the moment
2025-04-16 19:44:38 +03:00
Alex Plate
1891216182
Fix(VIM-3878): Support ROT13 command g?
2025-04-16 19:44:38 +03:00
Alex Plate
916afd31b2
Fix(VIM-3870): Add missing write actions
2025-04-16 18:54:22 +03:00
Alex Plate
5d2852420a
Remove the duplication method for existing the select mode
2025-04-15 09:20:00 +03:00
Alex Plate
13850f059d
Add a new plugin to the compatibility check
2025-04-04 18:43:03 +03:00
Alex Plate
3ddc75f5f0
Remove the call for the instrumentationTools as it's deprecated
2025-04-04 18:39:28 +03:00
Alex Plate
6c71698aae
Do not use the installer for some of the tests because currently it doesn't work on the installer with the new gradle plugin
...
It's unclear if this is a bug in the gradle plugin or misconfiguration
2025-04-04 18:38:29 +03:00
Alex Plate
8af848cef6
Fix(VIM-3861): Fix the debug action execution
2025-03-31 12:33:18 +03:00
Alex Plate
deca256e1c
Add clear conditions for property tests
2025-03-28 19:23:47 +02:00
Alex Plate
acbf1d7bd4
Update gradle wrapper
2025-03-28 19:05:55 +02:00
Alex Plate
9322e3b81b
Update intellij gradle plugin
2025-03-28 18:40:26 +02:00
Alex Plate
30f019aa18
Fix enter for Clion Nova
2025-03-28 15:35:33 +02:00
Alex Plate
543d8dbb13
Fix(VIM-3856): Disable new way of action execution for CLion
2025-03-28 14:05:53 +02:00
Alex Plate
2800b2d5fc
Fix(VIM-3857): Fix pasting for the client
2025-03-28 13:45:13 +02:00
Alex Plate
cd27ce8004
Fix(VIM-3852): Fix incorrect cast while checking the shortcuts
2025-03-28 13:27:59 +02:00
Alex Plate
6f3cf43bae
Make a few tests for Rider
...
This should cover VIM-3826 issues
2025-03-27 17:34:24 +02:00
Alex Plate
b043296cde
Fix(VIM-3826): Fix action execution in Rider 243 and older versions
...
It still doesn't work fine when executing in format `:action ReformatCode` in 243, but with 251 format updates from Rider, it should be fine.
2025-03-27 17:20:23 +02:00
Alex Plate
9beca20037
Click Activate during testing
2025-03-27 15:17:14 +02:00
Alex Plate
b882d60416
Trying to make Rider UI tests alive
2025-03-27 15:05:38 +02:00
Alex Plate
7144d73488
Mute a slow operation related to VIM-3648
2025-03-27 14:12:55 +02:00
Alex Plate
7c39e9e585
Fix the runForEachCaret exception
2025-03-14 17:40:19 +02:00
Alex Plate
60767fa908
Fix the path to python
2025-03-14 16:20:23 +02:00
Alex Plate
186feed8af
Try to use trial for Rider tests
2025-03-14 16:13:51 +02:00
Alex Plate
b3aaf75b48
Use different tracking marker for UI tests PyCharm
2025-03-14 16:06:18 +02:00
Alex Plate
2b1b4fc71e
Create UI test for Rider
2025-03-14 16:01:03 +02:00
Alex Plate
8a173c801c
Try not to wait till stripes to appear in UI tests for PyCharm
2025-03-14 15:38:27 +02:00
Alex Plate
38b5879d37
Use a new version of compatibility checker
2025-03-14 15:17:53 +02:00
Alex Plate
d0900fd0c5
Use a different way of waiting till the SDK is detected
2025-03-14 14:41:38 +02:00
Alex Plate
79d2040fcf
Wait longer till PyCharm will detect the SDK
2025-03-14 14:09:48 +02:00
Alex Plate
2c83403cb0
Add waiting for SDK detectors on PyCharm tests
2025-03-14 13:55:07 +02:00
Alex Plate
3f22c6f9e4
Create UI tests for Rider
2025-03-14 13:50:52 +02:00
Alex Plate
abdb6cb906
Fix(VIM-3825): Proper processing of enter for Rider & similar IDEs
2025-03-14 13:39:36 +02:00
Alex Plate
46f9aa4df2
UI Tests: Handle different name of the project tree for the different version of IJ
2025-03-14 12:47:40 +02:00
Alex Plate
5b8469c276
Use pattern matching in CI tests
2025-03-12 10:52:51 +02:00
Alex Plate
0729e9623b
Bring back the 2024.3.3 version of IdeaVim as a minimal supported version
2025-03-12 10:48:14 +02:00
Alex Plate
90b530e6db
Use a different approach for UI tests
2025-03-12 10:08:15 +02:00
Alex Plate
dcaef64494
Refactor the way of checking if copy text is presented in UI test
2025-03-11 20:19:53 +02:00
Alex Plate
b31f46d9f4
Update UI test
2025-03-11 19:06:52 +02:00
Alex Plate
bbab064281
With direct calls for the VimFindActionIdAction in UI tests, there is no need to open the GoToAction
2025-03-11 18:31:35 +02:00
Alex Plate
6f030eb8a6
Increase a timeout for waiting for Idea frame during UI tests
2025-03-11 18:05:52 +02:00
Alex Plate
d52d631799
Cleanup of the IjActionExecutor
2025-03-11 17:44:43 +02:00
Alex Plate
84b485c6bc
Use the proper context component when firing an action
2025-03-11 17:44:43 +02:00
Alex Plate
f76b07521e
Fix(VIM-3827): Fix an incorrect implementation of the >= operator
...
As a note: This is the first bug in IdeaVim that was fixed by AI (with manual verification, of course).
2025-03-10 10:50:26 +02:00
Alex Plate
55257e1017
Use VimTestCase in operator tests
...
Otherwise it was not possible to run just one test as the injector was not initialized
2025-03-10 10:42:08 +02:00