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

F1 and keybinding customization doesn't work in the integrated terminal #7269

Closed
pcgeek86 opened this issue Jun 6, 2016 · 9 comments
Closed
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug terminal General terminal issues that don't fall under another label verified Verification succeeded
Milestone

Comments

@pcgeek86
Copy link

pcgeek86 commented Jun 6, 2016

  • VSCode Version: Insiders 1.2.0
  • OS Version: Windows 10 Insider Build 14332

Steps to Reproduce:

  1. Open Terminal
  2. Make sure Terminal has focus
  3. Press F1 key to invoke Command Palette
  4. Command Palette doesn't open

Cheers,
Trevor Sullivan
Microsoft MVP: Cloud & Data Center Management
https://trevorsullivan.net
https://twitter.com/pcgeek86

@Tyriar Tyriar added bug Issue identified by VS Code Team member as probable bug terminal General terminal issues that don't fall under another label labels Jun 6, 2016
@Tyriar Tyriar self-assigned this Jun 6, 2016
@Tyriar
Copy link
Member

Tyriar commented Jun 6, 2016

Huh, didn't even notice this because I use ctrl+shift+p for the command palette. Thanks for the report @pcgeek86

@pcgeek86
Copy link
Author

pcgeek86 commented Jun 6, 2016

Of course, thanks for looking into it @Tyriar!! 😄

I used to use CTRL + SHIFT + P, but then I changed over to F1 when I heard other folks using it. Honestly I love the natural feel of having both options. I use them both at various times.

@BurtHarris
Copy link

BurtHarris commented Jun 20, 2016

I originally didn't understand why you would expect F1 to do this in the "new terminal", but by "new terminal", I assumed you meat the a CMD prompt window, such as displayed by pressing Ctrl+Alt+C under version 1.2.1. I now understand you were referring to the "integrated terminal" displayed with Ctrl+` (Ctrl+BackTick)

@Tyriar
Copy link
Member

Tyriar commented Jun 21, 2016

The problem here is knowing which key sequences vscode should capture and which should be passed to the terminal. If vscode consumes F1 then any terminal applications that rely on this will no longer work. Going to leave this one for now unless many people report as there is always the workaround of closing the terminal or using the other keybindings.

@Tyriar Tyriar added this to the Backlog milestone Jun 21, 2016
@BurtHarris
Copy link

Agreed, I believe this is then not a bug but by design.

@kieferrm
Copy link
Member

I'm a F1 person. Not having F1 is particularly weird for cases like when you want to use the command palette to create a new terminal or navigate between them.

@Tyriar
Copy link
Member

Tyriar commented Jun 28, 2016

Putting my comment on #8312 here on the potential way forward:

I think the eventual solution to this is being able to tell the terminal which keystrokes to not pass to the terminal, it could be a bit tricky to do though.

@Tyriar
Copy link
Member

Tyriar commented Jul 5, 2016

Upstream issue xtermjs/xterm.js#152

@Tyriar Tyriar added the upstream Issue identified as 'upstream' component related (exists outside of VS Code) label Jul 5, 2016
@Tyriar Tyriar changed the title F1 Keyboard Shortcut doesn't work in new Terminal F1 and keybinding customization doesn't work in the integrated terminal Jul 10, 2016
@Tyriar Tyriar removed the upstream Issue identified as 'upstream' component related (exists outside of VS Code) label Aug 8, 2016
@Tyriar Tyriar modified the milestones: August 2016, Backlog Aug 8, 2016
@Tyriar Tyriar closed this as completed in 0d6dd86 Aug 8, 2016
@Tyriar
Copy link
Member

Tyriar commented Aug 8, 2016

I just pushed a change that resolves this that will be available for testing in Insiders tomorrow. It exposes the terminal.integrated.commandsToSkipShell setting which is a list of command IDs that will not be handled by the terminal, allowing them to bubble up to be handled by the VS Code keybinding system. This is the default value:

    "terminal.integrated.commandsToSkipShell": [
        "editor.action.toggleTabFocusMode",
        "workbench.action.quickOpen",
        "workbench.action.showCommands",
        "workbench.action.terminal.copySelection",
        "workbench.action.terminal.focus",
        "workbench.action.terminal.focusNext",
        "workbench.action.terminal.focusPrevious",
        "workbench.action.terminal.kill",
        "workbench.action.terminal.new",
        "workbench.action.terminal.paste",
        "workbench.action.terminal.runSelectedText",
        "workbench.action.terminal.scrollDown",
        "workbench.action.terminal.scrollUp",
        "workbench.action.terminal.toggleTerminal"
    ]

Tyriar added a commit that referenced this issue Aug 8, 2016
@jrieken jrieken added the verified Verification succeeded label Aug 31, 2016
@vscodebot vscodebot bot locked and limited conversation to collaborators Nov 18, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug terminal General terminal issues that don't fall under another label verified Verification succeeded
Projects
None yet
Development

No branches or pull requests

5 participants