From 94187f32f0dd53d580647d2c5fed8d57b2c75215 Mon Sep 17 00:00:00 2001 From: Michael Shalayeff Date: Mon, 30 Apr 2001 16:53:36 +0000 Subject: koi8-r keyboard layout; from igor grabin --- sys/dev/pckbc/wskbdmap_mfii.c | 42 +++++++++++++++++++++- sys/dev/wscons/wsksymdef.h | 81 +++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 120 insertions(+), 3 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/pckbc/wskbdmap_mfii.c b/sys/dev/pckbc/wskbdmap_mfii.c index e7f37ff3337..c7cca0a19f8 100644 --- a/sys/dev/pckbc/wskbdmap_mfii.c +++ b/sys/dev/pckbc/wskbdmap_mfii.c @@ -1,4 +1,4 @@ -/* $OpenBSD: wskbdmap_mfii.c,v 1.5 2001/03/09 15:25:01 aaron Exp $ */ +/* $OpenBSD: wskbdmap_mfii.c,v 1.6 2001/04/30 16:53:34 mickey Exp $ */ /* $NetBSD: wskbdmap_mfii.c,v 1.15 2000/05/19 16:40:04 drochner Exp $ */ /*- @@ -512,6 +512,45 @@ static const keysym_t pckbd_keydesc_iopener[] = { KC(88), KS_f11, }; +static const keysym_t pckbd_keydesc_ru[] = { +/* pos normal shifted altgr shift-altgr */ + KC(7), KS_6, KS_asciicircum, KS_6, KS_comma, + KC(8), KS_7, KS_ampersand, KS_7, KS_period, + KC(16), KS_q, KS_Q, KS_Cyrillic_ishort, KS_Cyrillic_ISHORT, + KC(17), KS_w, KS_W, KS_Cyrillic_tse, KS_Cyrillic_TSE, + KC(18), KS_e, KS_E, KS_Cyrillic_u, KS_Cyrillic_U, + KC(19), KS_r, KS_R, KS_Cyrillic_ka, KS_Cyrillic_KA, + KC(20), KS_t, KS_T, KS_Cyrillic_ie, KS_Cyrillic_IE, + KC(21), KS_y, KS_Y, KS_Cyrillic_en, KS_Cyrillic_EN, + KC(22), KS_u, KS_U, KS_Cyrillic_ge, KS_Cyrillic_GE, + KC(23), KS_i, KS_I, KS_Cyrillic_sha, KS_Cyrillic_SHA, + KC(24), KS_o, KS_O, KS_Cyrillic_scha, KS_Cyrillic_SCHA, + KC(25), KS_p, KS_P, KS_Cyrillic_ze, KS_Cyrillic_ZE, + KC(26), KS_bracketleft, KS_braceleft, KS_Cyrillic_ha, KS_Cyrillic_HA, + KC(27), KS_bracketright, KS_braceright, KS_Cyrillic_hsighn, KS_Cyrillic_HSIGHN, + KC(30), KS_a, KS_A, KS_Cyrillic_ef, KS_Cyrillic_EF, + KC(31), KS_s, KS_S, KS_Cyrillic_yeru, KS_Cyrillic_YERU, + KC(32), KS_d, KS_D, KS_Cyrillic_ve, KS_Cyrillic_VE, + KC(33), KS_f, KS_F, KS_Cyrillic_a, KS_Cyrillic_A, + KC(34), KS_g, KS_G, KS_Cyrillic_pe, KS_Cyrillic_PE, + KC(35), KS_h, KS_H, KS_Cyrillic_er, KS_Cyrillic_ER, + KC(36), KS_j, KS_J, KS_Cyrillic_o, KS_Cyrillic_O, + KC(37), KS_k, KS_K, KS_Cyrillic_el, KS_Cyrillic_EL, + KC(38), KS_l, KS_L, KS_Cyrillic_de, KS_Cyrillic_DE, + KC(39), KS_semicolon, KS_colon, KS_Cyrillic_zhe, KS_Cyrillic_ZHE, + KC(40), KS_apostrophe, KS_quotedbl, KS_Cyrillic_e, KS_Cyrillic_E, + KC(44), KS_z, KS_Z, KS_Cyrillic_ya, KS_Cyrillic_YA, + KC(45), KS_x, KS_X, KS_Cyrillic_che, KS_Cyrillic_CHE, + KC(46), KS_c, KS_C, KS_Cyrillic_es, KS_Cyrillic_ES, + KC(47), KS_v, KS_V, KS_Cyrillic_em, KS_Cyrillic_EM, + KC(48), KS_b, KS_B, KS_Cyrillic_i, KS_Cyrillic_I, + KC(49), KS_n, KS_N, KS_Cyrillic_te, KS_Cyrillic_TE, + KC(50), KS_m, KS_M, KS_Cyrillic_ssighn, KS_Cyrillic_SSIGHN, + KC(51), KS_comma, KS_less, KS_Cyrillic_be, KS_Cyrillic_BE, + KC(52), KS_period, KS_greater, KS_Cyrillic_yu, KS_Cyrillic_YU, + KC(53), KS_slash, KS_question, KS_Cyrillic_yo, KS_Cyrillic_YO, +}; + #define KBD_MAP(name, base, map) \ { name, base, sizeof(map)/sizeof(keysym_t), map } @@ -542,6 +581,7 @@ const struct wscons_keydesc pckbd_keydesctab[] = { pckbd_keydesc_swapctrlcaps), KBD_MAP(KB_ES, KB_US, pckbd_keydesc_es), KBD_MAP(KB_BE, KB_US, pckbd_keydesc_be), + KBD_MAP(KB_RU, KB_US, pckbd_keydesc_ru), {0, 0, 0, 0} }; diff --git a/sys/dev/wscons/wsksymdef.h b/sys/dev/wscons/wsksymdef.h index a559aad5374..860e7bd2b99 100644 --- a/sys/dev/wscons/wsksymdef.h +++ b/sys/dev/wscons/wsksymdef.h @@ -1,4 +1,4 @@ -/* $OpenBSD: wsksymdef.h,v 1.9 2001/03/09 15:25:01 aaron Exp $ */ +/* $OpenBSD: wsksymdef.h,v 1.10 2001/04/30 16:53:35 mickey Exp $ */ /* $NetBSD: wsksymdef.h,v 1.34.4.1 2000/07/07 09:49:54 hannken Exp $ */ /*- @@ -276,6 +276,81 @@ #define KS_dead_abovering 0x030a #define KS_dead_cedilla 0x0327 +/* + * Group Cyrillic (koi8-r) + */ + +#define KS_Cyrillic_A 0xe1 +#define KS_Cyrillic_BE 0xe2 +#define KS_Cyrillic_VE 0xf7 +#define KS_Cyrillic_GE 0xe7 +#define KS_Cyrillic_DE 0xe4 +#define KS_Cyrillic_IE 0xe5 +#define KS_Cyrillic_YO 0xb3 +#define KS_Cyrillic_ZHE 0xf6 +#define KS_Cyrillic_ZE 0xfa +#define KS_Cyrillic_I 0xe9 +#define KS_Cyrillic_ISHORT 0xea +#define KS_Cyrillic_IUKR 0xb6 +#define KS_Cyrillic_YI 0xb7 +#define KS_Cyrillic_KA 0xeb +#define KS_Cyrillic_EL 0xec +#define KS_Cyrillic_EM 0xed +#define KS_Cyrillic_EN 0xee +#define KS_Cyrillic_O 0xef +#define KS_Cyrillic_PE 0xf0 +#define KS_Cyrillic_ER 0xf2 +#define KS_Cyrillic_ES 0xf3 +#define KS_Cyrillic_TE 0xf4 +#define KS_Cyrillic_U 0xf5 +#define KS_Cyrillic_EF 0xe6 +#define KS_Cyrillic_HA 0xe8 +#define KS_Cyrillic_TSE 0xe3 +#define KS_Cyrillic_CHE 0xfe +#define KS_Cyrillic_SHA 0xfb +#define KS_Cyrillic_SCHA 0xfd +#define KS_Cyrillic_HSIGHN 0xff +#define KS_Cyrillic_YERU 0xf9 +#define KS_Cyrillic_SSIGHN 0xf8 +#define KS_Cyrillic_E 0xfc +#define KS_Cyrillic_YU 0xe0 +#define KS_Cyrillic_YA 0xf1 +#define KS_Cyrillic_a 0xc1 +#define KS_Cyrillic_be 0xc2 +#define KS_Cyrillic_ve 0xd7 +#define KS_Cyrillic_ge 0xc7 +#define KS_Cyrillic_de 0xc4 +#define KS_Cyrillic_ie 0xc5 +#define KS_Cyrillic_yo 0xa3 +#define KS_Cyrillic_zhe 0xd6 +#define KS_Cyrillic_ze 0xda +#define KS_Cyrillic_i 0xc9 +#define KS_Cyrillic_ishort 0xca +#define KS_Cyrillic_iukr 0xa6 +#define KS_Cyrillic_yi 0xa7 +#define KS_Cyrillic_ka 0xcb +#define KS_Cyrillic_el 0xcc +#define KS_Cyrillic_em 0xcd +#define KS_Cyrillic_en 0xce +#define KS_Cyrillic_o 0xcf +#define KS_Cyrillic_pe 0xd0 +#define KS_Cyrillic_er 0xd2 +#define KS_Cyrillic_es 0xd3 +#define KS_Cyrillic_te 0xd4 +#define KS_Cyrillic_u 0xd5 +#define KS_Cyrillic_ef 0xc6 +#define KS_Cyrillic_ha 0xc8 +#define KS_Cyrillic_tse 0xc3 +#define KS_Cyrillic_che 0xde +#define KS_Cyrillic_sha 0xdb +#define KS_Cyrillic_scha 0xdd +#define KS_Cyrillic_hsighn 0xdf +#define KS_Cyrillic_yeru 0xd9 +#define KS_Cyrillic_ssighn 0xd8 +#define KS_Cyrillic_e 0xdc +#define KS_Cyrillic_yu 0xc0 +#define KS_Cyrillic_ya 0xd1 + /* * Group 1 (modifiers) */ @@ -493,6 +568,7 @@ #define KB_ES 0x0b00 #define KB_HU 0x0c00 #define KB_BE 0x0d00 +#define KB_RU 0x0e00 #define KB_NODEAD 0x0001 #define KB_DECLK 0x0002 /* DEC LKnnn layout */ @@ -516,7 +592,8 @@ { KB_NO, "no" }, \ { KB_ES, "es" }, \ { KB_HU, "hu" }, \ - { KB_BE, "be" } + { KB_BE, "be" }, \ + { KB_RU, "ru" } #define KB_VARTAB \ { KB_NODEAD, "nodead" }, \ -- cgit v1.2.3