Keyboard identifiers and input method editors for Windows

Use keyboard identifiers and input method editors (IMEs) to identify the keyboard type.

Keyboard identifiers

The following table lists keyboard identifiers that are available for Windows. You can also install support for additional keyboard types. The valid keyboards that can be configured for your device are listed in the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts registry key.

Keyboard Keyboard identifier (hexadecimal)
ADLaM 0x00140c00
Albanian 0x0000041c
Arabic (101) 0x00000401
Arabic (102) 0x00010401
Arabic (102) AZERTY 0x00020401
Armenian Eastern (Legacy) 0x0000042b
Armenian Phonetic 0x0002042b
Armenian Typewriter 0x0003042b
Armenian Western (Legacy) 0x0001042b
Assamese - INSCRIPT 0x0000044d
Azerbaijani (Standard) 0x0001042c
Azerbaijani Cyrillic 0x0000082c
Azerbaijani Latin 0x0000042c
Bangla 0x00000445
Bangla - INSCRIPT 0x00020445
Bangla - INSCRIPT (Legacy) 0x00010445
Bashkir 0x0000046d
Belarusian 0x00000423
Belgian (Comma) 0x0001080c
Belgian (Period) 0x00000813
Belgian French 0x0000080c
Bosnian (Cyrillic) 0x0000201a
Buginese 0x000b0c00
Bulgarian 0x00030402
Bulgarian (Latin) 0x00010402
Bulgarian (Phonetic Traditional) 0x00040402
Bulgarian (Phonetic) 0x00020402
Bulgarian (Typewriter) 0x00000402
Canadian French 0x00001009
Canadian French (Legacy) 0x00000c0c
Canadian Multilingual Standard 0x00011009
Central Atlas Tamazight 0x0000085f
Central Kurdish 0x00000492
Cherokee Nation 0x0000045c
Cherokee Phonetic 0x0001045c
Chinese (Simplified) - US 0x00000804
Chinese (Simplified, Singapore) - US 0x00001004
Chinese (Traditional) - US 0x00000404
Chinese (Traditional, Hong Kong S.A.R.) - US 0x00000c04
Chinese (Traditional, Macao S.A.R.) - US 0x00001404
Czech 0x00000405
Czech (QWERTY) 0x00010405
Czech Programmers 0x00020405
Danish 0x00000406
Devanagari - INSCRIPT 0x00000439
Divehi Phonetic 0x00000465
Divehi Typewriter 0x00010465
Dutch 0x00000413
Dzongkha 0x00000C51
English (India) 0x00004009
Estonian 0x00000425
Faeroese 0x00000438
Finnish 0x0000040b
Finnish with Sami 0x0001083b
French 0x0000040c
Futhark 0x00120c00
Georgian (Ergonomic) 0x00020437
Georgian (Legacy) 0x00000437
Georgian (MES) 0x00030437
Georgian (Old Alphabets) 0x00040437
Georgian (QWERTY) 0x00010437
German 0x00000407
German (IBM) 0x00010407
Gothic 0x000c0c00
Greek 0x00000408
Greek (220) 0x00010408
Greek (220) Latin 0x00030408
Greek (319) 0x00020408
Greek (319) Latin 0x00040408
Greek Latin 0x00050408
Greek Polytonic 0x00060408
Greenlandic 0x0000046f
Guarani 0x00000474
Gujarati 0x00000447
Hausa 0x00000468
Hawaiian 0x00000475
Hebrew 0x0000040d
Hebrew (Standard) 0x0002040d
Hindi Traditional 0x00010439
Hungarian 0x0000040e
Hungarian 101-key 0x0001040e
Icelandic 0x0000040f
Igbo 0x00000470
Inuktitut - Latin 0x0000085d
Inuktitut - Naqittaut 0x0001045d
Irish 0x00001809
Italian 0x00000410
Italian (142) 0x00010410
Japanese 0x00000411
Javanese 0x00110c00
Kannada 0x0000044b
Kazakh 0x0000043f
Khmer 0x00000453
Khmer (NIDA) 0x00010453
Korean 0x00000412
Kyrgyz Cyrillic 0x00000440
Lao 0x00000454
Latin American 0x0000080a
Latvian 0x00000426
Latvian (QWERTY) 0x00010426
Latvian (Standard) 0x00020426
Lisu (Basic) 0x00070c00
Lisu (Standard) 0x00080c00
Lithuanian 0x00010427
Lithuanian IBM 0x00000427
Lithuanian Standard 0x00020427
Luxembourgish 0x0000046e
Macedonian 0x0000042f
Macedonian - Standard 0x0001042f
Malayalam 0x0000044c
Maltese 47-Key 0x0000043a
Maltese 48-Key 0x0001043a
Maori 0x00000481
Marathi 0x0000044e
Mongolian (Mongolian Script) 0x00000850
Mongolian Cyrillic 0x00000450
Myanmar (Phonetic order) 0x00010c00
Myanmar (Visual order) 0x00130c00
NZ Aotearoa 0x00001409
Nepali 0x00000461
New Tai Lue 0x00020c00
Norwegian 0x00000414
Norwegian with Sami 0x0000043b
N'Ko 0x00090c00
Odia 0x00000448
Ogham 0x00040c00
Ol Chiki 0x000d0c00
Old Italic 0x000f0c00
Osage 0x00150c00
Osmanya 0x000e0c00
Pashto (Afghanistan) 0x00000463
Persian 0x00000429
Persian (Standard) 0x00050429
Phags-pa 0x000a0c00
Polish (214) 0x00010415
Polish (Programmers) 0x00000415
Portuguese 0x00000816
Portuguese (Brazil ABNT) 0x00000416
Portuguese (Brazil ABNT2) 0x00010416
Punjabi 0x00000446
Romanian (Legacy) 0x00000418
Romanian (Programmers) 0x00020418
Romanian (Standard) 0x00010418
Russian 0x00000419
Russian (Typewriter) 0x00010419
Russian - Mnemonic 0x00020419
Sakha 0x00000485
Sami Extended Finland-Sweden 0x0002083b
Sami Extended Norway 0x0001043b
Scottish Gaelic 0x00011809
Serbian (Cyrillic) 0x00000c1a
Serbian (Latin) 0x0000081a
Sesotho sa Leboa 0x0000046c
Setswana 0x00000432
Sinhala 0x0000045b
Sinhala - Wij 9 0x0001045b
Slovak 0x0000041b
Slovak (QWERTY) 0x0001041b
Slovenian 0x00000424
Sora 0x00100c00
Sorbian Extended 0x0001042e
Sorbian Standard 0x0002042e
Sorbian Standard (Legacy) 0x0000042e
Spanish 0x0000040a
Spanish Variation 0x0001040a
Standard 0x0000041a
Swedish 0x0000041d
Swedish with Sami 0x0000083b
Swiss French 0x0000100c
Swiss German 0x00000807
Syriac 0x0000045a
Syriac Phonetic 0x0001045a
Tai Le 0x00030c00
Tajik 0x00000428
Tamil 0x00000449
Tamil 99 0x00020449
Tamil Anjal 0x00030449
Tatar 0x00010444
Tatar (Legacy) 0x00000444
Telugu 0x0000044a
Thai Kedmanee 0x0000041e
Thai Kedmanee (non-ShiftLock) 0x0002041e
Thai Pattachote 0x0001041e
Thai Pattachote (non-ShiftLock) 0x0003041e
Tibetan (PRC) 0x00000451
Tibetan (PRC) - Updated 0x00010451
Tifinagh (Basic) 0x0000105f
Tifinagh (Extended) 0x0001105f
Traditional Mongolian (Standard) 0x00010850
Turkish F 0x0001041f
Turkish Q 0x0000041f
Turkmen 0x00000442
US 0x00000409
US English Table for IBM Arabic 238_L 0x00050409
Ukrainian 0x00000422
Ukrainian (Enhanced) 0x00020422
United Kingdom 0x00000809
United Kingdom Extended 0x00000452
United States-Dvorak 0x00010409
United States-Dvorak for left hand 0x00030409
United States-Dvorak for right hand 0x00040409
United States-International 0x00020409
Urdu 0x00000420
Uyghur 0x00010480
Uyghur (Legacy) 0x00000480
Uzbek Cyrillic 0x00000843
Vietnamese 0x0000042a
Wolof 0x00000488
Yoruba 0x0000046a

Input method editors

Language/Region Input profile (Language and keyboard pair)
Amharic - Ethiopia am-ET: Amharic Input Method 2 045e:{7C472071-36A7-4709-88CC-859513E583A9}{9A4E8FC7-76BF-4A63-980D-FADDADF7E987}
Bengali - India bn-IN: Bangla Phonetic 0445:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{C7F2F349-36A2-4F2E-977B-5C18BAF1AE7D}
Chinese (Simplified) - China zh-CN: Microsoft Wubi 0804:{6A498709-E00B-4C45-A018-8F9E4081AE40}{82590C13-F4DD-44F4-BA1D-8667246FDF8E}
Chinese (Simplified) - China zh-CN: Microsoft Pinyin 0804:{81D4E9C9-1D3B-41BC-9E6C-4B40BF79E35E}{FA550B04-5AD7-411F-A5AC-CA038EC515D7}
Chinese (Traditional) - Taiwan zh-TW: Microsoft Changjie 0404:{531FDEBF-9B4C-4A43-A2AA-960E8FCDC732}{4BDF9F03-C7D3-11D4-B2AB-0080C882687E}
Chinese (Traditional) - Taiwan zh-TW: Microsoft Quick 0404:{531FDEBF-9B4C-4A43-A2AA-960E8FCDC732}{6024B45F-5C54-11D4-B921-0080C882687E}
Chinese (Traditional) - Taiwan zh-TW: Microsoft Bopomofo 0404:{B115690A-EA02-48D5-A231-E3578D2FDF80}{B2F9C502-1742-11D4-9790-0080C882687E}
Chinese (Traditional) - Taiwan zh-TW: Chinese Traditional DaYi 0404:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{037B2C25-480C-4D7F-B027-D6CA6B69788A}
Chinese (Traditional) - Taiwan zh-TW: Chinese Traditional Array 0404:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{D38EFF65-AA46-4FD5-91A7-67845FB02F5B}
Gujarati - India gu-IN: Gujarati Phonetic 0447:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{CDB41983-C911-4685-98CC-FC720BBF8FC8}
Hindi - India hi-IN: Hindi Phonetic 0439:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{26FA8EBD-97DB-4F65-BF35-5E219EBD0079}
Japanese - Japan ja-JP: Microsoft IME 0411:{03B5835F-F03C-411B-9CE2-AA23E1171E36}{A76C93D9-5523-4E90-AAFA-4DB112F9AC76}
Kannada - India kn-IN: Kannada Phonetic 044b:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{0F420707-90F7-4E1B-B9F2-91FF3CA9D990}
Korean - Korea ko-KR: Microsoft IME 0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1}
Korean - Korea ko-KR: Microsoft Old Hangul IME 0412:{A1E2B86B-924A-4D43-80F6-8A820DF7190F}{B60AF051-257A-46BC-B9D3-84DAD819BAFB}
Malayalam - India ml-IN: Malayalam Phonetic 044c:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{6346F0DC-2FE4-40E6-99D5-7362723C3780}
Marathi - India mr-IN: Marathi Phonetic 044e:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{DBEB227A-4EF6-45A6-85B5-B1A03D95BB66}
Nepali - Nepal ne-NP: Nepali Phonetic 0461:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{7912A487-286C-4825-A608-F676C630B733}
Odia - India or-IN: Odia Phonetic 0448:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{607EBD43-EA66-4CAC-A0B1-40F1D147364B}
Punjabi - India pa-IN: Punjabi Phonetic 0446:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{59139512-9763-4E5D-B8E5-0AC1C3BAE1AE}
Tamil - India ta-IN: Tamil Anjal 0449:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{02E8FC61-6A42-4749-8124-68E28105C20E}
Tamil - India ta-IN: Tamil Phonetic 0449:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{045CBA61-4228-4F62-AC0C-F725470D7BFC}
Tamil - Sri Lanka ta-LK: Tamil Anjal 0849:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{02E8FC61-6A42-4749-8124-68E28105C20E}
Telugu - India te-IN: Telugu Phonetic 044a:{81EA0A17-AA39-455B-BA20-EA79A8F98966}{9F0CDC2B-12B2-4776-A144-F79901A9F8DA}
Tigrinya - Ethiopia ti-ET: Tigrinya Input Method 0473:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{3CAB88B7-CC3E-46A6-9765-B772AD7761FF}
Vietnamese - Vietnam vi-VN: Vietnamese Number Key-Based 042a:{C2CB2CF0-AF47-413E-9780-8BC3A3C16068}{591AE943-56BE-48F6-8966-06B43915CC5A}
Vietnamese - Vietnam vi-VN: Vietnamese Telex 042a:{C2CB2CF0-AF47-413E-9780-8BC3A3C16068}{5FB02EC5-0A77-4684-B4FA-DEF8A2195628}
Yi - China ii-CN: Yi Input Method 0478:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{409C8376-007B-4357-AE8E-26316EE3FB0D}