Решение проблемы одно: создаём скрипт (PowerShell ISE), в который добавляем нужные языки через запятую.
Вызываем реестр через Win+R командой regedit!
1. Я создал в корне диска С:/fix_languages.ps1
Get-WinUserLanguageList
Set-WinUserLanguageList -LanguageList ru,pl,en-US -Confirm
Set-WinUserLanguageList -LanguageList ru,pl –Confirm
Команды просто добавят в список языков ваши. Захотите ещё один язык, добавляем новый язык (в последнюю строчку!) после запятой и активируем снова: …ru, pl, ch … – пример!
Но! Во второй строчки постарайтесь ввести тот язык, который у вас прилетает из космоса (который хотите удалить).
2. Идём в реестр, по пути:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
И добавляем строковый параметр с путём (кавычки необязательно): «C:\fix_languages.bat»
Название любое.
Путь должен быть ваш. При загрузке всё сработает, но можно вызывать вручную из каталога.
Потом! Выделяем всё и нажимаем F8! Ну то есть делаем это вручную!
Всё…
Всё, что можно сделать.
Можете, конечно, ходить в панель управления, добавлять язык за каждым разом и удалять.
Нет другого варианта. Чистка реестра и выдуманные строковое параметры вам не помогут!
Это проблема системы, не ваша.
В Windows 11 скрипты как-то ещё работают, раз на 2. То сработает, то нет.
Приходится запускать его вручную. Здесь скрипты вообще не работают.
PowerShell сделан таким образом, чтобы пользователь всегда запускал его вручную.
Вот когда, наконец-то, соединят CMD и PowerShell, что является полным бредом, будут скрипты работать. Пускай удаляют CMD, мы будем сидеть на PowerShell и будем счастливы.
CMD оставили только потому, что он простой и он им нравиться! Они его просто не бояться…
А пока предлагаю написать несколько потоков для связи CMD и PowerShell, чтобы данная программа запускалась автоматически и сама себя выполняла. Ну как вам?
Нет сегодня системы. Есть только радио!
Ещё добавлю: забудьте про Linux. Хватит мучаться с ним. Это система СЛОМАНА!
Linux написан на JAVA. Там JVM подключается, а JVM не работает. Их виртуальная машина изначально работала плохо по той причине, что JAVA язык несовершенный (испорченный с самого начала). Здесь ничего не поделать, нужно просто писать новую систему на новом языке. Моё предложение: С !
Так вот Android и iOs, MacOS (~ Linux) туда же… Там тоже JVM.
Вспоминаем историю с дохлым Symbian (изначально, в проекте: Deli). Туда тоже запихнули JVM и на теперешний момент эта система не работает.
Microsoft передаем привет, потому что данную проблему они не могут решить с 1998 года, ещё с Windows Net x86.
Сравнительно часто в списке раскладок клавиатуры пользователи обнаруживают лишнюю: например, британскую английскую. Происходит это обычно из-за того, что она была добавлена при установке системы без учета того, что английская (США) устанавливается по умолчанию, но возможны и другие причины.
В этой пошаговой инструкции подробно о способах удалить лишнюю раскладку клавиатуры в Windows 11 и Windows 10 — в Параметрах или PowerShell.
Удаление раскладки клавиатуры в Параметрах
Интерфейс параметров Windows 11 и Windows 10 отличается, но действия для удаления ненужных раскладок и сопутствующие нюансы одинаковы.
Достаточно выполнить следующие шаги:
- В Windows 11 нажмите по индикатору языка в области уведомлений и выберите «Дополнительные настройки клавиатуры», либо перейдите в Параметры — Время и язык — Язык и регион.
- В Windows 10 нажмите по значку языка и откройте пункт «Настройки языка», либо перейдите в Параметры — Время и язык — Язык.
- В Windows 11 справа от языка, который нужно удалить, нажмите по трем точкам и выберите пункт «Удалить». Если пункт не активен, сначала переместите язык вниз (первый по счету язык удалить нельзя).
- В Windows 10 нажмите по языку, который нужно удалить в списке «Предпочитаемые языки» и нажмите соответствующую кнопку. Если кнопка не активна, переместите язык вниз с помощью кнопки со стрелкой: первый по счету язык удалить нельзя.
В результате выбранный язык ввода (раскладка клавиатуры) будет удален.
Удаление языка ввода в PowerShell
Если при удалении раскладки клавиатуры возникли какие-либо проблемы или доступ к Параметрам Windows ограничен, можно использовать удаление с помощью Windows PowerShell (или Терминала Windows):
- Запустите Терминал Windows или Windows PowerShell от имени администратора. Сделать это можно, открыв контекстное меню кнопки «Пуск», нажав по ней правой кнопкой мыши.
- Введите команду
Get-WinUserLanguageList
и нажмите Enter. Это выведет список установленных языков. Обратите внимание на значение LanguageTag языка и раскладки, которую нужно удалить.
- В моем случае нужно удалить Английскую (Великобритания), это en-GB, именно этот идентификатор языка я буду использовать во второй команде, вам его потребуется изменить на свой. Команды для удаления языка:
$1 = Get-WinUserLanguageList $1.RemoveAll( { $args[0].LanguageTag -clike 'en-GB' } ) Set-WinUserLanguageList $1 -Force
Если всё прошло успешно, язык будет удален из списка доступных для ввода с клавиатуры в Windows.
Удаление раскладки в редакторе реестра
Ещё один метод — использование редактора реестра для удаления языка ввода:
- Нажмите правой кнопкой мыши по кнопке «Пуск», выберите пункт «Выполнить», введите regedit в диалоговое окно «Выполнить» и нажмите Enter.
- В редакторе реестра перейдите в раздел HKEY_CURRENT_USER\Keyboard Layout\Preload
- В этом разделе в правой панели реестра вы увидите несколько пунктов: они представляют собой языки ввода, причем расположены в том же порядке, что и в «Параметрах» Windows. Нажмите правой кнопкой мыши по ненужному языку, выберите пункт «Удалить».
- Закройте редактор реестра, выйдите и снова зайдите в систему, либо перезагрузите компьютер: лишняя раскладка должна исчезнуть.
Известна проблема, когда языков раскладки отображается больше, чем языков в Параметрах, PowerShell или реестре, то есть лишний язык нигде кроме выбора языка ввода не виден.
Одно из возможных решений: установить этот лишний язык в Параметрах языка (как в первом способе, но именно добавить его), а уже после добавления — удалить этот язык, используя любой из описанных подходов.
Вкратце опишу проблему. После запуска компьютера периодически (не всегда и не с самого старта) возникает данная ситуация: появляется дополнительная раскладка клавиатуры (замечаю я это в тот момент, когда с английского на русский одного ctrl+shift не хватает).
Выглядит это дело вот так:
Причём в самих настройках языка британская раскладка не отображается:
И каждый раз для того, чтобы это пофиксить, мне приходится начинать её устанавливать, чтобы она появилась в списке и её можно было удалить.
Вопрос: как это пофиксить раз и навсегда?
Пыталась как-то через реестр это делать, не помогло, проблема снова стала актуальна. Что-то пыталась ещё из советов в гугле делать, проблема не решена. Возможно, кто-то сталкивался с таким и смог справиться. Помогите, пожалуйста.
P.S. К сожалению, не могу описать, после чего конкретно появляется эта проблема: систематику так и не выявила, появляется рандомно.
В «нормально» сконфигурированной Windows 10 доступно два языка ввода и две раскладки переключения языков — русский и английский. Конечно, если у вас установлена Windows 10 не «для одного языка», вы можете добавить сколько угодно локализаций и столько же раскладок, но речь пойдет вовсе не об этом. Что делать, если у вас невесть откуда в языковой панели появилась дополнительная раскладка диалекта одного языка как в показанном на скриншоте примере?
Казалось бы, в чём тут проблема, разве лишнюю раскладку нельзя удалить через языковые настройки?
Нажали на этой же панели «Настройки языка», открыли параметры языка с лишней раскладкой.
Выбрали ненужную клавиатуру и кликнули «Удалить».
Проблема только в том, что стандартным способом раскладка отказывается удаляться, а если и удаляется, то после перезагрузки компьютера появляется в языковой панели повторно.
В таких случаях иногда рекомендуют очистить содержимое каталога Preload в ключе реестра HKEY_USERS\.DEFAULT\Keyboard Layout\Preload и перезагрузить компьютер, но это приводит к тем же результатам.
Решить эту проблему действительно можно путем правки реестра, только вот работать нужно с другими ключами. Но еще важнее понимать, что именно стало причиной такого поведения Windows 10. А причина в том, что ваш компьютер скорее всего синхронизирован с каким-то другим устройством, на котором включена дополнительная раскладка при условии, конечно, что вы используете учетную запись Microsoft.
Поэтому, перед тем как приступать к дальнейшим действиям, потрудитесь отключить синхронизацию языковых настроек в разделе «Учетные записи» приложения «Параметры».
Если настройки синхронизации у вас по какой-то причине недоступны, откройте командой regedit редактор реестра, разверните ключ HKLM\SOFTWARE\Policies\Microsoft\Windows\SettingSync и создайте справа два параметра типа DWORD: DisableSettingSync со значением 2 и DisableSettingSyncUserOverride со значением 1 (готовый твик прилагаем по ссылке disk.yandex.ru/d/N9lWT2O1-FotFw).
После этого перезагрузитесь и попробуйте удалить лишнюю раскладку через приложение Параметры как было показано выше.
Сделать это можно, кстати, и через реестр, предварительно узнав на сайте (таблице) Майкрософт docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-language-pack-default-values код лишней языковой панели.
В нашем примере это 0x00010409, что соответствует индийской раскладке.
Проследуйте по указанным ключам реестра.
И удалите параметры, в качестве которых задан код дополнительной раскладки.
На всякий случай проверьте ключи реестра и на этом изображении.
Если мультистроковый параметр languages содержит лишние раскладки, отредактируйте его. Для этого кликаем по нему два раза мышкой и удаляем в открывшемся окошке ненужную раскладку.
Вот и всё, новая конфигурация вступит в силу после перезагрузки компьютера.
Загрузка…
One of the under-reported problems is where Windows 11/10 keeps adding keyboard layouts without permission. As you add new languages, it starts appearing in the language bar and cannot be removed from the Keyboard Layout at all. One of the people reported that it also included English US – Greek (220) Latin Keyboard and English UK, despite having English US already.
The problem that arises because of this is that it makes switching really hard when somebody is just using two languages. Also, it keeps switching layout as you type. Punctuation changes at any time and you will need to switch the keyboard layout back to what I chose and correct the mistake.
Read: How to change Windows Keyboard Layout.
Here are the methods that you can use to fix this problem in Windows 11 or Windows 10:
- Turn off the Automatic Keyboard layout change option.
- Add and then remove the automatic keyboard layout.
- Override Microsoft automatic language settings via PowerShell.
- Fix the problem using the Registry Editor.
1] Turn off the Automatic Keyboard layout change option
You can try disabling the Automatic Keyboard layout change option to fix the problem. This setting can be tweaked by going to the Advanced Keyboard Settings. Here are the steps to do so:
- First of all, open the Windows 11 Settings app and navigate to Time & language tab.
- Now, click on the Typing option from the right pane.
- Next, tap on the Advanced keyboard settings option.
- Inside the Advanced keyboard settings page, uncheck the Let me use a different input method for each app window option.
- Check if this fixes up the issue for you.
In case it doesn’t fix the problem for you, move on to the next potential fix.
2] Add and then remove the automatic keyboard layout
The first method that you can try is to add the automatically added keyboard layout and then remove it again. It is kind of a workaround and might fix the problem for you. To do that in Windows 11, you can follow the below steps:
Firstly, open the Settings app and go to the Time & language tab. Now, from the right panel, tap on the Language & region option.
Next, click on the three-dot menu for a language under the Language section. After that, press Language options and then select the Add a keyboard button.
Then, choose the automatically added layout to add that keyboard layout. You will see the keyboard layouts under the Keyboards section.
Finally, click on the three-dot menu present next to the previously added keyboard and choose Remove.
If the keyboard layout appears again, you will have to repeat the above process again.
Windows 10: The OS may randomly add that English US layout, and as someone who uses two layouts, it makes quick switching harder (you need one more keypress, and if you need to switch a lot in a short time, it becomes frustrating.)
- From Language preferences, select the English language.
- Click Options.
- Click “Add a Keyboard” and select that automatically added layout.
- After adding it, click on it and click Remove.
Note that may randomly reappear again, and you will have to repeat the step again.
3] Override Microsoft automatic language settings via PowerShell
If you use PowerShell, you can use it to override Microsoft`s default and weird language settings then it does not jump around anymore. You need to find InputTip and Culture settings for your desired settings of course. They can be found online in Microsoft IT Pros documentation.
Set-WinCultureFromLanguageListOptOut -OptOut 1 Set-WinUILanguageOverride -Language en-US Set-WinDefaultInputMethodOverride -InputTip "0426:00040426" Set-Culture lv-LV
Keep this PowerShell script handy, and execute it whenever you see the layout appear again. If this is happening in your company or a large number of computers, you can use run this script when somebody logs in to the computer.
4] Fix the problem using the Registry Editor
You can try a Registry hack to fix this problem. You will need to create a new DWORD to get rid of this issue. Here is the step by step procedure to resolve the issue using Registry Editor:
Firstly, press the Windows + R hotkey to evoke the Run dialog box and enter regedit in it to open up the Registry Editor app.
Now, navigate to the following key in Registry Editor:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
Next, right-click on the right-pan and select the DWORD (32-bit) Value option from the context menu.
After that, name the newly created DWORD as IgnoreRemoteKeyboardLayout.
Then, double-click on the above DWORD and set its value to 1.
Finally, close the Registry Editor app and then reboot your PC.
Hopefully, this will fix up the issue for you.
How do I turn off Keyboard Layout Synchronization?
To turn off keyboard layout synchronization in Windows 11, you can follow the below steps:
- Open Settings and go to the Accounts tab.
- Go to the Windows backup section.
- Open the Remember my preferences drop-down.
- Uncheck the Language preferences option.
Are you facing similar problems? Do your keyboard jumps to a different language as you type? Let us know if this solution fixed your problem.
This post will help you if you are unable to remove a Language from Windows.