Mia Vucinic
764a45c99a
fix get variable test
2025-07-21 21:06:38 +02:00
Mia Vucinic
abbc46a3ed
add a mapping owner to vim scope
2025-07-21 21:06:38 +02:00
Mia Vucinic
98f8226246
add listener scope implementation
2025-07-21 21:06:38 +02:00
Mia Vucinic
d2f73a6102
add a listener owner to all listeners
2025-07-21 21:06:38 +02:00
Mia Vucinic
267313a2e0
get rid of editor as a constructor parameter in scopes
2025-07-21 21:06:38 +02:00
Mia Vucinic
55d2371574
add editor service
2025-07-21 21:06:38 +02:00
Mia Vucinic
3a63ed596f
add implementation with templates for getVariable function
2025-07-21 21:06:38 +02:00
Mia Vucinic
24a0322b5a
add more functions to the read
2025-07-21 21:06:38 +02:00
Mia Vucinic
1a968f7721
move update caret to caret transaction
2025-07-21 21:06:38 +02:00
Mia Vucinic
02a8a84728
rename editor to vimEditor
2025-07-21 21:06:38 +02:00
Mia Vucinic
6a896664ed
introduce editor scope
2025-07-21 21:06:38 +02:00
Mia Vucinic
4d01f286f5
introduce caret scope
2025-07-21 21:06:38 +02:00
Mia Vucinic
f1cb9247d1
add mapping scope
2025-07-21 21:06:38 +02:00
Mia Vucinic
e946e74840
merge two mappings into one
2025-07-21 21:06:38 +02:00
Mia Vucinic
4db3e91d6a
huge refactoring
...
- In the `api` module:
- remove dependency on `vim-engine` module due to circular dependencies
- move implementations of scopes to the `vim-engine`
- add VimPluginDsl annotation to interfaces
- make VimScope abstract class
- remove ScopeBuilders file and move scope builders to the VimScope abstract class
- In the `vim-engine` module:
- add dependency on `api` module
- add implementation of scopes
- in VimInjector add new field - pluginService (reason for that is because functions from VimExtensionFacade are not available in the VimEngine)
2025-07-21 21:06:30 +02:00
Mia Vucinic
cf95ea1fc9
add a proper implementation for getVariableInt
2025-07-21 21:05:43 +02:00
Mia Vucinic
8ea9b29e5e
first api draft
2025-07-21 21:05:43 +02:00
Matt Ellis
7d44c87873
Move ex prompt character out of API
...
The prompt character is now implemented as a custom view, only in the UI, and not inserted directly into the text. This simplifies management of the text (and removes/fixes an exception due to manually handling prompt offset), and also allows highlighting of the prompt character.
2025-07-21 18:43:28 +03:00
Matt Ellis
b67c3d7bab
Add extra logging details
...
Randomly hit this condition, but don't know how
2025-07-21 18:43:28 +03:00
Matt Ellis
261b910845
Add tests for rendering control characters
2025-07-21 18:43:28 +03:00
Matt Ellis
2a603a681c
Simplify implementation of VimInputInterceptor
2025-07-21 18:43:28 +03:00
Matt Ellis
ddf1612d11
Fix scrolling issues editing long command lines
...
Instead of replacing the whole string, which will reset scroll position, delete or insert the required text/offsets, and let the text field manage scroll position
2025-07-21 18:43:28 +03:00
Matt Ellis
bf32c5d5b5
Render control characters in ex cmdline
2025-07-21 18:43:28 +03:00
Matt Ellis
0e9c3d9d87
Replace constants with enum
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
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
dependabot[bot]
8c40e19c44
Bump org.mockito.kotlin:mockito-kotlin from 5.4.0 to 6.0.0
...
Bumps [org.mockito.kotlin:mockito-kotlin](https://github.com/mockito/mockito-kotlin ) from 5.4.0 to 6.0.0.
- [Release notes](https://github.com/mockito/mockito-kotlin/releases )
- [Commits](https://github.com/mockito/mockito-kotlin/compare/5.4.0...v6.0.0 )
---
updated-dependencies:
- dependency-name: org.mockito.kotlin:mockito-kotlin
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-07-16 19:15:13 +03:00
dependabot[bot]
d1ec7d617d
Bump org.junit.jupiter:junit-jupiter-engine from 5.13.2 to 5.13.3
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework ) from 5.13.2 to 5.13.3.
- [Release notes](https://github.com/junit-team/junit-framework/releases )
- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.2...r5.13.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-version: 5.13.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-07-09 18:56:55 +03:00
Xinhe Wang
353603b546
Fix(VIM-3266): Set FileSaveCloseAction
to OTHER_SELF_SYNCHRONIZED
2025-07-07 10:55:53 +03: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
c393c902b2
Fix(VIM-2375): do not save file with ZQ
...
ZQ is defined to `Quit without checking for changes (same as ":q!").`
2025-07-04 14:26:56 +03:00
Xinhe Wang
c355cb7ed7
Make VimChangeGroup::changeCaseMotion
not accept non-Motion
argument
...
Error is logged if `ChangeCaseMotion` actions receive non-`Motion` args
2025-07-03 17:25:38 +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
5208412b46
Refine Argument.Motion::isLineWiseMotion
and VimMotionGroupBase::getMotionRange
...
This does not change any actual behavior.
2025-07-03 17:25:38 +03:00
dependabot[bot]
8f5a44bf44
Bump org.junit.vintage:junit-vintage-engine from 5.13.1 to 5.13.2
...
Bumps [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework ) from 5.13.1 to 5.13.2.
- [Release notes](https://github.com/junit-team/junit-framework/releases )
- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.1...r5.13.2 )
---
updated-dependencies:
- dependency-name: org.junit.vintage:junit-vintage-engine
dependency-version: 5.13.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-07-02 19:19:55 +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
dependabot[bot]
d3c945cd6d
Bump org.junit.jupiter:junit-jupiter-api from 5.13.1 to 5.13.2
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit-framework ) from 5.13.1 to 5.13.2.
- [Release notes](https://github.com/junit-team/junit-framework/releases )
- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.1...r5.13.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-version: 5.13.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-25 19:35:31 +03:00
Alex Plate
ddea72f803
Update kotlin version to 2.2.0
...
This is required to support IJ 2025.2 platform, which uses 2.2.0 for compilation.
2025-06-25 17:23:54 +03:00
dependabot[bot]
5ffaa7b084
Bump org.junit.jupiter:junit-jupiter-api from 5.13.0 to 5.13.1
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.13.0 to 5.13.1.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.13.0...r5.13.1 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-version: 5.13.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-18 19:10:53 +03:00
dependabot[bot]
3149de7b73
Bump org.junit.vintage:junit-vintage-engine from 5.13.0 to 5.13.1
...
Bumps [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit5 ) from 5.13.0 to 5.13.1.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.13.0...r5.13.1 )
---
updated-dependencies:
- dependency-name: org.junit.vintage:junit-vintage-engine
dependency-version: 5.13.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-11 18:30:27 +03:00
dependabot[bot]
5b1aade876
Bump org.junit.jupiter:junit-jupiter-engine from 5.13.0 to 5.13.1
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.13.0 to 5.13.1.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.13.0...r5.13.1 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-version: 5.13.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-11 18:29:52 +03:00
Thomas Canava
30c972ee1e
fix: Vim macro not working with arrows
2025-06-06 15:34:44 +03:00
Matt Ellis
1e3738314a
Add support for :=
to print line number
...
Fixes VIM-3921
2025-06-06 15:15:13 +03:00
dependabot[bot]
f47388175b
Bump org.junit.jupiter:junit-jupiter-api from 5.12.2 to 5.13.0
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.12.2 to 5.13.0.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.12.2...r5.13.0 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-version: 5.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-04 19:40:36 +03:00
dependabot[bot]
d09592824c
Bump org.junit.jupiter:junit-jupiter-engine from 5.12.2 to 5.13.0
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.12.2 to 5.13.0.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.12.2...r5.13.0 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-version: 5.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-04 19:06:27 +03:00
dependabot[bot]
725d60a56e
Bump org.junit.vintage:junit-vintage-engine from 5.12.2 to 5.13.0
...
Bumps [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit5 ) from 5.12.2 to 5.13.0.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.12.2...r5.13.0 )
---
updated-dependencies:
- dependency-name: org.junit.vintage:junit-vintage-engine
dependency-version: 5.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-06-04 19:06:01 +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