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