Matt Ellis
bf32c5d5b5
Render control characters in ex cmdline
2025-07-21 18:43:28 +03:00
Matt Ellis
6e6cd722d4
Support insertion of control chars in command line
...
Fixes VIM-3907, fixes VIM-239
2025-07-21 18:43:28 +03:00
Matt Ellis
356b4ed8c4
Remove unnecessary mouse listener
2025-07-21 18:43:28 +03:00
Matt Ellis
84a3d0457d
Simplify and document keymap handling
...
All key handling is done with the Vim pipeline, so make sure we don't have any Swing key bindings registered. This is quite confusing, so document what's going on
2025-07-21 18:43:28 +03:00
Matt Ellis
d4f4f7661c
Remove unnecessary action registration
...
We don't have any custom actions, so there's nothing to register
2025-07-21 18:43:28 +03:00
Matt Ellis
654b95147b
Simplify command line keystroke dispatching
...
Pass the keystroke to the key handler directly rather than relying on the superclass to call a default action handler that would do the dispatching
2025-07-21 18:43:28 +03:00
Matt Ellis
a2fb8acd47
Remove obsolete ExShortcutKeyAction
...
All CMD_LINE actions are registered the same as other Vim commands, which means all shortcuts are already registered with the IDE's action system. The existing VimShortcutKeyAction class will dispatch shortcuts to the key handler, where they will be handled as real CMD_LINE actions.
2025-07-21 18:43:28 +03:00
Matt Ellis
b284deb1b7
Extract some state and accessors out of text field
...
Encapsulate text field a little better
2025-07-21 18:43:28 +03:00
Matt Ellis
56e6ecca89
Update history command and add tests
2025-07-21 18:43:28 +03:00
Matt Ellis
055a3bc910
Remove deprecated and unused history related code
2025-07-21 18:43:28 +03:00
Matt Ellis
e2b50809ac
Fix warning of renamed parameter
2025-07-21 18:43:28 +03:00
Matt Ellis
40ff54c47f
Remove non-Vim key bindings from ex command line
...
Shift+Insert and Alt+V for paste. These are non-standard, not documented and can be added with `cmap` if required
2025-07-21 18:43:28 +03:00
Matt Ellis
1638bc304d
Improve input method highlighting in ex field
2025-07-21 18:43:28 +03:00
Alex Plate
1482ac0335
Fix(VIM-3970): Get rid of VimStandalonePluginUpdateChecker
2025-07-18 16:03:59 +03:00
zuberol
07990847c6
Merge pull request #1223 from JetBrains/feat/VIM-3791-nerdtree-gg-G-jumps
...
Feat(VIM-3791): support for "G" and "gg" motions inside the NERDtree
2025-07-17 11:44:07 +02:00
Xinhe Wang
2f7f0dcacb
Fix(VIM-3044): correct the behavior of I in (linewise) Visual mode
...
For visual selections spanning multiple lines, keep caret position
if it's on the first line. Otherwise move the caret to the start of
the first selected line.
2025-07-07 10:55:30 +03:00
Xinhe Wang
af9023af4b
Rename insertBeforeCursor and insertAfterCursor helpers
...
The terminology used in IntelliJ is "caret".
2025-07-07 10:55:30 +03:00
Xinhe Wang
0803a1c195
Fix(VIM-2413): correct the range of line-wise case change commands
...
The start of the range is the leftmost non-whitespace character
OR the current position, whichever is closer to the left.
2025-07-03 17:25:38 +03:00
Xinhe Wang
2377408028
Fix(VIM-2142): support gU and gu in VISUAL mode
...
Note that this implementation assumes that the 'gU' / 'gu' command in
visual mode is equivalent to 'U' / 'u'. While 'v_gU' and 'v_gu' are not
explicitly documented in Vim help, we treat these commands as identical
based on observed behavior, without examining Vim's source code.
2025-07-02 18:56:29 +03:00
Alex Plate
246425b1fb
Mark IdeaVim as a plugin that supports vim configuration
...
In this way, we'll be able to actively promote IdeaVim as a suggested plugin in the IDE.
GO-17806
2025-06-27 19:43:08 +03:00
Jakub
4eadfc1fba
feat: support for "G" and "gg" motions inside the NERDtree
2025-06-27 13:51:44 +02:00
Alex Plate
75cd79312c
Which-Key plugin don't use VimShortcutKeyAction anymore, so we can hide it
...
The change was here: 2a1191a260
2025-06-06 17:02:35 +03:00
Thomas Canava
b868e0cb81
test: Update tests to match new keys
2025-06-06 15:34:44 +03:00
Thomas Canava
30c972ee1e
fix: Vim macro not working with arrows
2025-06-06 15:34:44 +03:00
761f6f5fb9
Implement pumvisible() function
2025-06-06 15:21:26 +03:00
Matt Ellis
1e3738314a
Add support for := to print line number
...
Fixes VIM-3921
2025-06-06 15:15:13 +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
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
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
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
ab635972cc
Remove a lot of deprecated methods in IdeaVim
2025-05-09 12:58:47 +02:00
Matt Ellis
fd5af31247
Report cannot track intention action
...
If an alt+enter intention is invoked from Search Everywhere, IdeaVim's Track Action ID shows "Cannot detect action ID" instead of explaining that there is no action ID.
Relates to VIM-2541
2025-05-09 12:11:11 +02:00
Matt Ellis
df74b75570
Stop switching fragment editors to Insert mode
...
Fixes VIM-1217
2025-05-09 12:10:10 +02:00
Vladimir Parfinenko
c74163e917
Fix case settings in replacement string, VIM-3510
...
^VIM-3510 fixed
2025-05-09 12:08:01 +02:00
Vladimir Parfinenko
d38b2885ba
Fix missing backreferences in replacement string, VIM-3895
...
^VIM-3895 fixed
2025-05-09 12:08:01 +02:00
Vladimir Parfinenko
61666d1cfd
Always print float numbers using period as a decimal separator, VIM-3894
...
^VIM-3894 fixed
2025-05-09 12:02:56 +02:00