1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2025-11-04 19:22:19 +01:00
Commit Graph

5461 Commits

Author SHA1 Message Date
Matt Ellis
cb1c0298ff Improve exception handling in tests 2025-10-02 17:26:38 +03:00
Matt Ellis
56d5af6bc9 Allow assigning Float to Register 2025-10-02 17:26:38 +03:00
Matt Ellis
1dbe3e4aa1 Update RegisterExpression to assign value 2025-10-02 17:26:38 +03:00
Matt Ellis
7256731572 Rename Register to RegisterExpression 2025-10-02 17:26:38 +03:00
Matt Ellis
dc5b45a52d Update OptionExpression to match Vim behaviour 2025-10-02 17:26:38 +03:00
Matt Ellis
37b6768148 Rename LetCommand.variable to lvalue 2025-10-02 17:26:38 +03:00
Matt Ellis
5ce2887391 Extract and add tests for sublist expressions 2025-10-02 17:26:38 +03:00
Matt Ellis
4ab91150d6 Extract and add tests for indexed expressions 2025-10-02 17:26:38 +03:00
Matt Ellis
9ddd074916 Extract tests for let command with register lvalue 2025-10-02 17:26:38 +03:00
Matt Ellis
a321bb28c0 Extract tests for let command with option lvalue 2025-10-02 17:26:38 +03:00
Matt Ellis
8c9df332aa Add tests for let command with variable lvalue 2025-10-02 17:26:38 +03:00
Matt Ellis
356a748181 Add tests for let command operators 2025-10-02 17:26:38 +03:00
Matt Ellis
7fe01cd885 Add string() Vim function 2025-10-02 17:26:38 +03:00
Xinhe Wang
f25b9fd9bf Fix uppercase keys in NERDTree 2025-10-02 17:12:23 +03:00
Alex Plate
2c6638fe37 Introduce a common getChar implementation in the injector 2025-10-02 17:05:06 +03:00
Matt Ellis
b6ffc7a357 Use injector instead of directly using helper 2025-09-16 16:33:40 +03:00
Matt Ellis
6f259f5207 Extract E474 error message 2025-09-16 16:33:40 +03:00
Matt Ellis
a9e503d13f Extract error messages from code 2025-09-16 16:33:40 +03:00
Matt Ellis
5297193649 Assert full error message, not partial
There's no good reason to only check a partial match. Make sure the entire string is correct.
2025-09-16 16:33:40 +03:00
Matt Ellis
c0f9f0bcbc Rename cryptic error messages to error codes 2025-09-16 16:33:40 +03:00
Matt Ellis
c725447c00 Refactor messages for ActionListCommand 2025-09-16 16:33:40 +03:00
Matt Ellis
920ac0546e Replace custom errors with error codes 2025-09-16 16:33:40 +03:00
Matt Ellis
c5e3c9ccf1 Rename messages to be more consistent 2025-09-16 16:33:40 +03:00
Matt Ellis
5c45c62c5b Rename some error message identifiers 2025-09-16 16:33:40 +03:00
Matt Ellis
e00960ebbc Tidy up host message bundle 2025-09-16 16:33:40 +03:00
Matt Ellis
76087fea93 Split host and engine bundles
This allows IntelliJ's property annotations to help in code
2025-09-16 16:33:40 +03:00
Alex Plate
59459e5113 Introduce a hidden vimhints option to hide the new hints functionality 2025-09-10 14:58:46 +03:00
Alex Plate
54653d1d1b Specify ActionUpdateThread for ToggleHintsAction 2025-09-10 14:06:33 +03:00
Xinhe Wang
4e59af278b Avoid generating hints for another unfocused window 2025-09-10 11:36:04 +03:00
Matt Ellis
d4df794d3c Show message if no mapping found 2025-09-09 14:06:38 +03:00
Xinhe Wang
04273d005e Skip the tree nodes when generating hints to improve performance 2025-09-09 12:53:26 +03:00
Xinhe Wang
463a9e7ceb Generate hints for visible components whose parent is not visible 2025-09-09 12:53:26 +03:00
Xinhe Wang
aab1999782 Do not preserve previous hints if impossible 2025-09-09 12:53:26 +03:00
Xinhe Wang
733470f7b4 Allow repeated characters in hints 2025-09-09 12:53:26 +03:00
Matt Ellis
aef0515183 Replace asDouble with a new toVimFloat function 2025-09-08 09:58:34 +03:00
Matt Ellis
b48f80ee7d Deprecate VimDataType.asString
Prefer `toVimString` to `asString`. It makes it more explicit that the caller requires a Vim String type, and must follow Vim's conversion rules, rather than simple requiring a string. It also prevents confusion with other string functions such as `toString`, `toOutputString`, `toInsertableString`.

The function is deprecated because it's in use by external plugins. There is no change in functionality.
2025-09-08 09:58:34 +03:00
Matt Ellis
fdda1f0eb6 Refactor VimInt.parseNumber 2025-09-08 09:58:34 +03:00
Matt Ellis
69fac0eff0 Deprecate VimDataType.asBoolean
The `asBoolean` method does not make it clear that only a Vim Number can be treated as a boolean and incorrectly allowed a Float to be converted.

If a caller needs a boolean value, it should be explicit that it must get a Number by calling `toVimNumber` and then using the new `booleanValue` accessor. This correctly allows conversion from a String, and other Vim datatypes will correctly raise an error.

The implementation of `VimString.toVimNumber` has been updated to match Vim behaviour, and the behaviour of the previously called `VimString.asDouble` by allowing trailing characters while converting a string to a number.

The `asBoolean` function is deprecated because it is used by external plugins.
2025-09-08 09:58:34 +03:00
Matt Ellis
9dd60cdb3b Introduce VimDataType.toOutputString
It's confusing to know the rules for converting between data types. This change introduces a semantically named method for getting a string representation that can be used in output and error messages.
2025-09-08 09:58:34 +03:00
Alex Plate
8aedadde5e [API] Use the new API for implementation of the ReplaceWithRegister 2025-09-05 17:54:25 +03:00
Alex Plate
763d4518eb Refactor: Replace deprecated fileSize property 2025-09-05 16:53:45 +03:00
Xinhe Wang
0d38ac8d6f Allow focusing components with hints 2025-09-05 16:26:03 +03:00
Xinhe Wang
fd1f762bc2 Adjust the hint color to make it clearer 2025-09-05 16:26:03 +03:00
Xinhe Wang
cfdc3b7dc3 Display only hints prefixed by the currently entered letters 2025-09-05 16:26:03 +03:00
Xinhe Wang
eaaab34434 Bring clicked component highlighting back
The highlight will remain active for a fixed period of time.
2025-09-05 16:26:03 +03:00
Xinhe Wang
80f52d70c8 Encapsulate ShortcutDispatcher for use in NERDTree 2025-09-05 16:26:03 +03:00
Xinhe Wang
ff13845b57 Use custom key listener instead of ListPopup to select hints
As a result, the user no longer needs to press ENTER to action.

Note that component highlighting is temporarily removed.
2025-09-05 16:26:03 +03:00
Xinhe Wang
b349bb74db Encapsulate hints generation 2025-09-05 16:26:03 +03:00
Xinhe Wang
90cc7de761 Preserve previous hints if possible 2025-09-05 16:26:03 +03:00
Xinhe Wang
d674d33735 Basic hint generation (permutation) 2025-09-05 16:26:03 +03:00