164 lines
6.3 KiB
C
164 lines
6.3 KiB
C
|
#ifndef KEYMAP_CYRILLIC_H
|
|||
|
#define KEYMAP_CYRILLIC_H
|
|||
|
|
|||
|
#include "keymap.h"
|
|||
|
|
|||
|
/*
|
|||
|
* This is based off of
|
|||
|
* https://en.wikipedia.org/wiki/Cyrillic_script
|
|||
|
*
|
|||
|
* Unicode is iffy, a software implementation is preferred
|
|||
|
*/
|
|||
|
|
|||
|
// Capital Char russian/ukrainian/bulgarian
|
|||
|
#define CY_A UC(0x0410) // А rus ukr bul
|
|||
|
#define CY_BE UC(0x0411) // Б rus ukr bul
|
|||
|
#define CY_VE UC(0x0412) // В rus ukr bul
|
|||
|
#define CY_GHE UC(0x0413) // Г rus ukr bul
|
|||
|
#define CY_GHEUP UC(0x0490) // Ґ ukr
|
|||
|
#define CY_DE UC(0x0414) // Д rus ukr bul
|
|||
|
#define CY_DJE UC(0x0402) // Ђ
|
|||
|
#define CY_GJE UC(0x0403) // Ѓ
|
|||
|
#define CY_IE UC(0x0415) // Е rus ukr bul
|
|||
|
#define CY_IO UC(0x0401) // Ё rus
|
|||
|
#define CY_UIE UC(0x0404) // Є ukr
|
|||
|
#define CY_ZHE UC(0x0416) // Ж rus ukr bul
|
|||
|
#define CY_ZE UC(0x0417) // З rus ukr bul
|
|||
|
#define CY_DZE UC(0x0405) // Ѕ
|
|||
|
#define CY_I UC(0x0418) // И rus ukr bul
|
|||
|
#define CY_B_U_I UC(0x0406) // І ukr
|
|||
|
#define CY_YI UC(0x0407) // Ї ukr
|
|||
|
#define CY_SRT_I UC(0x0419) // Й rus ukr bul
|
|||
|
#define CY_JE UC(0x0408) // Ј
|
|||
|
#define CY_KA UC(0x041a) // К rus ukr bul
|
|||
|
#define CY_EL UC(0x041b) // Л rus ukr bul
|
|||
|
#define CY_LJE UC(0x0409) // Љ
|
|||
|
#define CY_EM UC(0x041c) // М rus ukr bul
|
|||
|
#define CY_EN UC(0x041d) // Н rus ukr bul
|
|||
|
#define CY_NJE UC(0x040a) // Њ
|
|||
|
#define CY_O UC(0x041e) // О rus ukr bul
|
|||
|
#define CY_PE UC(0x041f) // П rus ukr bul
|
|||
|
#define CY_ER UC(0x0420) // Р rus ukr bul
|
|||
|
#define CY_ES UC(0x0421) // С rus ukr bul
|
|||
|
#define CY_TE UC(0x0422) // Т rus ukr bul
|
|||
|
#define CY_TSHE UC(0x040b) // Ћ
|
|||
|
#define CY_KJE UC(0x040c) // Ќ
|
|||
|
#define CY_U UC(0x0423) // У rus ukr bul
|
|||
|
#define CY_SRT_U UC(0x040e) // Ў
|
|||
|
#define CY_EF UC(0x0424) // Ф rus ukr bul
|
|||
|
#define CY_HA UC(0x0425) // Х rus bul
|
|||
|
#define CY_TSE UC(0x0426) // Ц rus ukr bul
|
|||
|
#define CY_CHE UC(0x0427) // Ч rus ukr bul
|
|||
|
#define CY_DZHE UC(0x040f) // Џ
|
|||
|
#define CY_SHA UC(0x0428) // Ш rus ukr bul
|
|||
|
#define CY_SHCHA UC(0x0429) // Щ rus ukr bul
|
|||
|
#define CY_HSIGN UC(0x042a) // Ъ rus bul
|
|||
|
#define CY_YERU UC(0x042b) // Ы rus
|
|||
|
#define CY_SSIGN UC(0x042c) // Ь rus ukr bul
|
|||
|
#define CY_E UC(0x042d) // Э rus
|
|||
|
#define CY_YU UC(0x042e) // Ю rus ukr bul
|
|||
|
#define CY_YA UC(0x042f) // Я rus ukr bul
|
|||
|
// Important Cyrillic non-Slavic letters
|
|||
|
#define CY_PALOCHKA UC(0x04c0) // Ӏ
|
|||
|
#define CY_SCHWA UC(0x04d8) // Ә
|
|||
|
#define CY_GHE_S UC(0x0492) // Ғ
|
|||
|
#define CY_ZE_D UC(0x0498) // Ҙ
|
|||
|
#define CY_ES_D UC(0x04aa) // Ҫ
|
|||
|
#define CY_BR_KA UC(0x04a0) // Ҡ
|
|||
|
#define CY_ZHE_D UC(0x0496) // Җ
|
|||
|
#define CY_KA_D UC(0x049a) // Қ
|
|||
|
#define CY_EN_D UC(0x04a2) // Ң
|
|||
|
#define CY_ENGHE UC(0x04a4) // Ҥ
|
|||
|
#define CY_BRD_O UC(0x04e8) // Ө
|
|||
|
#define CY_STR_U UC(0x04ae) // Ү
|
|||
|
#define CY_S_U_S UC(0x04b0) // Ұ
|
|||
|
#define CY_SHHA UC(0x04ba) // Һ
|
|||
|
#define CY_HA_D UC(0x04b2) // Ҳ
|
|||
|
|
|||
|
|
|||
|
// Small
|
|||
|
#define CY_a UC(0x0430) // a rus ukr bul
|
|||
|
#define CY_be UC(0x0431) // б rus ukr bul
|
|||
|
#define CY_ve UC(0x0432) // в rus ukr bul
|
|||
|
#define CY_ghe UC(0x0433) // г rus ukr bul
|
|||
|
#define CY_gheup UC(0x0491) // ґ ukr
|
|||
|
#define CY_de UC(0x0434) // д rus ukr bul
|
|||
|
#define CY_dje UC(0x0452) // ђ
|
|||
|
#define CY_gje UC(0x0453) // ѓ
|
|||
|
#define CY_ie UC(0x0435) // е rus ukr bul
|
|||
|
#define CY_io UC(0x0451) // ё rus
|
|||
|
#define CY_uie UC(0x0454) // є ukr
|
|||
|
#define CY_zhe UC(0x0436) // ж rus ukr bul
|
|||
|
#define CY_ze UC(0x0437) // з rus ukr bul
|
|||
|
#define CY_dze UC(0x0455) // ѕ
|
|||
|
#define CY_i UC(0x0438) // и rus ukr bul
|
|||
|
#define CY_b_u_i UC(0x0456) // і ukr
|
|||
|
#define CY_yi UC(0x0457) // ї ukr
|
|||
|
#define CY_srt_i UC(0x0439) // й rus ukr bul
|
|||
|
#define CY_je UC(0x0458) // ј
|
|||
|
#define CY_ka UC(0x043a) // к rus ukr bul
|
|||
|
#define CY_el UC(0x043b) // л rus ukr bul
|
|||
|
#define CY_lje UC(0x0459) // љ
|
|||
|
#define CY_em UC(0x043c) // м rus ukr bul
|
|||
|
#define CY_en UC(0x043d) // н rus ukr bul
|
|||
|
#define CY_nje UC(0x045a) // њ
|
|||
|
#define CY_o UC(0x043e) // о rus ukr bul
|
|||
|
#define CY_pe UC(0x043f) // п rus ukr bul
|
|||
|
#define CY_er UC(0x0440) // р rus ukr bul
|
|||
|
#define CY_es UC(0x0441) // с rus ukr bul
|
|||
|
#define CY_te UC(0x0442) // т rus ukr bul
|
|||
|
#define CY_tshe UC(0x045b) // ћ
|
|||
|
#define CY_kje UC(0x045c) // ќ
|
|||
|
#define CY_u UC(0x0443) // у rus ukr bul
|
|||
|
#define CY_srt_u UC(0x045e) // ў
|
|||
|
#define CY_ef UC(0x0444) // ф rus ukr bul
|
|||
|
#define CY_ha UC(0x0445) // х rus ukr bul
|
|||
|
#define CY_tse UC(0x0446) // ц rus ukr bul
|
|||
|
#define CY_che UC(0x0447) // ч rus ukr bul
|
|||
|
#define CY_dzhe UC(0x045f) // џ
|
|||
|
#define CY_sha UC(0x0448) // ш rus ukr bul
|
|||
|
#define CY_shcha UC(0x0449) // щ rus ukr bul
|
|||
|
#define CY_hsign UC(0x044a) // ъ rus bul
|
|||
|
#define CY_yeru UC(0x044b) // ы rus
|
|||
|
#define CY_ssign UC(0x044c) // ь rus ukr bul
|
|||
|
#define CY_e UC(0x044d) // э rus
|
|||
|
#define CY_yu UC(0x044e) // ю rus ukr bul
|
|||
|
#define CY_ya UC(0x044f) // я rus ukr bul
|
|||
|
// Important Cyrillic non-Slavic letters
|
|||
|
#define CY_palochka UC(0x04cf) // ӏ
|
|||
|
#define CY_schwa UC(0x04d9) // ә
|
|||
|
#define CY_ghe_s UC(0x0493) // ғ
|
|||
|
#define CY_ze_d UC(0x0499) // ҙ
|
|||
|
#define CY_es_d UC(0x04ab) // ҫ
|
|||
|
#define CY_br_ka UC(0x04a1) // ҡ
|
|||
|
#define CY_zhe_d UC(0x0497) // җ
|
|||
|
#define CY_ka_d UC(0x049b) // қ
|
|||
|
#define CY_en_d UC(0x04a3) // ң
|
|||
|
#define CY_enghe UC(0x04a5) // ҥ
|
|||
|
#define CY_brd_o UC(0x04e9) // ө
|
|||
|
#define CY_str_u UC(0x04af) // ү
|
|||
|
#define CY_s_u_s UC(0x04b1) // ұ
|
|||
|
#define CY_shha UC(0x04bb) // һ
|
|||
|
#define CY_ha_d UC(0x04b3) // ҳ
|
|||
|
|
|||
|
|
|||
|
// Extra
|
|||
|
#define CY_slr_ve UC(0x1c80) // ᲀ CYRILLIC SMALL LETTER ROUNDED VE
|
|||
|
#define CY_ll_de UC(0x1c81) // ᲁ CYRILLIC SMALL LETTER LONG-LEGGED DE
|
|||
|
#define CY_ZEMLYA UC(0xa640) // Ꙁ CYRILLIC CAPITAL LETTER ZEMLYA
|
|||
|
#define CY_zemlya UC(0xa641) // ꙁ CYRILLIC SMALL LETTER ZEMLYA
|
|||
|
#define CY_RV_DZE UC(0xa644) // Ꙅ CYRILLIC CAPITAL LETTER REVERSED DZE
|
|||
|
#define CY_rv_DZE UC(0xa645) // ꙅ CYRILLIC SMALL LETTER REVERSED DZE
|
|||
|
#define CY_slw_es UC(0x1c83) // ᲃ CYRILLIC SMALL LETTER WIDE ES
|
|||
|
#define CY_st_te UC(0x1c84) // ᲄ CYRILLIC SMALL LETTER TALL TE
|
|||
|
#define CY_3l_te UC(0x1c85) // ᲅ CYRILLIC SMALL LETTER THREE-LEGGED TE
|
|||
|
#define CY_thsign UC(0x1c86) // ᲆ CYRILLIC SMALL LETTER TALL HARD SIGN
|
|||
|
#define CY_YERUBY UC(0xa650) // Ꙑ CYRILLIC CAPITAL LETTER YERU WITH BACK YER
|
|||
|
#define CY_yeruby UC(0xa651) // ꙑ CYRILLIC SMALL LETTER YERU WITH BACK YER
|
|||
|
#define CY_RUBL UC(0x20bd) // ₽
|
|||
|
#define CY_NMRO UC(0x2116) // №
|
|||
|
|
|||
|
// The letters Zje and Sje are made for other letters and accent marks
|
|||
|
|
|||
|
#endif
|