Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a 'Paste mode' to allow a paste keybinding to be 'smart'. #5278

Open
enjibby opened this issue Apr 7, 2020 · 2 comments
Open

Provide a 'Paste mode' to allow a paste keybinding to be 'smart'. #5278

enjibby opened this issue Apr 7, 2020 · 2 comments
Labels
Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. Product-Terminal The new Windows Terminal.
Milestone

Comments

@enjibby
Copy link

enjibby commented Apr 7, 2020

Description of the new feature/enhancement

As part of the discussion in #968 there was a suggestion that, while creating a selection was a good cue for enabling a smart copy mode, there was no equivalent cue for smart paste.

Implementing a paste mode may be a good addition to assist those that wish to use Ctrl+V as both a paste key and a key combination in terminal apps.

Proposed technical implementation details (optional)

My idea is frankly quite vague. Apologies if it feels unreasonable.

Perhaps the terminal could, on app activation and in the event of a clipboard addition, detect the presence of a compatible item in the clipboard and enable a paste 'mode'. This would provide a visual cue that the paste keybinding(s) would paste rather than be sent through to the terminal. Once in this mode, an opportunity to cancel the mode would be available to the user, through a UI element and/or another keybinding.

@enjibby enjibby added the Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. label Apr 7, 2020
@ghost ghost added Needs-Tag-Fix Doesn't match tag requirements Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting labels Apr 7, 2020
@zadjii-msft
Copy link
Member

Okay, I can kinda see the use of this. one keybinding that lets the user chose between "paste", "send ^V", or "Cancel". Makes sense. However, I think it would be best served as an extension rather than built-in by default. I'll tag this as such and add to the extensions megathread.

Thanks!

@zadjii-msft zadjii-msft added Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Product-Terminal The new Windows Terminal. and removed Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting labels Apr 8, 2020
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Apr 8, 2020
@zadjii-msft zadjii-msft added this to the Terminal Backlog milestone Apr 8, 2020
@enjibby
Copy link
Author

enjibby commented Apr 16, 2020

It's important to note that I provided this example to make it simple to use just the Ctrl+V key combination to work as a user would expect in the correct situations. Requiring that a user press e.g. Ctrl+Shift+F7 to enter paste mode before pressing Ctrl+V does not provide value, nor does it work in the opposite situation where paste mode needs to be turned off every time a user wishes to send Ctrl+V to e.g. Vim. Having a visual cue to identify if paste mode is enabled is important, even if it is just a change to the display of the cursor (perhaps changing from a solid box to a < sign?). being able to permanently enable or disable it is also desirable.

@zadjii-msft zadjii-msft modified the milestones: Terminal Backlog, Backlog Jan 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. Product-Terminal The new Windows Terminal.
Projects
None yet
Development

No branches or pull requests

2 participants