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

[Windows] Add right click copy/paste #1247

Merged
merged 3 commits into from
Feb 15, 2017
Merged

[Windows] Add right click copy/paste #1247

merged 3 commits into from
Feb 15, 2017

Conversation

Specro
Copy link
Contributor

@Specro Specro commented Dec 16, 2016

Adds the usual Windows behavior of copying or pasting when right clicking in the terminal. Would be nice if more people would test that this works correctly 😄 Besides that it's ready to be merged.

Closes #1019

@kleinfreund
Copy link

Would this lead to copying with rightclick on Windows by default?

That said, is there a main issue regarding cross-platform default keybindings? The various ways different operating system and terminal programs use shortcuts is an incredible mess. Copying via Mouse 2 (rightclick)? Or even ShiftIns? Or CtrlShiftC? Or only CtrlC? I'm sure there are even more ways.

In general, should the Hyper keybindings match the OS default? In this case, at this point I would argue that the default on Windows is CtrlC.

@albinekb
Copy link
Contributor

albinekb commented Dec 16, 2016

I would like this to be an opt-in-option. It's weird for users if Hyper acts different on based on OS...

Also you paste on right-click, what if you want to use the context-menu? 🤔

Any thoughts? As I don't use windows I'm not 100% sure 👼

@Specro
Copy link
Contributor Author

Specro commented Dec 16, 2016

@kleinfreund It seems Windows cmd has a QuickEdit mode which if enabled, lets the user select text in the window and copy/paste it on right click. Without it enabled, on right click a context menu is shown and then cmd actually considers Enter the default key for copying.

So one more key to that mess you mentioned 😕

I think we should go with @albinekb idea of making an option for this.

@ppot
Copy link
Contributor

ppot commented Dec 17, 2016

Appart form this. This type of action should be handled by hterm directly in the onMouseDown_

@anaisbetts
Copy link
Contributor

anaisbetts commented Dec 19, 2016

Windows Person here, let me answer a few questions for the macOS folx:

Would this lead to copying with rightclick on Windows by default?

If there is a selection, right-click == Copy and clear selection, if not, right-click == Paste

In general, should the Hyper keybindings match the OS default? In this case, at this point I would argue that the default on Windows is CtrlC.

Not in a terminal, because of the obvious conflict between Ctrl-C as SIGINT. The old-school DOS shortcut Shift-Insert applies here.

QuickEdit is a deeply Windows Thing but should indeed be an option in Hyper if it wants to be a terminal on Windows (tbh, if you got used to it on macOS or Linux, I bet you'd get value out of it there too tho). I suspect it should be opt-in though on non-Windows.

As a Windows user, trying to use a terminal without Quickedit is like trying to use a terminal one-handed :)

Also you paste on right-click, what if you want to use the context-menu? 🤔

When QuickEdit is enabled, there is no context-menu

@Specro
Copy link
Contributor Author

Specro commented Dec 19, 2016

@paulcbetts Very well explained 👌
@ppot Is this ok? 🤔

I named the config option quick edit for now. If anyone has any better suggestions they're welcome to share 😄

@anaisbetts
Copy link
Contributor

I would like this to be an opt-in-option. It's weird for users if Hyper acts different on based on OS...

I think that this should be enabled by default on Windows, since it is also enabled by default in the default terminal on Win10

@matheuss matheuss merged commit 270fe5b into vercel:master Feb 15, 2017
@matheuss
Copy link
Member

Thanks @Specro 🙌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants