Matt Ellis
a31a4a8ca7
Share ex entry set up with filter commands
2024-06-03 11:54:48 +03:00
Matt Ellis
c34d000b91
Reintroduce ProcessGroup.startExEntry
...
We need to share the implementation between starting an Ex command, and starting a filter command, which is just an Ex command with initial text
2024-06-03 11:54:48 +03:00
Matt Ellis
a2bfe950fa
Fix move command moving to current line
...
Removes a workaround that would break moving a range to the current line because it would always move the caret to the start of the range. Now positions the caret to the start of the selection if there is one. This also means we can remove the SAVE_VISUAL flag from JoinLinesCommand
Fixes VIM-2936
2024-06-03 11:54:48 +03:00
Matt Ellis
b44f40acd6
Fix incorrect output for line() in Normal mode
2024-06-03 11:54:48 +03:00
Matt Ellis
5169093bbf
Clear ex output after assert and fix tests
...
This ensures that a failing action doesn't pass due to previous state
2024-06-03 11:54:48 +03:00
Matt Ellis
b15b1cd3f8
Fix range with missing last address
...
Fixes VIM-992
2024-06-03 11:54:48 +03:00
Matt Ellis
f7b6a97435
Support 0 as part of a range address
...
Fixes VIM-1137
2024-06-03 11:54:48 +03:00
Matt Ellis
f64c99c406
Support incsearch highlighting for global command
...
Fixes VIM-2891
2024-06-03 11:54:48 +03:00
Matt Ellis
f552e43c5b
Refactor handling of default range
...
Specify a default range instead of default line for count.
2024-06-03 11:54:48 +03:00
Matt Ellis
4798198e41
Minor refactorings
2024-06-03 11:54:48 +03:00
Matt Ellis
a59de4ce05
Add tests and fixes for yank command
...
Handles validation for count and ensures correct behaviour for registers.
2024-06-03 11:54:48 +03:00
Matt Ellis
2dea525665
Add tests and fixes for join command
...
Handles validation for count and positions caret in the correct place. Also handles join with visual multicaret scenarios.
2024-06-03 11:54:48 +03:00
Matt Ellis
8ecb1f7296
Add tests and fixes for print command
...
Handles validation of count and correctly moves caret to end of range after execution. Also fix issue where the results of :print are accumulated and not cleared.
Fixes VIM-2570
2024-06-03 11:54:48 +03:00
Matt Ellis
9ca9530061
Add tests and fixes for shift commands
...
Shift left and right now work with counts, validate the counts and move the caret to the correct end position
2024-06-03 11:54:48 +03:00
Matt Ellis
54e27afc3f
Simplify getCount functions
...
Made it explicit to get the count from argument and/or range. Default count is not passed, because it was never used. Added some tests where possible, but hard to test select file and friends
2024-06-03 11:54:48 +03:00
Matt Ellis
5e67032655
Add tests and fixes for delete lines command
...
Validates register before use and correctly uses register and count
2024-06-03 11:54:48 +03:00
Matt Ellis
cb37f6df63
Add tests and fixes for goto line command
...
Correctly handles some validation, and also allows going to line zero
2024-06-03 11:54:48 +03:00
Matt Ellis
ca3a18cf37
Add tests for goto character command
...
Also start to refactor handling of count
2024-06-03 11:54:48 +03:00
Matt Ellis
cac36627aa
Support 0 in copy command to copy to top of file
2024-06-03 11:54:48 +03:00
Matt Ellis
6404e1127e
Remove incorrect VimBehaviourDiffers annotation
2024-06-03 11:54:48 +03:00
Matt Ellis
e762a3093b
Range is already normalised
2024-06-03 11:54:48 +03:00
Matt Ellis
739ac2ae5e
Simplify getting address from argument
2024-06-03 11:54:48 +03:00
Matt Ellis
77c364a2d0
Move count handling out of range into command
2024-06-03 11:54:48 +03:00
Matt Ellis
103cd9f5ce
Fix off-by-one error in count
...
Count needs to be one-based, lines must be zero-based. So store addresses as one-based until processed
2024-06-03 11:54:48 +03:00
Matt Ellis
99859fe857
Rename test classes
...
Also ensure that test derives from VimTestCase so that injector is correctly initialised
2024-06-03 11:54:48 +03:00
Matt Ellis
4778995f3b
Remove unnecessary getFirstLine function
2024-06-03 11:54:48 +03:00
Matt Ellis
0a14150840
Extract TextRange from Ex range class
2024-06-03 11:54:48 +03:00
Matt Ellis
e8ffc0313f
Remove Range overloads that don't require a caret
...
Provide caret when calling from Command
2024-06-03 11:54:48 +03:00
Matt Ellis
7dbd3886b1
Introduce addresses for current line and last line
...
Remove mutation from LineAddress
2024-06-03 11:54:48 +03:00
Matt Ellis
8c83164d76
Remove mutable state from Range
...
Sometimes we cache things, and other times it's relative to a passed caret. Let's always calculate it
2024-06-03 11:54:48 +03:00
Matt Ellis
076aab1ccf
Rename Ranges, and ExRanges.kt
2024-06-03 11:54:48 +03:00
Matt Ellis
751f51c88f
Rename Range and related classes to Address
...
An address evaluates to a line, and a range is a collection of addresses
2024-06-03 11:54:48 +03:00
Filipp Vakhitov
ab7359ffd3
Fix options test for Windows
...
Thanks @citizenmatt for this patch
2024-05-29 18:48:05 +03:00
Alex Plate
d795d70041
Disable some tests due to VIM-3376
2024-05-29 18:33:31 +03:00
aleksei.plate@jetbrains.com
1320034e7e
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Publish EAP Build from branch' build configuration were updated
2024-05-29 12:45:26 +00:00
Alex Plate
79a216043f
Use a ReleasesVcsRoot for the ReleaseEapFromBranch configuration
2024-05-29 15:42:24 +03:00
Alex Plate
c508a3cc32
Add a build configuration that creates a EAP release from the release branch
2024-05-29 15:40:25 +03:00
Alex Plate
d40d8f34c5
Apply patches for TeamCity configs
2024-05-29 15:18:15 +03:00
Alex Pláte
b561a13e7c
Merge pull request #893 from JetBrains/fleet
...
Moving away from Swing TextAction to KeyHandler
2024-05-29 14:16:44 +03:00
aleksei.plate@jetbrains.com
71bcee2a07
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:40:30 +00:00
aleksei.plate@jetbrains.com
6c490b1baa
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:40:09 +00:00
aleksei.plate@jetbrains.com
4ab6a36aca
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:39:01 +00:00
aleksei.plate@jetbrains.com
c4355841ad
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:38:13 +00:00
aleksei.plate@jetbrains.com
f163946e38
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:37:43 +00:00
Filipp Vakhitov
7abb1fd630
Finalizing merge
2024-05-28 23:35:31 +03:00
aleksei.plate@jetbrains.com
f78d3387a5
TeamCity change in 'Ideavim / IdeaVim releases' project: VCS roots of 'EXP: Print release branch' build configuration were updated
2024-05-28 20:35:10 +00:00
aleksei.plate@jetbrains.com
69e2e3c047
TeamCity change in 'Ideavim' project: 'IdeaVim Releases' VCS root was updated
2024-05-28 20:34:19 +00:00
aleksei.plate@jetbrains.com
52832cbe22
TeamCity change in 'Ideavim' project: 'IdeaVim Releases' VCS root was updated
2024-05-28 20:32:36 +00:00
aleksei.plate@jetbrains.com
82ca2be51c
TeamCity change in 'Ideavim' project: 'IdeaVim Releases' VCS root was updated
2024-05-28 20:30:53 +00:00
aleksei.plate@jetbrains.com
8552bb8a17
TeamCity change in 'Ideavim' project: 'IdeaVim Releases' VCS root was updated
2024-05-28 20:30:05 +00:00