How to copy text? Ctrl + C isn't working? #2586

Closed
opened 2026-01-30 22:59:00 +00:00 by claunia · 22 comments
Owner

Originally created by @dazinator on GitHub (Jul 5, 2019).

I installed the terminal from the windows app store, created a powershell tab, ran a command.

I then wanted to copy that command text, so I highlighted it, then pressed ctrl + c but it doesn't appear to have copied the command text. I also tried ctrl + shift + c. Getting desperate I right clicked on the tab item itself, looking for a menu where I could select "copy" but no such menu seems to exist. I also tried right clicking with the text selected hoping for a menu where I could select "copy selection" but again no such menu exists. In desperation I gave up - copying text does not appear possible. What am I doing wrong?

Originally created by @dazinator on GitHub (Jul 5, 2019). I installed the terminal from the windows app store, created a powershell tab, ran a command. I then wanted to copy that command text, so I highlighted it, then pressed ctrl + c but it doesn't appear to have copied the command text. I also tried ctrl + shift + c. Getting desperate I right clicked on the tab item itself, looking for a menu where I could select "copy" but no such menu seems to exist. I also tried right clicking with the text selected hoping for a menu where I could select "copy selection" but again no such menu exists. In desperation I gave up - copying text does not appear possible. What am I doing wrong?
claunia added the Resolution-DuplicateIssue-Docs labels 2026-01-30 22:59:00 +00:00
Author
Owner

@loganmancuso commented on GitHub (Jul 5, 2019):

from what I remember this function has not yet been added to the terminal2 it still implements the copy -paste protocol from cmd and PowerShell. highlight text and press to copy and to paste the clipboard #1180

@loganmancuso commented on GitHub (Jul 5, 2019): from what I remember this function has not yet been added to the terminal2 it still implements the copy -paste protocol from cmd and PowerShell. highlight text and press <enter> to copy and <rightclick> to paste the clipboard #1180
Author
Owner

@drk-mtr commented on GitHub (Jul 6, 2019):

Right clicking the selected text will copy it to the clipboard.

I'd like a way to do this that uses the keyboard instead.

@drk-mtr commented on GitHub (Jul 6, 2019): Right clicking the selected text will copy it to the clipboard. I'd like a way to do this that uses the keyboard instead.
Author
Owner

@jesusha123 commented on GitHub (Jul 6, 2019):

Shoud we open a new issue requesting a feature to enable CTRL+C / CTRL+V to copy/paste?

@jesusha123 commented on GitHub (Jul 6, 2019): Shoud we open a new issue requesting a feature to enable CTRL+C / CTRL+V to copy/paste?
Author
Owner

@DHowett-MSFT commented on GitHub (Jul 6, 2019):

Please don’t! We’ll just have to close it as a duplicate of a feature that made it into v0.3

@DHowett-MSFT commented on GitHub (Jul 6, 2019): Please don’t! We’ll just have to close it as a duplicate of a feature that made it into v0.3
Author
Owner

@nimocat commented on GitHub (Jul 8, 2019):

actually Ctrl+C works fine in powershell in windows terminal, the real problem is the support to wsl, when I use wsl2 in windows terminal, for example, a ubuntu18.04, I can't use Ctrl+C or Ctrl+Shift+C, but in bash or wsl.exe, it works fine.

@nimocat commented on GitHub (Jul 8, 2019): actually Ctrl+C works fine in powershell in windows terminal, the real problem is the support to wsl, when I use wsl2 in windows terminal, for example, a ubuntu18.04, I can't use Ctrl+C or Ctrl+Shift+C, but in bash or wsl.exe, it works fine.
Author
Owner

@andres-pcg commented on GitHub (Jul 8, 2019):

It would be nice to have shift+insert or Ctrl+shift+insert to have a linux like feeling or ctrl+shift+c and ctrl+shift+v like powershell does

@andres-pcg commented on GitHub (Jul 8, 2019): It would be nice to have shift+insert or Ctrl+shift+insert to have a linux like feeling or ctrl+shift+c and ctrl+shift+v like powershell does
Author
Owner

@DHowett-MSFT commented on GitHub (Jul 8, 2019):

This was fixed with #1093

@DHowett-MSFT commented on GitHub (Jul 8, 2019): This was fixed with #1093
Author
Owner

@atruskie commented on GitHub (Jul 10, 2019):

I don't think this is fixed?

The changes in #1093:

I apologise if I've misread any of the code.

I've been fighting years of muscle memory this last week because ctrl+c doesn't work; I realise it may seem like a triviality, but I think it's important for user experience.

@atruskie commented on GitHub (Jul 10, 2019): I don't think this is fixed? The changes in #1093: - set the default binding to `ctrl+shift+c` - and even if we could rebind the default to `ctrl+c`, doesn't implement the copy-if-text-selected-or-send-ctrl+c semantics discussed in https://github.com/microsoft/terminal/pull/1093#issuecomment-498829169 I apologise if I've misread any of the code. I've been fighting years of muscle memory this last week because ctrl+c doesn't work; I realise it may seem like a triviality, but I think it's important for user experience.
Author
Owner

@DHowett-MSFT commented on GitHub (Jul 10, 2019):

I'll reopen it for our next Triage cycle.

@DHowett-MSFT commented on GitHub (Jul 10, 2019): I'll reopen it for our next Triage cycle.
Author
Owner

@DHowett-MSFT commented on GitHub (Jul 15, 2019):

We'll track all copy/selection issues as part of #524

@DHowett-MSFT commented on GitHub (Jul 15, 2019): We'll track all copy/selection issues as part of #524
Author
Owner

@Panzerbjrn commented on GitHub (Jul 27, 2019):

Any idea when this will be fixed?
Copying is a fairly standard function...

@Panzerbjrn commented on GitHub (Jul 27, 2019): Any idea when this will be fixed? Copying is a fairly standard function...
Author
Owner

@Panzerbjrn commented on GitHub (Jul 27, 2019):

Also, shouldn't this be open since CTRL+C still doesn't copy?

@Panzerbjrn commented on GitHub (Jul 27, 2019): Also, shouldn't this be open since CTRL+C still doesn't copy?
Author
Owner

@drk-mtr commented on GitHub (Jul 27, 2019):

No this should be closed, since the decided upon feature is customisable binding not hard-coded use of ctrl+c.

@drk-mtr commented on GitHub (Jul 27, 2019): No this should be closed, since the decided upon feature is customisable binding not hard-coded use of ctrl+c.
Author
Owner

@dazinator commented on GitHub (Jul 27, 2019):

Customisable is great! - but what's the default setting out of the box?

@dazinator commented on GitHub (Jul 27, 2019): Customisable is great! - but what's the default setting out of the box?
Author
Owner

@zadjii-msft commented on GitHub (Jul 30, 2019):

The default keybindings for copy and paste are Ctrl+Shift+C/V. If your profiles.json file was created before #1093, then they won't contain that keybinding, and you'll need to add it manually.

@zadjii-msft commented on GitHub (Jul 30, 2019): The default keybindings for copy and paste are Ctrl+Shift+C/V. If your profiles.json file was created before #1093, then they won't contain that keybinding, and you'll need to add it manually.
Author
Owner

@congjinruo commented on GitHub (Jul 30, 2019):

Right clicking the selected text will copy it to the clipboard.

I'd like a way to do this that uses the keyboard instead.

get it, really cool.

@congjinruo commented on GitHub (Jul 30, 2019): > Right clicking the selected text will copy it to the clipboard. > > I'd like a way to do this that uses the keyboard instead. get it, really cool.
Author
Owner

@CobusKruger commented on GitHub (Aug 6, 2019):

This was fixed with #1093

Nope, it wasn't.

Making Ctrl+Shift+C the keybinding for copy is pointless. You may as well make it anything else Ctrl+P. People expect Ctrl+C and using anything except that will just make the copy feature undiscoverable.

@CobusKruger commented on GitHub (Aug 6, 2019): > This was fixed with #1093 Nope, it wasn't. Making Ctrl+Shift+C the keybinding for copy is pointless. You may as well make it anything else Ctrl+P. People expect Ctrl+C and using anything except that will just make the copy feature undiscoverable.
Author
Owner

@Panzerbjrn commented on GitHub (Aug 6, 2019):

I couldn't agree more with @CobusKruger.
Some things are just so common and expected, that not to use them just seems like you're actively hiding features from users.
No one expects CTRL+SHIFT+C/V, They expect CTRL+C/V; If it were otherwise, there wouldn't be so many users here clamoring for it.
CTRL+C/V is what should be in the json by default.
This is very much a case of "Old Microsoft" rearing it's head, rather then new forward looking Microsoft.
So yes, this should not be closed until this problem has actually been fixed...

@Panzerbjrn commented on GitHub (Aug 6, 2019): I couldn't agree more with @CobusKruger. Some things are just so common and expected, that not to use them just seems like you're actively hiding features from users. No one expects CTRL+SHIFT+C/V, They expect CTRL+C/V; If it were otherwise, there wouldn't be so many users here clamoring for it. CTRL+C/V is what should be in the json by default. This is very much a case of "Old Microsoft" rearing it's head, rather then new forward looking Microsoft. So yes, this should not be closed until this problem has actually been fixed...
Author
Owner

@miniksa commented on GitHub (Aug 6, 2019):

This is very much a case of "Old Microsoft" rearing it's head, rather then new forward looking Microsoft.

@Panzerbjrn, please let me refresh you on the Microsoft Open Source Code of Conduct. We can disagree here and have debates, but please halt yourself before assuming the motivations of others and attacking individuals personally or their work.

We are happy to continue to discuss the way that this prerelease product should evolve before it meets v1.0 (and even after 1.0!) Please exercise patience and understanding when working with us and members of the community as the software develops.

@miniksa commented on GitHub (Aug 6, 2019): > This is very much a case of "Old Microsoft" rearing it's head, rather then new forward looking Microsoft. @Panzerbjrn, please let me refresh you on the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). We can disagree here and have debates, but please halt yourself before assuming the motivations of others and attacking individuals personally or their work. We are happy to continue to discuss the way that this prerelease product should evolve before it meets v1.0 (and even after 1.0!) Please exercise patience and understanding when working with us and members of the community as the software develops.
Author
Owner

@zadjii-msft commented on GitHub (Aug 6, 2019):

In fact, I'd suggest that the new keybindings are very "new"-Microsoft.

Gnome Terminal has a consistent keybinding that's not intuitive at first, but easy to adopt, and not too far from the usual CTRL + C for copy.
CTRL + C : Cancel
CTRL + Shift + C : Copy
CTRL + Shift + V : Paste

This is the style of copy/paste keybindings for every other terminal on the planet, and the style we've chosen as the defaults. If you're unhappy with them, you're absolutely free to change them.

@zadjii-msft commented on GitHub (Aug 6, 2019): In fact, I'd suggest that the new keybindings are very "new"-Microsoft. > [Gnome Terminal](https://help.gnome.org/users/gnome-terminal/stable/txt-copy-paste.html) has a consistent keybinding that's not intuitive at first, but easy to adopt, and not too far from the usual <kbd>CTRL + C</kbd> for copy. > <kbd>CTRL + C</kbd> : Cancel > <kbd>CTRL + Shift + C</kbd> : Copy > <kbd>CTRL + Shift + V</kbd> : Paste This is the style of copy/paste keybindings for every other terminal on the planet, and the style we've chosen as the defaults. If you're unhappy with them, you're absolutely free to change them.
Author
Owner

@Panzerbjrn commented on GitHub (Aug 6, 2019):

please halt yourself before assuming the motivations of others and attacking individuals personally or their work.

Please feel free to point out what I said that was even remotely an attack on anyone or an assumption of motivations?
Or did you perhaps recognise the truth of what I wrote and felt defensive?

@Panzerbjrn commented on GitHub (Aug 6, 2019): > > please halt yourself before assuming the motivations of others and attacking individuals personally or their work. Please feel free to point out what I said that was even remotely an attack on *anyone* or an assumption of motivations? Or did you perhaps recognise the truth of what I wrote and felt defensive?
Author
Owner

@drk-mtr commented on GitHub (Aug 6, 2019):

I am so tempted to chime in with something more confrontational but I don't think it'll add to the debate so I'll just say this:

  • The devs have been very responsive, and have been accommodating of the many (often mutually conflicting) requests coming in from users. By this token the "old Microsoft" assertion seems unfounded and potentially disheartening for the people who have plowed a lot of work in to this.
  • This is a beta product, if you expect it to meet all your needs straight away you probably need to realign your expectations.
  • Some decisions will be made that won't work in your favour. Many won't work in my favour. However these are educated decisions made in the interest of supporting the average user (not just you), by talented devs who are acknowledging some compromise but are making pragmatic decisions nonetheless. By assuming your needs are paramount, you are potentially dismissing the needs of other users (e.g. WSL users like me who support the sensible decision to align with Gnome bindings and avoid escape sequence characters for default bindings).
  • This is open source. If you feel you have the expertise to override their decisions, then you are free to implement changes in your own fork. If you don't have that expertise, you can't reasonably claim that the decision taken is actually wrong. "It's not what I'm familiar with" is probably not a good enough justification (in my view).

I won't reply to responses as I know it won't add anything and that I shouldn't have even posted the above, but I couldn't resist throwing my two cents in - sorry!

@drk-mtr commented on GitHub (Aug 6, 2019): I am so tempted to chime in with something more confrontational but I don't think it'll add to the debate so I'll just say this: - The devs have been very responsive, and have been accommodating of the many (often mutually conflicting) requests coming in from users. By this token the "old Microsoft" assertion seems unfounded and potentially disheartening for the people who have plowed a lot of work in to this. - This is a beta product, if you expect it to meet all your needs straight away you probably need to realign your expectations. - Some decisions will be made that won't work in your favour. Many won't work in my favour. However these are educated decisions made in the interest of supporting the average user (not just you), by talented devs who are acknowledging some compromise but are making pragmatic decisions nonetheless. By assuming your needs are paramount, you are potentially dismissing the needs of other users (e.g. WSL users like me who support the sensible decision to align with Gnome bindings and avoid escape sequence characters for default bindings). - This is open source. If you feel you have the expertise to override their decisions, then you are free to implement changes in your own fork. If you don't have that expertise, you can't reasonably claim that the decision taken is actually wrong. "It's not what I'm familiar with" is probably not a good enough justification (in my view). I won't reply to responses as I know it won't add anything and that I shouldn't have even posted the above, but I couldn't resist throwing my two cents in - sorry!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#2586