PSReadLine
PSReadLine copied to clipboard
ViMode: Yanking until given character
Prerequisites
- [X] Write a descriptive title.
Description of the new feature/enhancement
Yanking until given character for -ViMode Command
Proposed technical implementation details (optional)
<y,t> ViYankToBeforeChar Yanks until given character forward. <y,T> ViYankToBeforeCharBackward Yanks until given character backward. <y,f> ViYankToChar Yanks inclusively until given character forward. <y,F> ViYankToCharBackward Yanks inclusively until given character backward.
If one wanted to implement this functionality using only methods from PSReadline, how would you programmatically access the register which is used in command mode to store the yanked text? I mean in the same way one can access the kill ring using only the psconsolereadline class.
I am not sure. How are y0 and y$ implemented? Shouldn't be the same? First find a position of the searched character and then yank from current position to the found position?
@Konstantin-Glukhov Thanks for the reply. My problem in particular is that I cannot find, looking at the documentation, a psreadline method like
[Microsoft.PowerShell.PSConsoleReadLine]::ViPlaceThisStringInTheViClipboard(<string>)
Implementing the motions seems already possible with the available methods, but it seems it is not possible to directly access the place where text is yanked. I'm happy to be proven wrong, though.
Did you find how <y,$> is implemented?
Not yet. I know nothing about C#, so it's kind of hard for me.
EDIT: the text is pasted to a private _viRegister, so it seems like it's not accessible from outside.