The list of keyboard layouts as they evolved through the history of Windows.
This website operates on layout metadata snapshots that are grabbed from live systems and keyboard driver files that can also be retrieved offline or from installation media.
The history is not comprehensive, check the sidebars for which versions were used to compile the lists below.
Note that prior to Windows Vista, far east layouts shipped only with separate far east editions of Windows.
Layout metadata history
Note that displayed layout names are valid at the Windows version under which they are listed.
Windows 10.0.27686.1000
Windows 10.0.26040.1000
Windows 10.0.26002.1000
Windows 10.0.25247.1000
Renamed:
- 0000040c French โ French (Legacy, AZERTY)
Windows 10.0.25211.1001
Windows 10.0.21390.1
Renamed:
Windows 10.0.21318.1000
Windows 10.0.19608.1000
Renamed:
- 0000042f Macedonian (North Macedonia) โ Macedonian
- 0001042f Macedonian (North Macedonia) - Standard โ Macedonian - Standard
- 00090c00 NโKo โ NรขโฌโขKo
Windows 10.0.19592.1001
Renamed:
- 0000042c Azeri Latin โ Azerbaijani Latin
- 00000445 Bengali โ Bangla
- 00010445 Bengali - INSCRIPT (Legacy) โ Bangla - INSCRIPT (Legacy)
- 00020445 Bengali - INSCRIPT โ Bangla - INSCRIPT
- 0000082c Azeri Cyrillic โ Azerbaijani Cyrillic
Windows 10 Version 1903
Renamed:
- 0000042f Macedonian (FYROM) โ Macedonian (North Macedonia)
- 0001042f Macedonian (FYROM) - Standard โ Macedonian (North Macedonia) - Standard
Windows 10 Version 1809
Renamed:
- 00010c00 Myanmar โ Myanmar (Phonetic order)
Windows 10 Version 1607
Renamed:
Windows 8.1 RTM
Renamed:
Windows 8 RTM
Renamed:
- 0000042f Macedonian (F.Y.R.O. Macedonia) โ Macedonian (FYROM)
- 0001042f Macedonian (F.Y.R.O. Macedonia) - Standard โ Macedonian (FYROM) - Standard
- 00030437 Georgian Ministry of Education and Science Schools โ Georgian (MES)
Windows 8 Consumer Preview
(released with Windows 8 RTM)
Renamed:
- 00000404 Chinese (Traditional) - US Keyboard โ Chinese (Traditional) - US
- 00000416 Portuguese (Brazilian ABNT) โ Portuguese (Brazil ABNT)
- 00010416 Portuguese (Brazilian ABNT2) โ Portuguese (Brazil ABNT2)
- 0000042b Armenian Eastern โ Armenian Eastern (Legacy)
- 0001042b Armenian Western โ Armenian Western (Legacy)
- 0000042f Macedonian (FYROM) โ Macedonian (F.Y.R.O. Macedonia)
- 0001042f Macedonian (FYROM) - Standard โ Macedonian (F.Y.R.O. Macedonia) - Standard
- 00000437 Georgian โ Georgian (Legacy)
- 00000448 Oriya โ Odia
- 00000485 Yakut โ Sakha
- 00000804 Chinese (Simplified) - US Keyboard โ Chinese (Simplified) - US
- 00000c04 Chinese (Traditional, Hong Kong S.A.R.) - US Keyboard โ Chinese (Traditional, Hong Kong S.A.R.) - US
- 00001004 Chinese (Simplified, Singapore) - US Keyboard โ Chinese (Simplified, Singapore) - US
- 00001404 Chinese (Traditional, Macao S.A.R.) - US Keyboard โ Chinese (Traditional, Macao S.A.R.) - US
- 00011809 Gaelic โ Scottish Gaelic
Windows 7 RTM
Renamed:
- 00020427 Lithuanian New โ Lithuanian Standard
- 0000042e Sorbian Standard โ Sorbian Standard (Legacy)
- 00000480 Uighur โ Uyghur (Legacy)
Windows Vista SP2
Renamed:
- 00000402 Bulgarian โ Bulgarian (Typewriter)
- 00000418 Romanian โ Romanian (Legacy)
- 00000429 Farsi โ Persian
- 0000042f FYRO Macedonian โ Macedonian (FYROM)
- 0000043a Maltese 47-key โ Maltese 47-Key
- 0001043a Maltese 48-key โ Maltese 48-Key
- 00010445 Bengali (Inscript) โ Bengali - INSCRIPT (Legacy)
- 00000463 Pashto โ Pashto (Afghanistan)
- 0000085d Inuktitut Latin โ Inuktitut - Latin
- 0000201a Bosnian Cyrillic โ Bosnian (Cyrillic)
Windows XP
Keyboard driver history
Note that the driver names are valid at the Windows version under which they are listed. Currently this list does not contain removed drivers.
Windows 10.0.27686.1000
Windows 10.0.26090.1
Renamed:
- KBDFRNB.DLL French (Standard, BรPO) Keyboard Layout โ French (Standard, BรโฐPO) Keyboard Layout
Windows 10.0.26040.1000
Windows 10.0.26002.1000
Windows 10.0.25284.1000
Renamed:
- KBDFRNB.DLL French (Standard, BรโฐPO) Keyboard Layout โ French (Standard, BรPO) Keyboard Layout
Windows 10.0.25247.1000
+ KBDFRNA.DLL | French (Standard, AZERTY) Keyboard Layout |
+ KBDFRNB.DLL | French (Standard, BรโฐPO) Keyboard Layout |
|
|
Windows 10.0.18305.1000
(released with Windows 10 Version 1903)
Windows 10.0.17025.1000
(released with Windows 10 Version 1803)
Windows 10 Version 1607
Renamed:
- KBDINEN.DLL English - India Keyboard Layout โ English (India) Keyboard Layout
Windows 8.1 RTM
Renamed:
- KBDTAT.DLL Tatar_Cyrillic Keyboard Layout โ Tatar (Legacy) Keyboard Layout
Windows 8 Consumer Preview
(released with Windows 8 RTM)
Renamed:
- KBDINORI.DLL Oriya Keyboard Layout โ Odia Keyboard Layout
- KBDTAT.DLL Tatar (Legacy) Keyboard Layout โ Tatar_Cyrillic Keyboard Layout
Windows 7 SP1
Renamed:
- KBDTAT.DLL Tatar_Cyrillic Keyboard Layout โ Tatar (Legacy) Keyboard Layout
- KBDYAK.DLL Yakut - Russia Keyboard Layout โ Sakha - Russia Keyboard Layout
Windows 7 RTM
Renamed:
- KBDGAE.DLL Gaelic Keyboard Layout โ Scottish Gaelic (United Kingdom) Keyboard Layout
Windows Vista SP2+
Renamed:
- KBDGAE.DLL Scottish Gaelic (United Kingdom) Keyboard Layout โ Gaelic Keyboard Layout
- KBDRO.DLL Romanian Keyboard Layout โ Romanian (Legacy) Keyboard Layout
- KBDYCC.DLL Serbian_Cyrillic Keyboard Layout โ Serbian (Cyrillic) Keyboard Layout
- KBDYCL.DLL Serbian_Latin Keyboard Layout โ Serbian (Latin) Keyboard Layout
Windows 2003
Renamed:
- KBDCAN.DLL Canadian National Standard Keyboard Layout โ Canadian Multilingual Standard Keyboard Layout
Windows XP
Windows 2000
Renamed:
- KBDBLR.DLL Belarussia Keyboard Layout โ Belarusian Keyboard Layout
- KBDBU.DLL Bulgarian Keyboard Layout โ Bulgarian (Typewriter) Keyboard Layout
Windows NT 4.0
Renamed:
- KBDBR.DLL Brazilian ABNT Keyboard Layout โ Brazilian Keyboard Layout
- KBDCA.DLL Keyboard Layout for ca โ Canadian Multilingual Keyboard Layout
- KBDCR.DLL Croation/Slovenian Keyboard Layout โ Croatian/Slovenian Keyboard Layout
- KBDCZ.DLL Keyboard layout : Czech โ Czech Keyboard Layout
- KBDES.DLL Alternate Spanish Keyboard Layout โ Spanish Alernate Keyboard Layout
- KBDHU.DLL Hungarian Keyboard layout โ Hungarian Keyboard Layout
- KBDPL1.DLL Polish Keyboard Layout โ Polish Programmer's Keyboard Layout
- KBDUK.DLL UK Keyboard Layout โ United Kingdom Keyboard Layout
- KBDUS.DLL US English Keyboard Layout โ United States Keyboard Layout
Windows NT 3.50
Windows NT 3.10
Website changelog
Feedback, suggestions and error reports are always welcome at jan.kucera@matfyz.cz. Thanks to everyone who is supporting this website, your donations help to keep it running and up to date with latest Windows builds, as well as encourage adding new features.
2024-03-05
- new custom layouts
- Fixed: KLC downloads were missing CapsLock + Shift state when equal to the Shift state (matching incorrect MSKLC output)
2023-08-17
- dead/ligature key highlight in HTML export
2023-07-10
2023-04-14
- ANSI104: fixed key above enter (scancode 0x2B, was 0x56)
2023-01-12
- data updated to Unicode 15, CLDR 42
- new custom layouts
2022-06-02
- how do I type recognizes single codepoint encoded using U+ or \u hexadecimal notation
2022-01-22
- initial virtual keys feature
- UI to switch physical arrangements on the layouts pages
- added data from Windows 11 insider builds
2021-07-03
- A-Z links on home page
- characters in shift states link to how do I type page which support ligatures
- NumLock + Shift + VK_DELETE no longer results in VK_DECIMAL
- layout overview: readable version of output on keys
- shift states: removed duplicate virtual key rows
- how do I type:
- fixed crash in how to type not-yet-encoded characters
- fixed incorrect results for some special characters, most notably ZWJ/ZWNJ
2021-03-09
Fixed: turns out Windows dead table accents are eligible as text output when chaining dead keys - does not happen in Windows layouts, but some user LDML layouts were affected.
2021-03-07
- initial online viewer release
- LDML output migrated to new model
- non-Generic 101 vkeys now listed
- base state included when same as any other
- caps state included when same as base
- chained dead keys support including intermediate tables' names
2021-02-27
- support for OADB109A has been added (still no switching UI, shown when layout defines 0x79 scancode)
- overview and shift state layout views as well as text overlays now fallback to key names if no output is defined
2021-02-06
- fixed chained dead keys reverse order in shift states
- support for ANSI104 and ABNT (via ?arrangement=) has been added, but no switching UI (currently whenever layout defines VK_ABNT_C1 or VK_ABNT_C2 keys, ABNT layout is shown)
- tooltips for ligatures show component names
- duplicated "Layout" in layout headings removed
- how do I type:
- support for whitespace only requests
- fixed report when the text cannot be typed on the selected keyboard but can on others
- new custom layouts
- shortcuts unknown/custom keyboard fallback to US
- shortcuts & terminology headings link to home page
2020-11-07
- KLC output fixes: name, locale, missing VKs (including non-default)
- new custom layouts
- fixed links
2020-06-02
- ligatures indicated in shift states, using colors for better visibility
- languages include default layouts even when they are associated with different language
- layout overview:
- dead keys and ligatures indicated
- names of layouts that are default to a language are sorted first
- default layouts for different languages listed
- how do I type:
- browser extension
- control characters and backslashes accepted
2020-06-20
Added HTML download option for layouts and fixed VK_DECIMAL scan code in KLC files.
2020-05-11
Major update based on user feedback, putting more focus on the layout names rather than keyboard drivers and explaining the differences.
Data source rewritten for offline files, allowing processing different versions and architectures.
- whenever possible, layouts and their names are used rather than driver descriptions
- layout and driver pages merged into driver pages listing all layouts, KLID redirects to driver pages
- unreferenced layouts introduced and listed with custom layouts separately when applicable
- default layout for input language indicated (based on the latest metadata version only)
- support for languages:
- layouts list associated language
- other layouts of the same language
- by language feature listing
- BCP-47 tags support in URL
- layout overview:
- overlay selection
- extra shift states showed whewn the keys are free
- support for driver versions
- downloads: XML, KLC, CLDR
- how do I type:
- virtual keys listed when text to type not available
- URL accepts slashes
- CAPLOK, CAPLOKALTR and KANALOK support for VK_CAPITAL shift state
- navigational improvements, index and overview links, title links
- Unicode 13, CLDR 37, history page
2018-07-22
Initial custom layouts support, ligature tooltips, canonical links and other search engine hints, Unicode 11.
2017-08-05
Website published.