-
Notifications
You must be signed in to change notification settings - Fork 28.6k
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
Key bindings bug when multiple keyboards layouts configured in OS #7723
Comments
@mileusna VSCode caches the keyboard layouts it detects for as long as a window is open. Is your scenario switching between keyboard layouts while a VS Code window is open? |
@alexandrudima I investigated this now, it appears that bug depends which layout is set on opening of VSCode:
Yes, I do switch sometimes inside VSCode to local language to enter some string with local characters, but I done that before, then switch back to EN for programing and easier access to [] {} etc. that was not the problem until latest release. Even now it works fine if you open VSC with EN, and even now VCS active different shortcuts depending on kb layout, but if you open VSC with other kb active, shortcuts are messed up. Edit: I usually open VSCode from command line with # code . |
I'm having the same problem... |
This is for now a limitation documented in http://code.visualstudio.com/docs/customization/keybindings#_keyboard-layouts |
This same problem exists when attempting to define a custom keybinding. If I start vscode in my specialized keyboard layout I am unable to make most keybinding shortcuts (constantly telling me its a different symbol for my layout). To get around this, after reading this thread, I open VSCode with US keyboard, set my bindings, then switch my keyboard. All works well with that work around. Thought that might help for anyone attempting to set keybindings. Update: I just realized that once I close VSCode, for keyboard shortcuts to work correctly i have to start my editor in US every time (a bit of a hassle). |
@michaelbpaulson I'm in the same situation. I use a custom layout and even though it is selected VSCode doesn't handle the |
I have validated that we now (i.e. after PR #22894 aka #17521 -- in today's Insiders build) detect correctly keyboard layout changes on OSX. The keybinding service refreshes its state (I have tried with launching VSCode under a German keyboard layout and then switching to US and |
It seems this bug also affects Linux. I found that VSCode doesn't look at the active keyboard layout, but instead it looks at the first available layout. In Ubuntu it's possible to change the order of the Input Sources or Layout and putting English US first fixed the shortcuts. |
@RicardoEPRodrigues you are correct, there are some limitations on Linux. You hint on the one that we detect the keyboard layout that X11 is aware of. i.e. the one |
Steps to Reproduce:
By looking at keybindings.json I found this info for keyboard layout:
"For your current keyboard layout press ⌘+-"
The problem is, my current keyboard layout is US and VSCode mixed that shortcuts and use alternative shortcuts on US keyboard layout.
Of course, same will happen with other shortcuts as well which have alternative keys for other languages layouts.
This is the new bug, I haven't experienced this with previous versions.
The text was updated successfully, but these errors were encountered: