How to disable Ctrl+Shift keyboard layout switch (for the same input language) in Windows?

126

34

In Windows (XP at least), when there are two or more keyboard layouts for the same input language, pressing Ctrl+Shift switches the keyboard layout. Where can this be disabled or changed to another keystroke combination?

A similar feature is changing input languages. Alt+Shift is the default keystroke and that can be changed and disabled through the Regional and Language Options in the Control Panel. The keyboard layout switch (Ctrl+Shift) cannot be found in that panel.

Pedro Palhoto

Posted 2010-02-15T10:37:49.173

Reputation: 1 407

3Gosh I wish Microsoft would have made this Right-Shift, & Right Ctrl – Jonathan – 2016-07-03T19:51:38.297

Answers

102

You were very close to the solution of your problem ;)

Control Panel -> Regional and Language Options -> Languages tab -> Details...

There, you can edit the hotkeys to change input languages. If you press the Change Key Sequence... button, you will be able to change (disable) the hotkey which switches keyboard layouts (that Ctrl+Shift combination you mentioned).

Neo

Posted 2010-02-15T10:37:49.173

Reputation: 1 697

10Just to extend the answer. The option is hidden within the "Change Key Sequence..." dialog when selecting the first row in the the two-column "Hot keys for input languages" in Advanced Key Settings. – Pedro Palhoto – 2010-02-15T13:06:04.730

2@Pedro - tricky indeed. I went to this dialog this morning, searching for the answer, and stopped just before, because the "change key sequence" was looking like referring to the currently selected item only. No indication about this ctrl+shift. – Gnoupi – 2010-02-15T13:31:27.330

You can also change this in Windows 8 under Control Panel\Clock, Language, and Region\Language\Advanced settings then "Change language bar hot keys", then edit "Between input languages" even though it looks like you don't need to. The evil evil evil ctrl-shift combo is there, it's just hidden. – user56reinstatemonica8 – 2016-07-31T22:25:14.050

7Aaaaand, on Windows 10 they have hidden this once again. But whereÉÉÉÉÉÉÉÉÉÉ – tbone – 2018-02-14T02:35:41.530

for windows 10 look @kojow7 answer – JinSnow – 2020-01-04T12:04:46.793

2Hopefully now sanity can be restored. – An̲̳̳drew – 2011-02-09T21:02:55.133

4

For those searching an answer for Windows 8: http://superuser.com/questions/604790/how-to-disable-ctrlshift-keyboard-layout-switch-in-windows-8

– KooKiz – 2014-01-18T21:09:22.317

71

It has moved again in Windows 8.1 and Windows 10. From the desktop:

  • Settings (with the mouse hover at bottom right, then click cogwheel)
  • Control Panel
  • Clock, Language and Region
  • Language (or "Add a language" or "Change input methods" - all go to the same place)
  • Advanced settings (in the left margin)
  • Change language bar hot keys (a hyperlink about halfway down) enter image description here
  • Advanced Key Settings (tab)
  • Change Key Sequence (button)

There you have (limited) options to change or disable the hotkeys for switching input language or keyboard layout.

Richard

Posted 2010-02-15T10:37:49.173

Reputation: 820

12Note that it'll probably look like there isn't a ctrl-shift keyboard shortcut to change keyboard layouts, but actually there is. It's hidden under "Between input languages", it looks like that's just alt-shift to change language, but actually that item in the list also includes ctrl-shift to change keyboard, hidden – user56reinstatemonica8 – 2016-07-31T22:27:26.310

1that comment from user568458 really saved this one for me. I almost missed it - it would be great if this could be incorporated into the answer. – Simon Zyx – 2017-12-06T13:22:13.560

Windows 10 has removed the ability to change this. – tbone – 2018-02-14T02:38:52.547

1@tbone I am using Windows 10 Home version 1709 build 16299.248 and the options are still there for me. – Richard – 2018-02-16T03:23:18.643

The options are there for me in Windows 10, but disabling them has no effect :( – Xavier Shay – 2018-03-12T05:38:38.853

This works for my Surface, but in the Control Panel on my desktop, under "Clock, Language, and Region", both "Add a language" and "Change input methods" are missing. – brianary – 2018-05-14T00:42:19.930

3It's moved again: Region & language>Advanced keyboard settings>Language bar options>Advanced Key Settings>Change Key Sequence... – Hashbrown – 2019-02-20T22:13:18.887

It seems like it's changed again. To get to Advanced keyboard settings I have to go via Settings -> Time & Language -> Language -> Spelling, typing, & keyboard settings (or just use the search bar to search for Advanced keyboard settings) – Tom Ellis – 2019-08-27T10:09:52.453

Or you can just type Advanced keyboard settings into the search box on the task bar. – Tom Ellis – 2019-08-28T08:52:18.460

1In Windows 10 version 1903 the location is as follows:

All Settings > Devices > Typing > Advanced Keyboard Settings > Input Language Hot Keys – Richard – 2019-08-28T14:15:21.893

30

Skip the UI. It'll just keep changing for no reason. Run this to get to the Text Services and Input Languages dialog:

rundll32 Shell32,Control_RunDLL input.dll,,{C07337D3-DB2C-4D0B-9A93-B722A6C106E2}

Then Advanced Key Settings tab → Change Key Sequence… button → choose Not Assigned for both, and click OK, then the other OK.

brianary

Posted 2010-02-15T10:37:49.173

Reputation: 711

6Yeah, it moved again in the April 2018 build of Windows. I think that’s the sixth place it’s been. – Chris Morgan – 2018-06-19T01:24:11.643

6This is awesome – Name McChange – 2018-07-13T15:11:58.240

This is absolutely amazing. I just had my computer rebuilt and as @ChrisMorgan noted it must have changed again because I can no longer find it in the UI anywhere. Thank you!!! – ktr – 2019-04-05T14:36:57.473

3Due to Microsoft moving, hiding, removing Control Panel items so many times, especially this one, your rundll32 solution above it perfect! (For anyone having trouble using this, try Win+R or Start Menu | Run and then paste it in. It will show the dialog that you need to disable the shortcuts--at least as of Windows 10 1809.) – Craig Silver – 2019-04-27T19:38:04.277

2This is the only way I seem to be able to find it in Windows 10 1903. Thank you! – thin – 2019-08-09T20:11:32.433

27

This is different in Windows 7. It's in the same Region and Language interface but you do this.

  • Keyboards and Languages tab
  • Change keyboards... button
  • In the popup go to the Advanced Key Settings tab
  • Here you can choose the Between input languages item in the list then press the Change Key Sequence... button
  • Change to Not Assigned radio buttons
  • Click Okay 3 times, then voila :)

Bob Sampson

Posted 2010-02-15T10:37:49.173

Reputation: 271

Also worth mentioning for Visual Studio purposes @IgnacioSolerGarcia, if you run VS as admin you'll have to change the settings for the Admin user too...I haven't figured that part out though... – drzaus – 2017-10-31T18:02:59.330

...figured it out -- literally switch users to that Admin account and change settings there, then sign out and back to your usual account, then probably restart VS. Bliss – drzaus – 2017-10-31T18:13:16.407

Even though I have it set to Not Assigned it still changes the layout when I press ctrl + shift :( – Vivek Athalye – 2018-08-13T16:19:12.267

2Thank you for this... was driving me nuts because CTRL+SHIFT+CLICK opens things up as administrator, but the CTRL+SHIFT would cause my keyboard layout to change. – Jason Down – 2013-01-31T19:04:14.863

1Thanks mate, really helpful in VS where ctrl + Shift + something else do lots of stuff – Ignacio Soler Garcia – 2014-06-03T10:31:54.507

15

In Windows 10:
Start > Settings > Time & Language > Region & Language > Additional date, time and regional settings > Change input method > Advanced settings > Change language bar hot keys > Change Key Sequence

vovahost

Posted 2010-02-15T10:37:49.173

Reputation: 313

2Wow, amazing you were able to find this!! But now that Iève gotten there, what do I doÉ - that is supposed to be a question mark by the way. This situation is hilariously depressing. – tbone – 2018-02-14T02:47:14.270

2Windows 10 is tricky because they changed it from versions to version. I got as far as the Advanced settings above, but did not notice the Change language bar hot keys... thanks! On other Windows 10 versions, you'll find the same thing under Region and language settings > Advanced Keyboard Settings > Language Bar Options > Change Key Sequence... – GaspardP – 2018-08-26T04:52:05.050

@GaspardP jesus christ, thank you. Can they stop moving this around? It's infuriating. – René – 2019-03-08T10:00:03.937

10

In Windows 10 from April 2018 onwards, the Control Panel step has been removed; you can get to the final dialogue box (“Text Services and Input Language”) directly from the Settings app:

Settings → Time & Language → Region & Language → Advanced keyboard settings → Language bar options → Advanced Key Settings → select Between input languages, Change Key Sequence…, both Not Assigned radio buttons, OK, OK.

And in some release since then it changed again…

Settings → Devices → Typing → Advanced keyboard settings (at the bottom) → Language bar options → Advanced Key Settings → select Between input languages, Change Key Sequence…, both Not Assigned radio buttons, OK, OK.

At least this change made sense.

Chris Morgan

Posted 2010-02-15T10:37:49.173

Reputation: 251

This worked for me! And I prefer not editing the registry manually is there's a UI way. It's probably safer in most cases.

This answer is way underrated. It should be on top now and as long as it's the one with the right answer – Emilio – 2019-01-23T03:56:01.260

1My own vote goes for brianary’s answer to run it via rundll32, actually, because it does just keep on moving! – Chris Morgan – 2019-01-23T07:34:58.153

Took me forever to find the setting. Nice find! – Björn Lindqvist – 2020-01-23T02:28:42.123

5

The easiest way (for Windows 10 in 2019):

  1. In the Windows Start Menu Search type Advanced Keyboard Settings
  2. Click Input language hot keys
  3. Double click Between input languages
  4. Set both the Switch Input Language and Switch Keyboard Layout settings to Not Assigned (or assign them how you wish).

kojow7

Posted 2010-02-15T10:37:49.173

Reputation: 220

5

The registry key controlling this is documented here: http://technet.microsoft.com/en-us/library/cc976564.aspx

If you're like me, you will also want to disable ctrl+shift hotkey on the logon screen, so add the reg value mentioned to the HKEY_USERS.DEFAULT\Keyboard Layout\Toggle key.

Will

Posted 2010-02-15T10:37:49.173

Reputation: 51

4

As will said, you can change it through registry, it is documented here: http://technet.microsoft.com/en-us/library/cc976564.aspx

If like me you don't like clicking too much, you can switch it off fastly, typing this in Start Menu/Run:

powershell -Command Set-ItemProperty -Path 'HKCU:\Keyboard Layout\Toggle' -Name HotKey -Value 3

user3249994

Posted 2010-02-15T10:37:49.173

Reputation: 41

2

This is how to disable it in the standard edition of Windows 8.1, for any other edition you might be better of manually locating the setting in the Control Panel.

Save the below as a .reg file and run it, the hotkey will be disabled immediately without the need for logging off. Alternatively, follow the instructions in the code comments to set it manually through the Control Panel:

Windows Registry Editor Version 5.00

; Note: This is for Windows 8.1 - the location of the settings/keys change with different Windows versions
; CONTROL PANEL:
; Control Panel->All Control Panel Items->Language->Advanced settings->Change Language Bar Hot Keys->Advanced Key Settings->Change Key Sequence...->"Not Assigned"
; WINDOWS REGISTRY:
; Primary Key: [HKEY_CURRENT_USER\Keyboard Layout\Toggle]
; Optional Secondary Key (might be needed for Windows logon screen): [HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle]
; Values: "Language Hotkey" and "Layout Hotkey"
;1 = Key Sequence enabled; use LEFT ALT+SHIFT to switch between locales.
;2 = Key Sequence enabled; use CTRL+SHIFT to switch between locales.
;3 = Key Sequences disabled.

[HKEY_CURRENT_USER\Keyboard Layout\Toggle]
"Language HotKey"="3"
"Layout HotKey"="3"

[HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle]
"Language HotKey"="3"
"Layout HotKey"="3"

abvgd

Posted 2010-02-15T10:37:49.173

Reputation: 21

0

On Windows 7 I opened the "Region and Language" tool. Clicked "Keybords and Languages" tab then clicked "Change keyboards" button. Then in the "Installed services" tree list I selected the keyboards I didn't want (French) and clicked "Remove.

leif81

Posted 2010-02-15T10:37:49.173

Reputation: 367