Windows에서 설정에 없는 영어(미국) US 키보드 제거하기
Windows를 사용하다 보면 설정의 언어 목록에는 English (United States)가 없는데, Win + Space를 눌렀을 때는 다음과 같이 영어 US 키보드가 나타나는 문제가 생길 수 있다.
한국어
Microsoft 입력기
ENG
영어(미국)
US 키보드
이 글은 Windows 10/11에서 설정에 표시되지 않는 숨겨진 English (US) / US 키보드 레이아웃을 확인하고 제거하는 방법을 정리한 것이다.
레지스트리와 사용자 언어 설정을 다루므로, 실행 전 중요한 작업은 저장하고 가능하면 백업을 만들어 두는 것을 권장한다.
문제 원인
Windows의 입력기 목록은 단순히 설정 → 시간 및 언어 → 언어 및 지역 화면에 표시되는 언어만으로 구성되지 않는다.
다음 위치의 사용자별 레지스트리 설정과 언어 목록이 함께 관여할 수 있다.
HKEY_CURRENT_USER\Keyboard Layout\Preload
HKEY_CURRENT_USER\Keyboard Layout\Substitutes
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes
특히 US 키보드는 다음 식별자로 등록되는 경우가 많다.
| 레이아웃 ID | 의미 |
|---|---|
00000409 |
English (United States), US 키보드 |
00000412 |
한국어 키보드/한국어 Microsoft IME 계열 |
예를 들어 아래와 같은 상태라면 2 : 00000409가 영어 US 키보드 항목이다.
1 : 00000412
2 : 00000409
1. Windows 설정에서 먼저 제거
가장 먼저 일반 설정 화면에서 제거할 수 있는지 확인한다.
Win + I를 눌러 설정을 연다.- 시간 및 언어 → 언어 및 지역으로 이동한다.
- 한국어 오른쪽의
⋯메뉴를 누른다. - 언어 옵션을 선택한다.
- 키보드에서
US 키보드또는English (US)항목이 있다면⋯→ 제거를 선택한다. - 목록에 English (United States) 언어 자체가 있다면 해당 언어의
⋯메뉴에서 제거한다.
Windows는 언어별 옵션 화면에서 키보드 레이아웃을 추가하거나 제거하도록 제공한다.
설정 화면에 해당 항목이 아예 없다면 아래 PowerShell 방법으로 진행한다.
2. PowerShell에서 현재 키보드 레이아웃 확인
PowerShell을 실행한다. 일반적으로 관리자 권한은 필요하지 않지만, .DEFAULT 영역까지 확인할 때는 관리자 PowerShell이 편리하다.
현재 로그인한 사용자 계정의 키보드 레이아웃을 확인한다.
Get-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload'
예시 출력:
2 : 00000409
1 : 00000412
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Keyboard Layout\Preload
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Keyboard Layout
PSChildName : Preload
PSDrive : HKCU
PSProvider : Microsoft.PowerShell.Core\Registry
여기서 중요한 부분은 아래 두 줄이다.
2 : 00000409
1 : 00000412
00000409: 제거 대상인 영어(미국) US 키보드00000412: 유지할 한국어 입력기
PowerShell의 레지스트리 공급자를 사용하면 HKCU: 경로로 현재 사용자 레지스트리를 조회할 수 있다.
3. 기존 설정 백업
레지스트리 값을 바꾸기 전에 Preload 키를 파일로 백업한다.
reg export "HKCU\Keyboard Layout\Preload" "$env:USERPROFILE\Desktop\Keyboard-Layout-Preload-backup.reg" /y
성공하면 바탕 화면에 Keyboard-Layout-Preload-backup.reg 파일이 생성된다.
문제가 생겼을 경우 이 .reg 파일을 실행하거나, 레지스트리 편집기에서 가져오기로 복구할 수 있다.
4. 영어 US 키보드 삭제
앞의 조회 결과에서 00000409가 2번 값으로 등록된 경우, 아래 명령으로 해당 값만 제거한다.
Remove-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload' -Name '2' -Confirm
확인 프롬프트가 표시되면 Y를 입력한다.
확인 없이 바로 삭제하려면 다음을 사용한다.
Remove-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload' -Name '2'
Remove-ItemProperty는 레지스트리 키 자체가 아니라 지정한 값 이름과 데이터를 삭제하는 PowerShell 명령이다.
삭제 후에는 다시 확인한다.
Get-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload'
정상적으로 제거됐다면 다음처럼 한국어 항목만 남는다.
1 : 00000412
주의:
-Name '2'의 숫자는 예시다. 실제로는 먼저 조회한 결과에서00000409가 연결된 값 이름을 확인한 뒤 그 번호를 지정해야 한다.
5. 관련 레지스트리 한 번에 확인
US 키보드가 Preload 외의 위치에 남아 있으면 재부팅 후 다시 나타날 수 있다. 아래 스크립트로 네 곳을 모두 확인할 수 있다.
$paths = @(
'HKCU:\Keyboard Layout\Preload',
'HKCU:\Keyboard Layout\Substitutes',
'Registry::HKEY_USERS\.DEFAULT\Keyboard Layout\Preload',
'Registry::HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes'
)
foreach ($path in $paths) {
Write-Host "`n=== $path ===" -ForegroundColor Cyan
if (Test-Path $path) {
(Get-ItemProperty -Path $path).PSObject.Properties |
Where-Object { $_.Name -notlike 'PS*' } |
Select-Object Name, Value
}
else {
Write-Host '키가 없습니다.'
}
}
각 경로의 의미는 다음과 같다.
| 경로 | 역할 |
|---|---|
HKCU:\Keyboard Layout\Preload |
현재 로그인한 사용자의 기본 키보드 레이아웃 목록 |
HKCU:\Keyboard Layout\Substitutes |
키보드 레이아웃 ID 치환 규칙 |
HKEY_USERS\.DEFAULT\... |
로그인 화면 또는 기본 사용자 프로필에 적용될 수 있는 입력기 설정 |
출력에 00000409가 있으면 해당 경로와 값 이름을 확인한다.
예를 들어 다음과 같다면:
Name Value
---- -----
2 00000409
해당 경로에서 2 값을 제거한다.
Remove-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload' -Name '2'
Substitutes에 US 레이아웃과 관련된 값이 발견된 경우에도, 값 이름을 정확히 확인한 뒤 같은 방식으로 제거할 수 있다.
Remove-ItemProperty -Path 'HKCU:\Keyboard Layout\Substitutes' -Name '값이름'
6. 로그인 화면 기본 입력기 확인
현재 사용자 설정에서 US 키보드를 지웠는데도 로그인 화면이나 특정 상황에서 다시 나타나는 경우, .DEFAULT 프로필도 확인한다.
Get-ItemProperty -Path 'Registry::HKEY_USERS\.DEFAULT\Keyboard Layout\Preload'
치환 규칙도 같이 확인한다.
Get-ItemProperty -Path 'Registry::HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes' -ErrorAction SilentlyContinue
.DEFAULT의 값에도 00000409가 있다면, 해당 값 이름을 확인한 뒤 삭제한다.
예시는 다음과 같다.
Remove-ItemProperty `
-Path 'Registry::HKEY_USERS\.DEFAULT\Keyboard Layout\Preload' `
-Name '2'
.DEFAULT 프로필은 로그인 화면 등의 기본 입력기 환경과 연관될 수 있으므로, 해당 영역은 관리자 권한 PowerShell에서 작업하는 편이 안전하다.
7. 언어 목록에서 en-US 제거
레지스트리의 00000409를 지웠는데도 Win + Space 목록에 English (US)가 계속 남는다면, Windows 사용자 언어 목록에 en-US가 등록되어 있을 수 있다.
먼저 현재 언어 목록을 확인한다.
Get-WinUserLanguageList | Format-List LanguageTag, EnglishName, InputMethodTips
출력에 아래와 같은 항목이 있다면 영어(미국) 언어가 남아 있는 것이다.
LanguageTag : en-US
EnglishName : English (United States)
현재 목록을 백업해 둔다.
Get-WinUserLanguageList |
Out-File "$env:USERPROFILE\Desktop\language-list.txt"
그 다음 en-US를 제거하고 적용한다.
$languageList = Get-WinUserLanguageList
$languageList.RemoveAll({ $_.LanguageTag -eq 'en-US' })
Set-WinUserLanguageList $languageList -Force
Get-WinUserLanguageList는 현재 사용자 프로필의 언어 및 입력기 구성을 읽고, Set-WinUserLanguageList는 수정한 구성을 적용한다. 레지스트리에서 키보드 레이아웃이 제거된 뒤에도 언어 전환 목록이 남는 경우 이 방법이 유용하다.
8. 적용 및 최종 확인
설정 변경 후에는 열어 둔 작업을 저장한 뒤 다음 중 하나를 수행한다.
- Windows에서 로그아웃한 뒤 다시 로그인한다.
- 또는 PC를 재부팅한다.
로그인 후 Win + Space를 누른다.
정상적으로 처리됐다면 다음과 같이 한국어 입력기만 표시된다.
한국어
Microsoft 입력기
그리고 아래 항목은 사라져야 한다.
ENG
영어(미국)
US 키보드
빠른 해결 명령 모음
현재 사용자에게 00000409가 2번 값으로 등록되어 있는 경우, 아래 순서대로 실행하면 된다.
reg export "HKCU\Keyboard Layout\Preload" "$env:USERPROFILE\Desktop\Keyboard-Layout-Preload-backup.reg" /y
Remove-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload' -Name '2'
Get-ItemProperty -Path 'HKCU:\Keyboard Layout\Preload'
확인 결과가 다음처럼 나오면 성공이다.
1 : 00000412
이후 로그아웃 또는 재부팅하여 입력기 목록을 새로고침한다.
정리
설정 화면에 없는 English (US) 키보드는 보통 사용자 레지스트리의 Keyboard Layout\Preload 또는 Windows 사용자 언어 목록에 남아 있는 경우가 많다.
해결 절차는 다음과 같다.
- Windows 설정의 언어 옵션에서 US 키보드 제거를 시도한다.
HKCU:\Keyboard Layout\Preload에서00000409를 찾는다.- 변경 전 레지스트리를
.reg파일로 백업한다. 00000409에 해당하는 값만Remove-ItemProperty로 삭제한다.Substitutes와.DEFAULT프로필에도00000409가 남았는지 확인한다.- 필요하면
Get-WinUserLanguageList에서en-US를 제거한다. - 로그아웃하거나 재부팅한 뒤
Win + Space목록을 확인한다.