Как изменить раскладку клавиатуры через командную строку cmd.exe в Windows XP/7?
Можно ли изменить раскладку клавиатуры через командную строку в Windows XP/7?
8 ответов
Да .
http://msdn.microsoft.com/en-us/goglobal/bb964650
пример командной строки:
control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"
Пример AddKeyboardLanguage.xml:
<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList>
<gs:InputPreferences>
<!--ch-Google--><gs:InputLanguageID Action="add" ID="0804:E0200804"/>
</gs:InputPreferences>
</gs:GlobalizationServices>
RemoveKeyboardLanguage.xml пример:
<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList>
<gs:InputPreferences>
<!--ch-Google--><gs:InputLanguageID Action="remove" ID="0804:E0200804"/>
</gs:InputPreferences>
</gs:GlobalizationServices>
Нет (не через CMD), вам придется изменить его следующим образом. Раньше был keyb.com
команда в DOS, но больше не существует в Windows.
Windows 7 или Windows Vista
- Нажмите Пуск, введите intl.cpl в поле Начать поиск и нажмите клавишу ВВОД.
- На вкладке "Клавиатуры и язык" нажмите "Изменить клавиатуру". Нажмите Добавить.
- Разверните язык, который вы хотите. Например, расширить французский (Канада).
- Разверните список "Клавиатура", установите флажок "Канадский французский" и нажмите "ОК".
- В опциях нажмите View Layout, чтобы сравнить раскладку с реальной клавиатурой.
- В списке Язык ввода по умолчанию нажмите Французский (Канада) - Канадский французский, а затем дважды нажмите кнопку ОК.
- В диалоговом окне "Язык и региональные стандарты" нажмите "ОК".
- Нажмите "Языковая панель", а затем нажмите "FR французский (Канада)".
Windows XP
- Нажмите кнопку Пуск, введите intl.cpl в поле "Выполнить" и нажмите клавишу ВВОД.
- На вкладке "Языки" нажмите "Подробнее".
- В разделе Установленные службы нажмите Добавить.
- В списке "Язык ввода" выберите нужный язык. Например, выберите французский (Канада).
- В списке Раскладка клавиатуры /IME щелкните Канадский французский, а затем нажмите ОК.
- В разделе Выберите один из установленных языков ввода, который будет использоваться при запуске списка компьютеров, нажмите "Французский (Канада)" - "Канадский французский", а затем нажмите "ОК".
- В диалоговом окне "Язык и региональные стандарты" нажмите "ОК".
- Нажмите на языковую панель, а затем нажмите на французский (Канада).
Но вы можете в Linux, используя loadkeys
,
"В Windows 8 появился новый модуль International PowerShell. К сожалению, не похоже, что его можно перенести обратно или есть альтернатива Windows 7"
Вы можете попробовать это (пример).. это включает только выбранные раскладки клавиатуры и очищает остальные
Install-Module -name timezone -force
#Sets the systems timezone on "Western Europe Standard time"
$langlist = New-WinUserLanguageList en-US
#Clears the other input methods from the displayed language
$langlist[0].InputMethodTips.Clear()
#Sets and adds the swiss-German keyboard
$langlist[0].InputMethodTips.add('0409:00000807')
#Sets and adds the swiss-french keyboard
$langlist[0].InputMethodTips.add('0409:0000100C')
#Apply the changes made on the system (and force to avoid the prompt message)
Set-WinUserLanguageList $langlist -Force
Для информации: Set-WinUserLanguageList
как предложено в других ответах, он не только меняет активный язык ввода с клавиатуры, он переписывает текущий список (включенных) языков ввода. Чтобы установить два или более языков, между которыми вы можете переключаться, используйте что-то вроде этого:
Set-WinUserLanguageList -Force en-US,sv-SE
Язык, указанный в качестве первого аргумента списка, будет выбран в качестве активного языка, поэтому это может быть эффективным способом изменения как активного языка, так и общего списка доступных языков клавиатуры.
В Windows 8 появился новый международный модуль PowerShell. К сожалению, не похоже, что это может быть перенесено или имеет какую-либо альтернативу Windows 7
Настройте международные параметры с помощью командлетов PowerShell
В Windows 8 вы можете использовать командлеты PowerShell для международных настроек, чтобы изменить язык при работающей установке Windows. Преимущество использования командлетов PowerShell заключается в том, что вы можете включить их в сценарий, чтобы упростить развертывание и настройку Windows. Источник: http://technet.microsoft.com/en-us/library/hh825705.aspx
- Откройте приглашение Windows PowerShell.
Импортируйте модуль международных настроек, выполнив следующую команду:
ИПМО международный
Отобразите информацию о локали на компьютере, выполнив следующую команду:
Get-WinSystemLocale
Установите локаль для региона и языка, который вы хотите. Например, следующая команда устанавливает системный языковой стандарт на японский (Япония):
Set-WinSystemLocale ja-JP
Прежде всего я хотел бы отметить, что это работает в Windows 10, и я буду использовать Powershell.
Во-вторых, я опубликую здесь чистый ответ на основе всей информации в этой теме (и еще одной) в одном сообщении.
1- Получите текущий список языков с помощью:
Get-WinUserLanguageList | Format-Table -Property LanguageTag, InputMethodTips
В моем случае это распечатает текущие доступные настройки в системе:
LanguageTag InputMethodTips
----------- ---------------
en-US {0409:00000409}
nl-BE {0813:00000813}
2- Теперь, чтобы добавить еще один язык (в моем случае я хотел добавить португальский «pt-PT»):
Set-WinUserLanguageList -Force 'pt-PT', 'en-US', 'nl-BE'
Это оставит предыдущие языки в списке + добавьте тот, который мне нужен, на 1-е место, это сделает все языки доступными в пользовательском интерфейсе и упростит переключение клавиатур:
Опция «-Force» просто позволит избежать запроса на подтверждение.
Вы можете сделать это в Powershell, используя следующие команды.
Сменить клавиатуру на арабскую
Set-WinUserLanguageList -LanguageList ar-eg, en-US -force
Измените клавиатуру на английскую:
Set-WinUserLanguageList -LanguageList en-US, ar-EG -force
$psdrive = New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
Set-ItemProperty -Path "HKU:\.DEFAULT\Keyboard Layout\Preload\" -Name 1 -Value 00001033
$psdrive | Remove-PSDrive
Это прекрасно работает в Windows 7 PowerShell, но вы должны выйти из системы и снова войти в нее, чтобы включить ее, если она меняет макет на английский, если вам нужен другой язык, вам нужно изменить номер -Value, вы можете найти их здесь: https://www.science.co.il/language/Locale-codes.php