Commit Graph
100 Commits
Author SHA1 Message Date
Mia VucinicandAlex Plate 3cb5308193 fix failing tests 2025-08-01 16:16:29 +03:00
Mia VucinicandAlex Plate 093769ee7c add file lock to ensure exclusive access 2025-08-01 16:16:29 +03:00
Mia VucinicandAlex 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 VucinicandAlex Plate 562ae63805 fix ReplaceWithRegister test
- remove unnecessary new lines in tests
2025-08-01 16:16:28 +03:00
Mia VucinicandAlex Plate 04603ae61f add new extensions API handling in test 2025-08-01 16:16:27 +03:00
Mia VucinicandAlex Plate 807dff45a9 add a new ReplaceWithRegister plugin implementation 2025-08-01 16:16:27 +03:00
Mia VucinicandAlex Plate a25b88327e implement PlugDisable command 2025-08-01 16:16:27 +03:00
Mia VucinicandAlex Plate fbb2351ec2 implement PlugEnable command 2025-08-01 16:16:26 +03:00
Mia VucinicandAlex Plate 621969faec implement a new way for registering extensions 2025-08-01 16:16:26 +03:00
Mia VucinicandAlex Plate 26e33c088c implement ksp for extensions processing 2025-08-01 16:16:26 +03:00
Mia VucinicandAlex 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