Greek console keymap from Eye of the Beholder

This commit is contained in:
christos 2006-04-01 23:02:32 +00:00
parent 46c0b8e98a
commit 89bc0d7869
3 changed files with 136 additions and 7 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: wskbdmap_mfii.c,v 1.10 2005/12/11 12:23:22 christos Exp $ */
/* $NetBSD: wskbdmap_mfii.c,v 1.11 2006/04/01 23:02:32 christos Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.10 2005/12/11 12:23:22 christos Exp $");
__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.11 2006/04/01 23:02:32 christos Exp $");
#include <sys/types.h>
#include <dev/wscons/wsksymdef.h>
@ -159,6 +159,39 @@ static const keysym_t pckbd_keydesc_us[] = {
};
#ifndef WSKBD_USONLY
static const keysym_t pckbd_keydesc_gr[] = {
/* pos normal shifted altgr shift-altgr */
KC(14), KS_Delete, KS_BackSpace,
KC(16), KS_q, KS_Q, KS_semicolon, KS_colon,
KC(17), KS_w, KS_W, KS_gr_teliko_s, KS_gr_S,
KC(18), KS_e, KS_E, KS_gr_e, KS_gr_E,
KC(19), KS_r, KS_R, KS_gr_r, KS_gr_R,
KC(20), KS_t, KS_T, KS_gr_t, KS_gr_T,
KC(21), KS_y, KS_Y, KS_gr_y, KS_gr_Y,
KC(22), KS_u, KS_U, KS_gr_u, KS_gr_U,
KC(23), KS_i, KS_I, KS_gr_i, KS_gr_I,
KC(24), KS_o, KS_O, KS_gr_o, KS_gr_O,
KC(25), KS_p, KS_P, KS_gr_p, KS_gr_P,
KC(30), KS_a, KS_A, KS_gr_a, KS_gr_A,
KC(31), KS_s, KS_S, KS_gr_s, KS_gr_S,
KC(32), KS_d, KS_D, KS_gr_d, KS_gr_D,
KC(33), KS_f, KS_F, KS_gr_f, KS_gr_F,
KC(34), KS_g, KS_G, KS_gr_g, KS_gr_G,
KC(35), KS_h, KS_H, KS_gr_h, KS_gr_H,
KC(36), KS_j, KS_J, KS_gr_j, KS_gr_J,
KC(37), KS_k, KS_K, KS_gr_k, KS_gr_K,
KC(38), KS_l, KS_L, KS_gr_l, KS_gr_L,
KC(39), KS_semicolon, KS_colon, KS_dead_semi, KS_dead_colon,
KC(44), KS_z, KS_Z, KS_gr_z, KS_gr_Z,
KC(45), KS_x, KS_X, KS_gr_x, KS_gr_X,
KC(46), KS_c, KS_C, KS_gr_c, KS_gr_C,
KC(47), KS_v, KS_V, KS_gr_v, KS_gr_V,
KC(48), KS_b, KS_B, KS_gr_b, KS_gr_B,
KC(49), KS_n, KS_N, KS_gr_n, KS_gr_N,
KC(50), KS_m, KS_M, KS_gr_m, KS_gr_M,
KC(184), KS_Mode_switch, KS_Multi_key,
};
static const keysym_t pckbd_keydesc_de[] = {
/* pos normal shifted altgr shift-altgr */
KC(3), KS_2, KS_quotedbl, KS_twosuperior,
@ -545,6 +578,7 @@ const struct wscons_keydesc pckbd_keydesctab[] = {
pckbd_keydesc_swapctrlcaps),
KBD_MAP(KB_ES , KB_US, pckbd_keydesc_es),
KBD_MAP(KB_PT, KB_US, pckbd_keydesc_pt),
KBD_MAP(KB_GR, KB_US, pckbd_keydesc_gr),
#endif /* WSKBD_USONLY */
/* placeholders */

View File

@ -1,4 +1,4 @@
/* $NetBSD: wskbdutil.c,v 1.12 2005/12/11 12:24:12 christos Exp $ */
/* $NetBSD: wskbdutil.c,v 1.13 2006/04/01 23:02:32 christos Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: wskbdutil.c,v 1.12 2005/12/11 12:24:12 christos Exp $");
__KERNEL_RCSID(0, "$NetBSD: wskbdutil.c,v 1.13 2006/04/01 23:02:32 christos Exp $");
#include <sys/param.h>
#include <sys/cdefs.h>
@ -177,7 +177,25 @@ static struct compose_tab_s {
{ { KS_acute, KS_u }, KS_uacute },
{ { KS_asciicircum, KS_u }, KS_ucircumflex },
{ { KS_grave, KS_u }, KS_ugrave },
{ { KS_acute, KS_y }, KS_yacute }
{ { KS_acute, KS_y }, KS_yacute },
{ { KS_dead_semi, KS_gr_A }, KS_gr_At },
{ { KS_dead_semi, KS_gr_E }, KS_gr_Et },
{ { KS_dead_semi, KS_gr_H }, KS_gr_Ht },
{ { KS_dead_semi, KS_gr_I }, KS_gr_It },
{ { KS_dead_semi, KS_gr_O }, KS_gr_Ot },
{ { KS_dead_semi, KS_gr_Y }, KS_gr_Yt },
{ { KS_dead_semi, KS_gr_V }, KS_gr_Vt },
{ { KS_dead_colon, KS_gr_I }, KS_gr_Id },
{ { KS_dead_colon, KS_gr_Y }, KS_gr_Yd },
{ { KS_dead_semi, KS_gr_a }, KS_gr_at },
{ { KS_dead_semi, KS_gr_e }, KS_gr_et },
{ { KS_dead_semi, KS_gr_h }, KS_gr_ht },
{ { KS_dead_semi, KS_gr_i }, KS_gr_it },
{ { KS_dead_semi, KS_gr_o }, KS_gr_ot },
{ { KS_dead_semi, KS_gr_y }, KS_gr_yt },
{ { KS_dead_semi, KS_gr_v }, KS_gr_vt },
{ { KS_dead_colon, KS_gr_i }, KS_gr_id },
{ { KS_dead_colon, KS_gr_y }, KS_gr_yd }
};
#define COMPOSE_SIZE sizeof(compose_tab)/sizeof(compose_tab[0])

View File

@ -1,4 +1,4 @@
/* $NetBSD: wsksymdef.h,v 1.55 2005/12/11 12:24:12 christos Exp $ */
/* $NetBSD: wsksymdef.h,v 1.56 2006/04/01 23:02:32 christos Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -274,6 +274,82 @@
#define KS_dead_diaeresis 0x0308
#define KS_dead_abovering 0x030a
#define KS_dead_cedilla 0x0327
#define KS_dead_semi 0x0328
#define KS_dead_colon 0x0329
/*
* Group Greek
*/
#define KS_gr_At 0xb6
#define KS_gr_Et 0xb8
#define KS_gr_Ht 0xb9
#define KS_gr_It 0xba
#define KS_gr_Ot 0xbc
#define KS_gr_Yt 0xbe
#define KS_gr_Vt 0xbf
#define KS_gr_itd 0xc0
#define KS_gr_A 0xc1
#define KS_gr_B 0xc2
#define KS_gr_G 0xc3
#define KS_gr_D 0xc4
#define KS_gr_E 0xc5
#define KS_gr_Z 0xc6
#define KS_gr_H 0xc7
#define KS_gr_U 0xc8
#define KS_gr_I 0xc9
#define KS_gr_K 0xca
#define KS_gr_L 0xcb
#define KS_gr_M 0xcc
#define KS_gr_N 0xcd
#define KS_gr_J 0xce
#define KS_gr_O 0xcf
#define KS_gr_P 0xd0
#define KS_gr_R 0xd1
#define KS_gr_S 0xd3
#define KS_gr_T 0xd4
#define KS_gr_Y 0xd5
#define KS_gr_F 0xd6
#define KS_gr_X 0xd7
#define KS_gr_C 0xd8
#define KS_gr_V 0xd9
#define KS_gr_Id 0xda
#define KS_gr_Yd 0xdb
#define KS_gr_at 0xdc
#define KS_gr_et 0xdd
#define KS_gr_ht 0xde
#define KS_gr_it 0xdf
#define KS_gr_ytd 0xe0
#define KS_gr_a 0xe1
#define KS_gr_b 0xe2
#define KS_gr_g 0xe3
#define KS_gr_d 0xe4
#define KS_gr_e 0xe5
#define KS_gr_z 0xe6
#define KS_gr_h 0xe7
#define KS_gr_u 0xe8
#define KS_gr_i 0xe9
#define KS_gr_k 0xea
#define KS_gr_l 0xeb
#define KS_gr_m 0xec
#define KS_gr_n 0xed
#define KS_gr_j 0xee
#define KS_gr_o 0xef
#define KS_gr_p 0xf0
#define KS_gr_r 0xf1
#define KS_gr_teliko_s 0xf2
#define KS_gr_s 0xf3
#define KS_gr_t 0xf4
#define KS_gr_y 0xf5
#define KS_gr_f 0xf6
#define KS_gr_x 0xf7
#define KS_gr_c 0xf8
#define KS_gr_v 0xf9
#define KS_gr_id 0xfa
#define KS_gr_yd 0xfb
#define KS_gr_ot 0xfc
#define KS_gr_yt 0xfd
#define KS_gr_vt 0xfe
/*
* Group 1 (modifiers)
@ -511,6 +587,7 @@ action(KB_DK, 0, 0x0400, "dk", , "Danish") \
action(KB_FI, 0, 0x0900, "fi", , "Finnish") \
action(KB_FR, 0, 0x0600, "fr", , "French") \
action(KB_DE, KB_NODEAD,0x0300, "de",".nodead", "German") \
action(KB_GR, 0, 0x1400, "gr", , "Greek") \
action(KB_HU, 0, 0x0c00, "hu", , "Hungarian") \
action(KB_IT, 0, 0x0500, "it", , "Italian") \
action(KB_JP, 0, 0x0800, "jp", , "Japanese") \
@ -527,7 +604,7 @@ action(KB_UA, 0, 0x1200, "ua", , "Ukrainian")
/* Define all the KB_xx numeric values using above table */
#define KBF_ENUM(tag, tagf, value, cc, ccf, country) tag=value,
enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1400 };
enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1500 };
/* Define list of KB_xxx and country codes for array initialisation */
#define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },