Столкнулся со странным: Win10 сама ставит ненужные языки ввода с клавиатуры и удалить их никак нельзя. Поискал в интернетах и нашёл решение, две части в двух местах, объеденил. Докладываю:
1. Во-первых нужно запретить виндам ставить языки без нашего разрешения, для этого нужно с помощью regedit пойти в ветку
Computer\HKEY_USERS\.DEFAULT\Control Panel\International\User Profile System Backup\
и оставить только те языки, которые нужны, иначе после каждой перезагрузки снова будут ставится ненужные языки. У меня остался только русский, английский я удалил - у меня вместо английского латышский. Здесь удаляем целые ветки.
2. Почти там же, в ветке
Computer\HKEY_USERS\.DEFAULT\Control Panel\International\User Profile
удалить ветки с ненужными языками. У меня остался латышский, который позволяет набирать английский, и русский языки, остальное я удалил. Смотрим картинку:
3. Идём в ветку
Computer\HKEY_CURRENT_USER\Keyboard Layout\Preload
и удаляем ненужные языки, вот коды, которые я знаю: 00000407 - немецкий, 0000409 – английский, 00000419 – русский, 000426 - латышский. У меня, соответственно, остались русский и латышский. Здесь удаляем ключи.
Перезагружаем и всё будет как надо!
Все коды языков можно посмотреть там же в регистре по адресу:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes
Ещё одна бесючая вещь в Win10: на цифровой клавиатуре запятая вместо точки и изменить из настроек это невозможно. Я нашёл простой путь, забиндить на клавишу DEL цифровой клавиатуры клавишу "." Но на русской раскладке будет вводиться буква "Ю". Что бы это сделать нужно в реестр по адресу
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
добавить ключ
Scancode Map
с бинарным содержимым
00 00 00 00 00 00 00 00 02 00 00 00 34 00 53 00 00 00 00 00
Или просто скачать ниже готовый рег-файл и запустить, он добавит нужный ключ в нужное место. Если нужно будет вернуть в исходное состояние - просто удалить ключ. Изменения вступают в силу после перезагрузки.