PR/35473: Wigcher Spanninga: Add Dutch keyboard support to wscons

This commit is contained in:
christos 2011-07-22 18:17:11 +00:00
parent 1cb7b735a0
commit f11ae0d12b
2 changed files with 75 additions and 5 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: wskbdmap_mfii.c,v 1.19 2009/07/28 18:48:27 ahoka Exp $ */
/* $NetBSD: wskbdmap_mfii.c,v 1.20 2011/07/22 18:17:11 christos Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.19 2009/07/28 18:48:27 ahoka Exp $");
__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.20 2011/07/22 18:17:11 christos Exp $");
#include "opt_wskbdmap.h"
#include <sys/types.h>
@ -189,6 +189,74 @@ static const keysym_t pckbd_keydesc_gr[] = {
KC(184), KS_Mode_switch, KS_Multi_key,
};
static const keysym_t pckbd_keydesc_nl[] = {
/* pos normal shifted altgr shift-altgr */
KC(2), KS_1, KS_exclam, KS_onesuperior,
KC(3), KS_2, KS_quotedbl, KS_twosuperior,
KC(4), KS_3, KS_numbersign, KS_threesuperior,
KC(5), KS_4, KS_dollar, KS_onequarter,
KC(6), KS_5, KS_percent, KS_onehalf,
KC(7), KS_6, KS_ampersand, KS_threequarters,
KC(8), KS_7, KS_underscore, KS_sterling,
KC(9), KS_8, KS_parenleft, KS_bracketleft,
KC(10), KS_9, KS_parenright, KS_bracketright,
KC(11), KS_0, KS_apostrophe,
KC(12), KS_slash, KS_question, KS_backslash,
KC(13), KS_degree, KS_dead_tilde, KS_dead_cedilla,
KC(18), KS_e, KS_E, KS_currency,
KC(26), KS_dead_diaeresis, KS_dead_circumflex,
KC(27), KS_asterisk, KS_bar,
KC(30), KS_s, KS_S, KS_ssharp,
KC(39), KS_plus, KS_plusminus,
KC(40), KS_dead_acute, KS_dead_grave,
KC(41), KS_at, KS_paragraph, KS_notsign,
KC(43), KS_less, KS_greater,
KC(44), KS_z, KS_Z, KS_guillemotleft,
KC(45), KS_x, KS_X, KS_guillemotright,
KC(46), KS_c, KS_C, KS_cent,
KC(50), KS_m, KS_M, KS_mu,
KC(51), KS_comma, KS_semicolon,
KC(52), KS_period, KS_colon,
KC(53), KS_minus, KS_equal,
KC(86), KS_braceleft, KS_braceright, KS_brokenbar,
KC(184), KS_Mode_switch, KS_Multi_key,
};
static const keysym_t pckbd_keydesc_nl[] = {
/* pos normal shifted altgr shift-altgr */
KC(2), KS_1, KS_exclam, KS_onesuperior,
KC(3), KS_2, KS_quotedbl, KS_twosuperior,
KC(4), KS_3, KS_numbersign, KS_threesuperior,
KC(5), KS_4, KS_dollar, KS_onequarter,
KC(6), KS_5, KS_percent, KS_onehalf,
KC(7), KS_6, KS_ampersand, KS_threequarters,
KC(8), KS_7, KS_underscore, KS_sterling,
KC(9), KS_8, KS_parenleft, KS_braceleft,
KC(10), KS_9, KS_parenright, KS_braceright,
KC(11), KS_0, KS_apostrophe,
KC(12), KS_slash, KS_question, KS_backslash,
KC(13), KS_degree, KS_dead_tilde, KS_dead_cedilla,
KC(18), KS_e, KS_E, KS_currency,
KC(26), KS_dead_diaeresis, KS_dead_circumflex,
KC(27), KS_asterisk, KS_bar,
KC(31), KS_s, KS_S, KS_ssharp,
KC(39), KS_plus, KS_plusminus,
KC(40), KS_dead_acute, KS_dead_grave,
KC(41), KS_at, KS_paragraph, KS_notsign,
KC(43), KS_less, KS_greater,
KC(44), KS_z, KS_Z, KS_guillemotleft,
KC(45), KS_x, KS_X, KS_guillemotright,
KC(46), KS_c, KS_C, KS_cent,
KC(50), KS_m, KS_M, KS_mu,
KC(51), KS_comma, KS_semicolon,
KC(52), KS_period, KS_colon,
KC(53), KS_minus, KS_equal,
KC(86), KS_bracketright, KS_bracketleft, KS_brokenbar,
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,
@ -753,11 +821,12 @@ const struct wscons_keydesc pckbd_keydesctab[] = {
pckbd_keydesc_swapctrlcaps),
KBD_MAP(KB_US | KB_IOPENER | KB_SWAPCTRLCAPS, KB_US | KB_IOPENER,
pckbd_keydesc_swapctrlcaps),
KBD_MAP(KB_ES , KB_US, pckbd_keydesc_es),
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),
KBD_MAP(KB_CZ, KB_US, pckbd_keydesc_cz),
KBD_MAP(KB_HU, KB_US, pckbd_keydesc_hu),
KBD_MAP(KB_NL, KB_US, pckbd_keydesc_nl),
#endif /* WSKBD_USONLY */
/* placeholders */

View File

@ -1,4 +1,4 @@
/* $NetBSD: wsksymdef.h,v 1.64 2010/01/28 22:36:19 drochner Exp $ */
/* $NetBSD: wsksymdef.h,v 1.65 2011/07/22 18:17:12 christos Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -644,6 +644,7 @@ action(KB_UK, 0, 0x0700, "uk", , "UK-English") \
action(KB_BE, 0, 0x1300, "be", , "Belgian") \
action(KB_CZ, 0, 0x1500, "cz", , "Czech") \
action(KB_DK, 0, 0x0400, "dk", , "Danish") \
action(KB_NL, 0, 0x1600, "nl", , "Dutch") \
action(KB_FI, 0, 0x0900, "fi", , "Finnish") \
action(KB_FR, 0, 0x0600, "fr", , "French") \
action(KB_DE, KB_NODEAD,0x0300, "de",".nodead", "German") \
@ -664,7 +665,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=0x1600 };
enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1700 };
/* Define list of KB_xxx and country codes for array initialisation */
#define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },