Skip to content

ViMode: Yanking until given character #3735

Open

Description

Prerequisites

  • 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.

Activity

  1. ghost added
    Needs-Triage 🔍It's a new issue that core contributor team needs to triage.
    on Jul 7, 2023
  2. matteocoder commented on Nov 3, 2023

    @matteocoder

    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.

  3. Konstantin-Glukhov commented on Nov 7, 2023

    @Konstantin-Glukhov
    Author

    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?

  4. matteocoder commented on Nov 7, 2023

    @matteocoder

    Konstantin Glukhov (@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.

  5. Konstantin-Glukhov commented on Nov 7, 2023

    @Konstantin-Glukhov
    Author

    Did you find how <y,$> is implemented?

  6. matteocoder commented on Nov 7, 2023

    @matteocoder

    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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions