Mia Vucinic and Alex Plate
3cb5308193
fix failing tests
2025-08-01 16:16:29 +03:00
Mia Vucinic and Alex Plate
093769ee7c
add file lock to ensure exclusive access
2025-08-01 16:16:29 +03:00
Mia Vucinic and Alex Plate
fd58a61685
remove ReplaceWithRegister options from tests
...
- since enabling and disabling extensions is no longer done using options, options in tests can be removed
2025-08-01 16:16:28 +03:00
Mia Vucinic and Alex Plate
562ae63805
fix ReplaceWithRegister test
...
- remove unnecessary new lines in tests
2025-08-01 16:16:28 +03:00
Mia Vucinic and Alex Plate
04603ae61f
add new extensions API handling in test
2025-08-01 16:16:27 +03:00
Mia Vucinic and Alex Plate
807dff45a9
add a new ReplaceWithRegister plugin implementation
2025-08-01 16:16:27 +03:00
Mia Vucinic and Alex Plate
a25b88327e
implement PlugDisable command
2025-08-01 16:16:27 +03:00
Mia Vucinic and Alex Plate
fbb2351ec2
implement PlugEnable command
2025-08-01 16:16:26 +03:00
Mia Vucinic and Alex Plate
621969faec
implement a new way for registering extensions
2025-08-01 16:16:26 +03:00
Mia Vucinic and Alex Plate
26e33c088c
implement ksp for extensions processing
2025-08-01 16:16:26 +03:00
Mia Vucinic and Alex Plãte
efdd0b9910
Add docs for the new Plugin API
2025-08-01 15:44:06 +03:00
Mia Vucinic
06e34d6005
add a default value for isBigWord in getNextWordStartOffset and getNextWordEndOffset
2025-07-29 16:27:03 +02:00
Mia Vucinic
8ae792e74e
add return value to with and withPrimaryCaret
2025-07-29 16:23:12 +02:00
Mia Vucinic
15660a9f3d
make functions in output panel scope non suspend
2025-07-29 16:10:15 +02:00
Mia Vucinic
72accdd186
remove exception throwing from getFocusedEditor function
2025-07-28 10:26:51 +02:00
Mia Vucinic
4282a58719
fix doc comments for count parameter
2025-07-28 10:21:40 +02:00
Mia Vucinic
f74552ef19
fix replaceText when editor is empty
2025-07-28 10:07:17 +02:00
Mia Vucinic
a4e9e70df7
add test for inserting empty text and fix coerceIn function
2025-07-28 07:32:29 +02:00
Mia Vucinic
3c32c8bbe7
rename VimHighlightingServiceImpl to IjVimHighlightingService and VimPluginServiceImpl to IjVimPluginService
2025-07-28 07:32:29 +02:00
Mia Vucinic
265e2e14e7
move thin api services from the extension package to the thinapi package
2025-07-28 07:32:29 +02:00
Mia Vucinic
55b44aab53
implement add caret and remove caret functions
2025-07-28 07:32:18 +02:00
Mia Vucinic
c95421518e
fix path handling for jump and marks
2025-07-24 17:13:41 +02:00
Mia Vucinic
a45b642d1e
fix exceptions
2025-07-24 09:26:16 +02:00
Mia Vucinic
9d09f824df
fix executeNormalWithoutMapping function
2025-07-24 08:16:23 +02:00
Mia Vucinic
5d731ff818
fix editor size
2025-07-24 08:15:47 +02:00
Mia Vucinic
5f4cd75898
remove unnecessary getNextWordStartOffset function from VimScope
2025-07-24 08:15:09 +02:00
Mia Vucinic
9443f16551
remove unused variable and some comments
2025-07-24 08:00:00 +02:00
Mia Vucinic
6abee14079
have CaretTransaction extend Read
2025-07-24 07:56:23 +02:00
Mia Vucinic
d5e64a8f28
split read into Read and ReadScope
...
- We want to be able to execute functions defined on read scope under write lock as well, which means we want to have transaction extend read. However, due to conflicting names for caret scope builders (forEachCaret, withPrimaryCaret etc.) it was necessary to split it into two scopes:
1) Read - contains only functions available under read lock
2) ReadScope - contains both caret scope builders and functions defined on Read
2025-07-23 12:01:28 +02:00
Mia Vucinic
256fe515b0
add resetting for mocks in tests
2025-07-22 15:31:11 +02:00
Mia Vucinic
e7ec16e8f1
remove variable locking
2025-07-22 13:46:04 +02:00
Mia Vucinic
74e213af1d
remove methods from caret transaction
2025-07-22 13:42:13 +02:00
Mia Vucinic
246e6e4444
remove onRemove method from listener
2025-07-22 13:41:18 +02:00
Mia Vucinic
0b8a72de95
return VimHighlightedYankTest.kt to previous state
2025-07-22 13:33:48 +02:00
Mia Vucinic
359769733c
return VimListenerManager.kt to previous state
2025-07-22 13:33:12 +02:00
Mia Vucinic
8bf60bcb68
add lines to VimExtension and VimExtensionRegistrar.kt
2025-07-22 13:30:53 +02:00
Mia Vucinic
2aa5230aa7
fix docs
2025-07-22 13:29:41 +02:00
Mia Vucinic
ceaa74854f
add docs
2025-07-22 13:17:04 +02:00
Mia Vucinic
96734867e5
revert VimExtension to previous state
2025-07-22 12:52:11 +02:00
Mia Vucinic
cc9a39fa6d
revert VimExtensionRegistrar to previous state
2025-07-22 12:50:49 +02:00
Mia Vucinic
4d680465fb
delete vim plugin base
2025-07-22 12:48:14 +02:00
Mia Vucinic
02a9d284b3
repackage files
2025-07-22 12:47:00 +02:00
Mia Vucinic
fd5e84eddc
add docs
2025-07-22 12:39:10 +02:00
Mia Vucinic
f5cf751a0a
move files to appropriate packages
2025-07-22 12:31:53 +02:00
Mia Vucinic
6f4bd936f9
update docs
2025-07-22 12:12:39 +02:00
Mia Vucinic
657f7f5f9c
fix modal input tests after rebasing
2025-07-22 08:22:45 +02:00
Mia Vucinic
b3561c8b1e
revert "attempt to have extensions disabled when the ideavim plugin is turned off"
...
This reverts commit cfc3b827ea327eedb15d3e9d48c26228db67b153.
2025-07-21 21:06:39 +02:00
Mia Vucinic
38a4512b00
revert "convert VimExtension file to Kotlin"
...
This reverts commit 58c84a7d3af3fc3a3c597949e059d86784825697.
2025-07-21 21:06:39 +02:00
Mia Vucinic
b96498a564
revert "make init function in VimExtension suspend"
...
This reverts commit 87dba1e2951d22b8a62d5c45e9ea20720dbacec2.
2025-07-21 21:06:39 +02:00
Mia Vucinic
85c3a78fb4
revert "make init function in VimPluginBase suspend"
...
This reverts commit 9d0d941adab09b03b7c2287a5e8ffd3fa4626dd4.
2025-07-21 21:06:39 +02:00
Mia Vucinic
62c816c80e
refactor insert and replace text in caret transaction impl
2025-07-21 21:06:39 +02:00
Mia Vucinic
1b1d5815f4
fix validating offsets for replace text
2025-07-21 21:06:39 +02:00
Mia Vucinic
34af17d18e
rename caretAfterInsertedText to caret at end
2025-07-21 21:06:39 +02:00
Mia Vucinic
67fa38d999
add caret transaction test
2025-07-21 21:06:39 +02:00
Mia Vucinic
891b6316eb
add a replace text blockwise function
2025-07-21 21:06:39 +02:00
Mia Vucinic
b00274699d
add option scope test
2025-07-21 21:06:39 +02:00
Mia Vucinic
cff4f75feb
add modal input test
2025-07-21 21:06:39 +02:00
Mia Vucinic
9e6fb85325
add test for digraph scope
2025-07-21 21:06:39 +02:00
Mia Vucinic
f23e190849
delete on global option change listener
2025-07-21 21:06:39 +02:00
Mia Vucinic
5d525b0f38
add transaction test
2025-07-21 21:06:39 +02:00
Mia Vucinic
8e0f854f70
add read test
2025-07-21 21:06:39 +02:00
Mia Vucinic
36c2f797a9
add tests for search functions in VimScope
2025-07-21 21:06:39 +02:00
Mia Vucinic
98b19b2396
add variable tests
2025-07-21 21:06:39 +02:00
Mia Vucinic
f9f4c6b17c
add modes test
2025-07-21 21:06:39 +02:00
Mia Vucinic
8642f4afe9
remove suspend from some functions
2025-07-21 21:06:39 +02:00
Mia Vucinic
560689399b
wrap body of export operator function in command
2025-07-21 21:06:39 +02:00
Mia Vucinic
758809f7d5
make some functions not suspend
2025-07-21 21:06:39 +02:00
Mia Vucinic
cd1a7adc9e
make listeners work with coroutines
2025-07-21 21:06:39 +02:00
Mia Vucinic
979ef3fa1c
make api use coroutines
2025-07-21 21:06:39 +02:00
Mia Vucinic
6aebedfbc0
add a coroutines library to the vim-engine module
2025-07-21 21:06:39 +02:00
Mia Vucinic
9ca46bf150
add coroutines library to api module
2025-07-21 21:06:39 +02:00
Mia Vucinic
91ab26406b
make jetbrains annotation compileOnly in api module
2025-07-21 21:06:39 +02:00
Mia Vucinic
5b1595886b
make init function in VimPluginBase suspend
2025-07-21 21:06:39 +02:00
Mia Vucinic
0fc4a4b476
make init function in VimExtension suspend
2025-07-21 21:06:39 +02:00
Mia Vucinic
5b7c25b0f5
convert VimExtension file to Kotlin
2025-07-21 21:06:39 +02:00
Mia Vucinic
eb39fb546c
implement a proper getFocusedEditor function
2025-07-21 21:06:39 +02:00
Mia Vucinic
74a2fe39d7
remove unnecessary test setup from highlighted yank test
2025-07-21 21:06:39 +02:00
Mia Vucinic
dbe9deec1c
add forEachEditor function
2025-07-21 21:06:39 +02:00
Mia Vucinic
c4bb7e4145
fix replace with register plugin to work in visual block mode
2025-07-21 21:06:39 +02:00
Mia Vucinic
72af6fc313
add functions from VimDigraphGroup
2025-07-21 21:06:39 +02:00
Mia Vucinic
dba11ab1c3
implement path
2025-07-21 21:06:39 +02:00
Mia Vucinic
101d94e12a
fix when some search functions return out-of-bounds offset
2025-07-21 21:06:39 +02:00
Mia Vucinic
9a79cdc3ab
add functions from vim search helper
2025-07-21 21:06:39 +02:00
Mia Vucinic
dd1c5412ed
introduce read and transaction scope for command line
2025-07-21 21:06:39 +02:00
Mia Vucinic
6cb4e2946f
delete unnecessary functions from command line scope
2025-07-21 21:06:39 +02:00
Mia Vucinic
641fd42ecf
rename getOptionValue to get and resetOptionToDefault to reset
2025-07-21 21:06:39 +02:00
Mia Vucinic
ee64316676
introduce option scope
2025-07-21 21:06:39 +02:00
Mia Vucinic
ea415d4c4f
decouple some functions in vim search helper from the caret
2025-07-21 21:06:39 +02:00
Mia Vucinic
6eb71cb95e
add functions for saveFile and closeFile in VimScope
2025-07-21 21:06:39 +02:00
Mia Vucinic
86c225616e
add initial vim storage service implementation
2025-07-21 21:06:39 +02:00
Mia Vucinic
30190b43fc
rename isVariableLocked to islocked
2025-07-21 21:06:39 +02:00
Mia Vucinic
bffa752855
rename parse variable value to convert to kotlin type
2025-07-21 21:06:39 +02:00
Mia Vucinic
4e97be5319
add test for convertToVimDataType function
2025-07-21 21:06:39 +02:00
Mia Vucinic
b0c5d8f658
add setVariable and lockvar/unlockvar functions
2025-07-21 21:06:39 +02:00
Mia Vucinic
c6176f1ac8
add initial command line implementation
2025-07-21 21:06:39 +02:00
Mia Vucinic
af1246bf9a
add findNext and findPrevious methods to VimRegexpService
2025-07-21 21:06:39 +02:00
Mia Vucinic
af9fe9e44e
add with primary caret method
2025-07-21 21:06:39 +02:00
Mia Vucinic
c1d6a5574b
add contract on editor scope
2025-07-21 21:06:39 +02:00
Mia Vucinic
b7f69c8c28
add command function
2025-07-21 21:06:39 +02:00
Mia Vucinic
61b515260c
rename repeat until to repeat while
2025-07-21 21:06:38 +02:00