2

I have a list of keyboard layouts already configured (for instance, us, dv, and ru); I switch between them with Win+Space, and the list changes occasionally. However, I have a need to switch to one of these configured layouts (without modifying the list) programmatically.

How can this be done from the command-line? (CMD would be preferred, though a PowerShell or VBScript solution would be acceptable if it's not possible though CMD.)

This is not a duplicate of How to change keyboard layout via command line cmd.exe on Windows XP/7?, which Accepted an answer stating how to change the list of keyboard layouts. As per the title, I am asking in this question how to change the keyboard layout -- that is, the active one -- without modifying the list of enabled layouts.

2
  • My specific use-case is: I must always switch the layout to US-International before starting certain games, due to their keybinds; I don't like the inconvenience of having to remember to do so, or restart the game if I've neglected to do so. Jun 23, 2021 at 22:27
  • Found this when searching for an answer to the same question. I eventually got the Set-WinUserLanguageList working well enough for my needs: although it sets the whole language list the first keyboard layout on the first language also gets active when running the script. Mar 14 at 20:10

0

You must log in to answer this question.

Browse other questions tagged .