Keyboard layout instellen met PowerShell

Op zowel Windows 8 als Windows 2012, die standaard met PowerShell v3.0 komen is het mogelijk om veel van de culturale instellingen te doen via de nieuw toegevoegde CmdLet's. Erg handig voor de Windows Core editions.

Om het toetsenbord op Azerty Belgium (NL-BE) te zetten type je hetvolgende:

Set-WinUserLanguageList -LanguageList NL-BE

Voor een lijst van alle culture  Cmd-Let's, gebruik het volgende commando:

[6] § M6600 {C:\}
>Get-Command -Module International

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Cmdlet          Get-WinAcceptLanguageFromLanguageListOptOut        International
Cmdlet          Get-WinCultureFromLanguageListOptOut               International
Cmdlet          Get-WinDefaultInputMethodOverride                  International
Cmdlet          Get-WinHomeLocation                                International
Cmdlet          Get-WinLanguageBarOption                           International
Cmdlet          Get-WinSystemLocale                                International
Cmdlet          Get-WinUILanguageOverride                          International
Cmdlet          Get-WinUserLanguageList                            International
Cmdlet          New-WinUserLanguageList                            International
Cmdlet          Set-Culture                                        International
Cmdlet          Set-WinAcceptLanguageFromLanguageListOptOut        International
Cmdlet          Set-WinCultureFromLanguageListOptOut               International
Cmdlet          Set-WinDefaultInputMethodOverride                  International
Cmdlet          Set-WinHomeLocation                                International
Cmdlet          Set-WinLanguageBarOption                           International
Cmdlet          Set-WinSystemLocale                                International
Cmdlet          Set-WinUILanguageOverride                          International
Cmdlet          Set-WinUserLanguageList                            International

Als je de language code niet uit het hoofd kent kan je zoeken via:

[System.Globalization.CultureInfo]::GetCultures('InstalledWin32Cultures')

or

[System.Globalization.CultureInfo]::GetCultures('InstalledWin32Cultures') | out-gridview

Om snel te kunnen filteren kan je de resultaten pipen naar 'out-viewgrid'

Filtering with out-gridview for international language codes