示例#1
0
    KC(0x29),		KS_asciicircum,	KS_asciitilde,
    KC(0x2a),		KS_yen,		KS_bar,
    KC(0x40),		KS_at,		KS_grave,
    KC(0x41),		KS_bracketleft,	KS_braceleft,
    KC(0x56),		KS_semicolon,	KS_plus,
    KC(0x57),		KS_colon,	KS_asterisk,
    KC(0x58),		KS_bracketright,KS_braceright,
    KC(0x7c),		KS_backslash,	KS_underscore,
};

#define KBD_MAP(name, base, map) \
    { name, base, sizeof(map)/sizeof(keysym_t), map }

/* Supported type 4 keyboard layouts */
const struct wscons_keydesc sunkbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	sunkbd_keydesc_us),
	KBD_MAP(KB_BE,			KB_US,	sunkbd_keydesc_befr),
	KBD_MAP(KB_DE,			KB_US,	sunkbd_keydesc_de),
	KBD_MAP(KB_DK,			KB_US,	sunkbd_keydesc_dk),
	KBD_MAP(KB_ES,			KB_US,	sunkbd_keydesc_es),
	KBD_MAP(KB_FR,			KB_US,	sunkbd_keydesc_befr),
	KBD_MAP(KB_IT,			KB_US,	sunkbd_keydesc_it),
	KBD_MAP(KB_NL,			KB_US,	sunkbd_keydesc_nl),
	KBD_MAP(KB_NO,			KB_US,	sunkbd_keydesc_no),
	KBD_MAP(KB_PT,			KB_US,	sunkbd_keydesc_pt),
	KBD_MAP(KB_SF,			KB_US,	sunkbd_keydesc_sf),
	KBD_MAP(KB_SG,			KB_US,	sunkbd_keydesc_sg),
	KBD_MAP(KB_SV,			KB_US,	sunkbd_keydesc_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	sunkbd_keydesc_sv_nodead),
	KBD_MAP(KB_UK,			KB_US,	sunkbd_keydesc_uk),
	{0, 0, 0, 0},
示例#2
0
文件: hilkbdmap.c 项目: MarginC/kame
    KC(99),			KS_dead_circumflex, KS_dead_diaeresis,
    KC(100),			KS_grave,	KS_asterisk,
    KC(101),			KS_less,	KS_greater,
    KC(107),			KS_m,
    KC(108),			KS_ugrave,	KS_percent,
    KC(112),			KS_comma,	KS_question,
    KC(113),			KS_semicolon,	KS_period,
    KC(114),			KS_colon,	KS_slash,
    KC(115),			KS_equal,	KS_plus,
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc hilkbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	hilkbd_keydesc_us),
	KBD_MAP(KB_FR,			KB_US,	hilkbd_keydesc_fr),
	KBD_MAP(KB_UK,			KB_US,	hilkbd_keydesc_uk),
	KBD_MAP(KB_SV,			KB_US,	hilkbd_keydesc_sv),
	{0, 0, 0, 0},
};

/*
 * Keyboard ID to layout table
 */
const kbd_t hilkbd_layouts[MAXHILKBDLAYOUT] = {
	-1,	/* 00 Undefined or custom layout */
	-1,	/* 01 Undefined */
	-1,	/* 02 Japanese */
	-1,	/* 03 Swiss french */
	-1,	/* 04 Portuguese */
};

static const keysym_t pckbd_keydesc_nl_nodead[] = {
    /*  pos      normal		shifted		altgr		shift-altgr */
    KC(13),  KS_degree,		KS_asciitilde,	KS_cedilla,
    KC(26),  KS_quotedbl,	KS_asciicircum,
    KC(40),  KS_apostrophe,	KS_grave,
};

#endif	/* WSKBD_NO_INTL_LAYOUTS */

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc pckbd_keydesctab[] = {
    KBD_MAP(KB_US,			0,	pckbd_keydesc_us),
#if !defined(WSKBD_NO_INTL_LAYOUTS)
    KBD_MAP(KB_DE,			KB_US,	pckbd_keydesc_de),
    KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	pckbd_keydesc_de_nodead),
    KBD_MAP(KB_FR,			KB_US,	pckbd_keydesc_fr),
    KBD_MAP(KB_DK,			KB_US,	pckbd_keydesc_dk),
    KBD_MAP(KB_DK | KB_NODEAD,	KB_DK,	pckbd_keydesc_dk_nodead),
    KBD_MAP(KB_IT,			KB_US,	pckbd_keydesc_it),
    KBD_MAP(KB_UK,			KB_US,	pckbd_keydesc_uk),
    KBD_MAP(KB_JP,			KB_US,	pckbd_keydesc_jp),
    KBD_MAP(KB_SV,			KB_DK,	pckbd_keydesc_sv),
    KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	pckbd_keydesc_sv_nodead),
    KBD_MAP(KB_NO,			KB_DK,	pckbd_keydesc_no),
    KBD_MAP(KB_NO | KB_NODEAD,	KB_NO,	pckbd_keydesc_no_nodead),
    KBD_MAP(KB_US | KB_DECLK,	KB_US,	pckbd_keydesc_us_declk),
    KBD_MAP(KB_US | KB_DVORAK,	KB_US,	pckbd_keydesc_us_dvorak),
示例#4
0
    KC(86),	KS_KP_Separator,
    KC(87),	KS_KP_0,
    KC(88),	KS_KP_Up,
    KC(89),	KS_KP_Decimal,
    KC(90),	KS_KP_Enter,
    KC(91),	KS_KP_Left,
    KC(92),	KS_KP_Down,
    KC(93),	KS_KP_Right,

    KC(100),	KS_KP_Multiply,
    KC(101),	KS_KP_Divide,
    KC(102),	KS_KP_Tab,
    KC(104),	KS_F11,
    KC(105),	KS_F12,
    KC(106),	KS_Help,
    KC(107),	KS_Insert,
    KC(108),	KS_Clear,
    KC(109),	KS_Prior,
    KC(110),	KS_Next,

    KC(122),	/* power on */
};

#define KBD_MAP(name, base, map) \
	{ name, base, sizeof(map) / sizeof(keysym_t), map }

const struct wscons_keydesc newskb_keydesctab[] = {
	KBD_MAP(KB_JP,	0,	newskb_keydesc_jp),
	{ 0 }
};
示例#5
0
    KC(240),			KS_p,
    KC(242),			KS_semicolon,	KS_colon,
    KC(243),			KS_slash,	KS_question,
    KC(245),			KS_equal,	KS_plus,
    KC(246),			KS_bracketright,	KS_braceright,
    KC(247),			KS_backslash,	KS_bar,
    KC(249),			KS_minus,	KS_underscore,
    KC(250),			KS_bracketleft,	KS_braceleft,
    KC(251),			KS_apostrophe,	KS_quotedbl,
};

static const keysym_t zskbd_keydesc_us_lk401[] = {
    KC(171),			KS_Shift_R,
    KC(172),	KS_Cmd2,	KS_Alt_L,
    KC(173),			KS_Multi_key, /* right compose */
    KC(177),			KS_Multi_key, /* left compose, not "cmd" */
    KC(178),			KS_Alt_R,
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc zskbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	zskbd_keydesc_us),
	KBD_MAP(KB_US | KB_LK401,	KB_US,	zskbd_keydesc_us_lk401),
	{0, 0, 0, 0}
};

#undef KBD_MAP
#undef KC
示例#6
0
/*  pos				normal			shifted		*/
	KC(1), 			KS_Escape,
	KC(28), 			KS_Return,
	KC(57),	KS_Cmd,		KS_Cmd_BacklightToggle,
	KC(67), 			KS_f9,
	KC(68), 			KS_f10,
	KC(72), 			KS_KP_Up,
	KC(80), 			KS_KP_Down,
	KC(87), 			KS_f11,
	KC(88), 			KS_f12,
};
#undef KC
#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }
const struct wscons_keydesc btnmgr_keydesctab[] = {
	KBD_MAP(KB_US,		0,	btnmgr_keydesc_default),
	{0, 0, 0, 0}
};
#undef KBD_MAP

struct wskbd_mapdata btnmgr_keymapdata = {
	btnmgr_keydesctab,
	KB_US, /* XXX, This is bad idea... */
};

/*
 *  function bodies
 */
int
btnmgrmatch(device_t parent, cfdata_t match, void *aux)
{
    KC(46),  KS_asciicircum,	KS_grave,	KS_asciitilde,
    KC(48),  KS_diaeresis,	KS_exclam,	KS_bracketright
};

Static const keysym_t ukbd_keydesc_sf[] = {
/*  pos      normal            shifted         altgr           shift-altgr */
    KC(47),  KS_egrave,        KS_udiaeresis,  KS_bracketleft,
    KC(51),  KS_eacute,        KS_odiaeresis,
    KC(52),  KS_agrave,        KS_adiaeresis,  KS_braceleft
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc ukbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	ukbd_keydesc_us),
	KBD_MAP(KB_US | KB_SWAPCTRLCAPS,KB_US,	ukbd_keydesc_swapctrlcaps),
	KBD_MAP(KB_US | KB_DVORAK,	KB_US,	ukbd_keydesc_us_dvorak),
	KBD_MAP(KB_US | KB_COLEMAK,	KB_US,	ukbd_keydesc_us_colemak),
	KBD_MAP(KB_JP,			KB_US,	ukbd_keydesc_jp),
	KBD_MAP(KB_JP | KB_SWAPCTRLCAPS,KB_JP,	ukbd_keydesc_swapctrlcaps),
	KBD_MAP(KB_DE,			KB_US,	ukbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	ukbd_keydesc_de_nodead),
	KBD_MAP(KB_FR,                  KB_US,  ukbd_keydesc_fr),
	KBD_MAP(KB_FR | KB_SWAPCTRLCAPS,KB_FR,	ukbd_keydesc_swapctrlcaps),
	KBD_MAP(KB_DK,			KB_US,	ukbd_keydesc_dk),
	KBD_MAP(KB_DK | KB_NODEAD,	KB_DK,	ukbd_keydesc_dk_nodead),
	KBD_MAP(KB_IT,			KB_US,	ukbd_keydesc_it),
	KBD_MAP(KB_UK,			KB_US,	ukbd_keydesc_uk),
	KBD_MAP(KB_SV,			KB_DK,	ukbd_keydesc_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	ukbd_keydesc_sv_nodead),
示例#8
0
    KC(66),  KS_Cmd_Screen6,	KS_f7,
    KC(67),  KS_Cmd_Screen7,	KS_f8,
    KC(68),  KS_Cmd_Screen8,	KS_f9,
    KC(87),  KS_Cmd_Screen9,	KS_f10,
    KC(88), 			KS_f11,
};
#endif /* WSKBD_USONLY */

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }
/* KBD_NULLMAP generates a entry for machine native variant.
   the entry will be modified by machine dependent keyboard driver. */
#define KBD_NULLMAP(name, base) { name, base, 0, 0 }

const struct wscons_keydesc pckbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	pckbd_keydesc_us),
#ifndef WSKBD_USONLY
	KBD_MAP(KB_DE,			KB_US,	pckbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	pckbd_keydesc_de_nodead),
	KBD_MAP(KB_SG,			KB_US,	pckbd_keydesc_sg),
	KBD_MAP(KB_SG | KB_NODEAD,	KB_SG,	pckbd_keydesc_sg_nodead),
	KBD_MAP(KB_SF,			KB_SG,	pckbd_keydesc_sf),
	KBD_MAP(KB_SF | KB_NODEAD,	KB_SF,	pckbd_keydesc_sg_nodead),
	KBD_MAP(KB_FR,                  KB_US,  pckbd_keydesc_fr),
	KBD_MAP(KB_BE,                  KB_FR,  pckbd_keydesc_be),
	KBD_MAP(KB_DK,			KB_US,	pckbd_keydesc_dk),
	KBD_MAP(KB_DK | KB_NODEAD,	KB_DK,	pckbd_keydesc_dk_nodead),
	KBD_MAP(KB_IT,			KB_US,	pckbd_keydesc_it),
	KBD_MAP(KB_UK,			KB_US,	pckbd_keydesc_uk),
	KBD_MAP(KB_JP,			KB_US,	pckbd_keydesc_jp),
	KBD_MAP(KB_SV,			KB_DK,	pckbd_keydesc_sv),
示例#9
0
    KC(0x54),				KS_e,
    KC(0x55),				KS_i,
    KC(0x56),				KS_o,
    KC(0x64),				KS_z,
    KC(0x65),				KS_x,
    KC(0x66),				KS_c,
    KC(0x67),				KS_v,
    KC(0x68),				KS_b,
    KC(0x69),				KS_k,
    KC(0x6a),				KS_m,
    KC(0x77),				KS_Delete,
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }
/* KBD_NULLMAP generates a entry for machine native variant.
   the entry will be modified by machine dependent keyboard driver. */
#define KBD_NULLMAP(name, base) { name, base, 0, 0 }

const struct wscons_keydesc wssun_keydesctab[] = {
	KBD_MAP(KB_US,			0,	wssun_keydesctab_us),
	KBD_MAP(KB_SV,			KB_US,	wssun_keydesctab_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	wssun_keydesctab_sv_nodead),
	KBD_MAP(KB_DE,			KB_US,	wssun_keydesctab_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	wssun_keydesctab_de_nodead),
	KBD_MAP(KB_UK,			KB_US,	wssun_keydesctab_uk),
	KBD_MAP(KB_US | KB_DVORAK,	KB_US,	wssun_keydesctab_us_dvorak),
	KBD_MAP(KB_US | KB_COLEMAK,	KB_US,	wssun_keydesctab_us_colemak),
	{ 0, 0, 0, 0 }
};
示例#10
0
	KC(0x20),	KS_9,		KS_parenright,
	KC(0x21),	KS_0,		KS_underscore,
	KC(0x22),	KS_minus,	KS_equal,
	KC(0x23),	KS_asciicircum,	KS_asciitilde,
	KC(0x37),	KS_at,		KS_grave,
	KC(0x38),	KS_bracketleft,	KS_braceleft,
	KC(0x4f),	KS_semicolon,	KS_plus,
	KC(0x50),	KS_colon,	KS_asterisk,
	KC(0x51),	KS_bracketright,KS_braceright,
	KC(0x5f),	KS_backslash,	KS_bar
};

#define	KBD_MAP(name, base, map) \
	{ name, base, sizeof(map) / sizeof(keysym_t), map }

const struct wscons_keydesc dnkbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	dnkbd_keydesc_us),
	KBD_MAP(KB_DE,			KB_JP,	dnkbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	dnkbd_keydesc_de_nodead),
	KBD_MAP(KB_DK,			KB_JP,	dnkbd_keydesc_dk),
	KBD_MAP(KB_DK | KB_NODEAD,	KB_DK,	dnkbd_keydesc_dk_nodead),
	KBD_MAP(KB_FR,			KB_JP,	dnkbd_keydesc_fr),
	KBD_MAP(KB_JP,			KB_US,	dnkbd_keydesc_jp),
	KBD_MAP(KB_SG,			KB_DE,	dnkbd_keydesc_sg),
	KBD_MAP(KB_SG | KB_NODEAD,	KB_SG,	dnkbd_keydesc_sg_nodead),
	KBD_MAP(KB_SV,			KB_DK,	dnkbd_keydesc_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	dnkbd_keydesc_sv_nodead),
	KBD_MAP(KB_UK,			KB_JP,	dnkbd_keydesc_uk),
	{ 0, 0, 0, 0 }
};
示例#11
0
    KC(108),	KS_ugrave,	KS_percent,
    KC(112),	KS_comma,	KS_question,
    KC(113),	KS_semicolon,	KS_period,
    KC(114),	KS_colon,	KS_slash,
    KC(115),	KS_exclam,	KS_section,
    KC(116),	KS_asterisk,	KS_mu,
    KC(118),	KS_less,	KS_greater,
		KS_guillemotleft,KS_guillemotright,
    KC(120),	KS_n
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc hilkbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	hilkbd_keydesc_us),
	KBD_MAP(KB_DE,			KB_US,	hilkbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	hilkbd_keydesc_de_nodead),
	KBD_MAP(KB_FR,			KB_US,	hilkbd_keydesc_fr),
	KBD_MAP(KB_UK,			KB_US,	hilkbd_keydesc_uk),
	KBD_MAP(KB_SV,			KB_US,	hilkbd_keydesc_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	hilkbd_keydesc_sv_nodead),
	{0, 0, 0, 0},
};

const struct wscons_keydesc hilkbd_keydesctab_ps2[] = {
	KBD_MAP(KB_US,			0,	hilkbd_keydesc_us),
	KBD_MAP(KB_DE,			KB_US,	hilkbd_keydesc_de_ps2),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	hilkbd_keydesc_de_ps2_nodead),
	KBD_MAP(KB_FR,			KB_US,	hilkbd_keydesc_fr_ps2),
	KBD_MAP(KB_UK,			KB_US,	hilkbd_keydesc_uk_ps2),
示例#12
0
    KC(251),			KS_ugrave,	KS_percent,	KS_backslash,
    /* remapped Compose key (177) for LK 201 */
    KC(252),	KS_Cmd2,	KS_Mode_switch,	KS_Multi_key
};

static const keysym_t lkkbd_keydesc_pt[] = {
    KC(191),			KS_backslash,	KS_bar,
    KC(219),			KS_6,		KS_quotedbl,
    KC(232),			KS_comma,	KS_semicolon,
    KC(237),			KS_period,	KS_colon,
    KC(242),			KS_ccedilla,
    KC(247),			KS_bracketleft,	KS_braceleft,
    KC(250),			KS_dead_acute,	KS_dead_grave,
    KC(251),			KS_dead_tilde,	KS_dead_circumflex,
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc lkkbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	lkkbd_keydesc_us),
	KBD_MAP(KB_DE,			KB_US,	lkkbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	lkkbd_keydesc_de_nodead),
	KBD_MAP(KB_FR,			KB_US,	lkkbd_keydesc_fr),
	KBD_MAP(KB_PT,			KB_US,	lkkbd_keydesc_pt),
	{0, 0, 0, 0}
};

#undef KBD_MAP
#undef KC
示例#13
0
    KC(51), 			KS_w,
    KC(52), 			KS_v,
    KC(53), 			KS_z,
};

static const keysym_t pckbd_keydesc_swapctrlcaps[] = {
/*  pos      command		normal		shifted */
    KC(29), 			KS_Caps_Lock,
    KC(58),  KS_Cmd1,		KS_Control_L,
};

#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }

const struct wscons_keydesc amigakbd_keydesctab[] = {
	KBD_MAP(KB_US,			0,	amikbd_keydesc_us),
	KBD_MAP(KB_DE,			KB_US,	amikbd_keydesc_de),
	KBD_MAP(KB_DE | KB_NODEAD,	KB_DE,	amikbd_keydesc_de_nodead),
	KBD_MAP(KB_FR,                  KB_US,  pckbd_keydesc_fr),
	KBD_MAP(KB_DK,			KB_US,	amikbd_keydesc_dk),
	KBD_MAP(KB_DK | KB_NODEAD,	KB_DK,	amikbd_keydesc_dk_nodead),
/*	KBD_MAP(KB_IT,			KB_US,	pckbd_keydesc_it),
	KBD_MAP(KB_UK,			KB_US,	pckbd_keydesc_uk),
	KBD_MAP(KB_JP,			KB_US,	pckbd_keydesc_jp),*/
	KBD_MAP(KB_SV,			KB_DK,	amikbd_keydesc_sv),
	KBD_MAP(KB_SV | KB_NODEAD,	KB_SV,	amikbd_keydesc_sv_nodead),
	KBD_MAP(KB_NO,			KB_DK,	amikbd_keydesc_no),
	KBD_MAP(KB_NO | KB_NODEAD,	KB_NO,	amikbd_keydesc_no_nodead),
/*	KBD_MAP(KB_US | KB_DECLK,	KB_US,	pckbd_keydesc_us_declk),
	KBD_MAP(KB_US | KB_DVORAK,	KB_US,	pckbd_keydesc_us_dvorak),
	KBD_MAP(KB_US | KB_SWAPCTRLCAPS, KB_US,	pckbd_keydesc_swapctrlcaps),
示例#14
0
    KC(364),			KS_Home,
    KC(373),			KS_Up,
    KC(381),			KS_Prior,
    KC(363),			KS_Left,
    KC(372),			KS_Right,
    KC(361),			KS_End,
    KC(370),			KS_Down,
    KC(378),			KS_Next,
    KC(368),			KS_Insert,
    KC(369),			KS_Delete,
#if 0	/* dunno what to map this one too */
    KC(221),			KS_Menu,
#endif
};


#define KBD_MAP(name, base, map) \
			{ name, base, sizeof(map)/sizeof(keysym_t), map }
/* KBD_NULLMAP generates a entry for machine native variant.
   the entry will be modified by machine dependent keyboard driver. */
#define KBD_NULLMAP(name, base) { name, base, 0, 0 }

const struct wscons_keydesc rpckbd_keydesctab[] = {
	KBD_MAP(KB_UK,			0,	rpckbd_keydesc_uk),
	{0, 0, 0, 0}
};

#undef KBD_MAP
#undef KC