Module Name: src Committed By: bouyer Date: Sun Nov 1 16:13:11 UTC 2009
Modified Files: src/sys/dev/pckbport [netbsd-5]: wskbdmap_mfii.c src/sys/dev/wscons [netbsd-5]: wskbdutil.c wsksymdef.h Log Message: Apply patch, requested by ahoka in ticket #1111: sys/dev/pckbport/wskbdmap_mfii.c patch sys/dev/wscons/wsksymdef.h patch sys/dev/wscons/wskbdutil.c patch Add hungarian keyboard layout. To generate a diff of this commit: cvs rdiff -u -r1.15.8.3 -r1.15.8.4 src/sys/dev/pckbport/wskbdmap_mfii.c cvs rdiff -u -r1.15 -r1.15.10.1 src/sys/dev/wscons/wskbdutil.c cvs rdiff -u -r1.61 -r1.61.8.1 src/sys/dev/wscons/wsksymdef.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/pckbport/wskbdmap_mfii.c diff -u src/sys/dev/pckbport/wskbdmap_mfii.c:1.15.8.3 src/sys/dev/pckbport/wskbdmap_mfii.c:1.15.8.4 --- src/sys/dev/pckbport/wskbdmap_mfii.c:1.15.8.3 Wed Oct 28 13:06:22 2009 +++ src/sys/dev/pckbport/wskbdmap_mfii.c Sun Nov 1 16:13:10 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: wskbdmap_mfii.c,v 1.15.8.3 2009/10/28 13:06:22 bouyer Exp $ */ +/* $NetBSD: wskbdmap_mfii.c,v 1.15.8.4 2009/11/01 16:13:10 bouyer 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.15.8.3 2009/10/28 13:06:22 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.15.8.4 2009/11/01 16:13:10 bouyer Exp $"); #include "opt_wskbdmap.h" #include <sys/types.h> @@ -443,6 +443,44 @@ KC(184), KS_Mode_switch, KS_Multi_key, }; +static const keysym_t pckbd_keydesc_hu[] = { +/* pos normal shifted altgr shift-altgr */ + KC(2), KS_1, KS_apostrophe, KS_asciitilde, + KC(3), KS_2, KS_quotedbl, KS_dead_caron, + KC(4), KS_3, KS_plus, KS_asciicircum, + KC(5), KS_4, KS_exclam, KS_dead_breve, + KC(6), KS_5, KS_percent, KS_dead_abovering, + KC(7), KS_6, KS_slash, KS_dead_ogonek, + KC(8), KS_7, KS_equal, KS_grave, + KC(9), KS_8, KS_parenleft, KS_dead_dotaccent, + KC(10), KS_9, KS_parenright, KS_dead_acute, + KC(11), KS_odiaeresis, KS_Odiaeresis, KS_dead_hungarumlaut, + KC(12), KS_udiaeresis, KS_Udiaeresis, KS_dead_diaeresis, + KC(13), KS_oacute, KS_Oacute, KS_dead_cedilla, + KC(16), KS_q, KS_Q, KS_backslash, + KC(17), KS_w, KS_W, KS_bar, + KC(21), KS_z, + KC(26), KS_odoubleacute, KS_Odoubleacute,KS_division, + KC(27), KS_uacute, KS_Uacute, KS_multiply, + KC(33), KS_f, KS_F, KS_bracketleft, + KC(34), KS_g, KS_G, KS_bracketright, + KC(39), KS_eacute, KS_Eacute, KS_dollar, + KC(40), KS_aacute, KS_Aacute, KS_ssharp, + KC(41), KS_0, KS_section, + KC(43), KS_udoubleacute, KS_Udoubleacute,KS_currency, + KC(44), KS_y, KS_Y, KS_greater, + KC(45), KS_x, KS_X, KS_numbersign, + KC(46), KS_c, KS_C, KS_ampersand, + KC(47), KS_v, KS_V, KS_at, + KC(48), KS_b, KS_B, KS_braceleft, + KC(49), KS_n, KS_N, KS_braceright, + KC(51), KS_comma, KS_question, KS_semicolon, + KC(52), KS_period, KS_colon, + KC(53), KS_minus, KS_underscore, KS_asterisk, + KC(86), KS_iacute, KS_Iacute, KS_less, + KC(184), KS_Mode_switch, KS_Multi_key, +}; + static const keysym_t pckbd_keydesc_us_declk[] = { /* pos normal shifted altgr shift-altgr */ KC(1), KS_grave, KS_asciitilde, /* replace escape */ @@ -632,6 +670,7 @@ 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_HU, KB_US, pckbd_keydesc_hu), #endif /* WSKBD_USONLY */ /* placeholders */ Index: src/sys/dev/wscons/wskbdutil.c diff -u src/sys/dev/wscons/wskbdutil.c:1.15 src/sys/dev/wscons/wskbdutil.c:1.15.10.1 --- src/sys/dev/wscons/wskbdutil.c:1.15 Mon Apr 28 20:24:01 2008 +++ src/sys/dev/wscons/wskbdutil.c Sun Nov 1 16:13:10 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: wskbdutil.c,v 1.15 2008/04/28 20:24:01 martin Exp $ */ +/* $NetBSD: wskbdutil.c,v 1.15.10.1 2009/11/01 16:13:10 bouyer Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: wskbdutil.c,v 1.15 2008/04/28 20:24:01 martin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: wskbdutil.c,v 1.15.10.1 2009/11/01 16:13:10 bouyer Exp $"); #include <sys/param.h> #include <sys/errno.h> @@ -187,7 +187,78 @@ { { 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_colon, KS_gr_y }, KS_gr_yd }, + + /* Latin 2*/ + + { { KS_dead_acute, KS_S }, KS_Sacute }, + { { KS_dead_acute, KS_Z }, KS_Zacute }, + { { KS_dead_acute, KS_s }, KS_sacute }, + { { KS_dead_acute, KS_z }, KS_zacute }, + { { KS_dead_acute, KS_R }, KS_Racute }, + { { KS_dead_acute, KS_A }, KS_Aacute }, + { { KS_dead_acute, KS_L }, KS_Lacute }, + { { KS_dead_acute, KS_C }, KS_Cacute }, + { { KS_dead_acute, KS_E }, KS_Eacute }, + { { KS_dead_acute, KS_I }, KS_Iacute }, + { { KS_dead_acute, KS_N }, KS_Nacute }, + { { KS_dead_acute, KS_O }, KS_Oacute }, + { { KS_dead_acute, KS_U }, KS_Uacute }, + { { KS_dead_acute, KS_Y }, KS_Yacute }, + { { KS_dead_acute, KS_r }, KS_racute }, + { { KS_dead_acute, KS_a }, KS_aacute }, + { { KS_dead_acute, KS_l }, KS_lacute }, + { { KS_dead_acute, KS_c }, KS_cacute }, + { { KS_dead_acute, KS_e }, KS_eacute }, + { { KS_dead_acute, KS_i }, KS_iacute }, + { { KS_dead_acute, KS_n }, KS_nacute }, + { { KS_dead_acute, KS_o }, KS_oacute }, + { { KS_dead_acute, KS_u }, KS_uacute }, + { { KS_dead_acute, KS_y }, KS_yacute }, + { { KS_dead_breve, KS_A }, KS_Abreve }, + { { KS_dead_breve, KS_a }, KS_abreve }, + { { KS_dead_caron, KS_L }, KS_Lcaron }, + { { KS_dead_caron, KS_S }, KS_Scaron }, + { { KS_dead_caron, KS_T }, KS_Tcaron }, + { { KS_dead_caron, KS_Z }, KS_Zcaron }, + { { KS_dead_caron, KS_l }, KS_lcaron }, + { { KS_dead_caron, KS_s }, KS_scaron }, + { { KS_dead_caron, KS_t }, KS_tcaron }, + { { KS_dead_caron, KS_z }, KS_zcaron }, + { { KS_dead_caron, KS_C }, KS_Ccaron }, + { { KS_dead_caron, KS_E }, KS_Ecaron }, + { { KS_dead_caron, KS_D }, KS_Dcaron }, + { { KS_dead_caron, KS_N }, KS_Ncaron }, + { { KS_dead_caron, KS_R }, KS_Rcaron }, + { { KS_dead_caron, KS_c }, KS_ccaron }, + { { KS_dead_caron, KS_e }, KS_ecaron }, + { { KS_dead_caron, KS_d }, KS_dcaron }, + { { KS_dead_caron, KS_n }, KS_ncaron }, + { { KS_dead_caron, KS_r }, KS_rcaron }, + { { KS_dead_cedilla, KS_S }, KS_Scedilla }, + { { KS_dead_cedilla, KS_s }, KS_scedilla }, + { { KS_dead_cedilla, KS_C }, KS_Ccedilla }, + { { KS_dead_cedilla, KS_T }, KS_Tcedilla }, + { { KS_dead_cedilla, KS_c }, KS_ccedilla }, + { { KS_dead_cedilla, KS_t }, KS_tcedilla }, + { { KS_dead_circumflex, KS_A }, KS_Acircumflex }, + { { KS_dead_circumflex, KS_I }, KS_Icircumflex }, + { { KS_dead_circumflex, KS_O }, KS_Ocircumflex }, + { { KS_dead_circumflex, KS_a }, KS_acircumflex }, + { { KS_dead_circumflex, KS_i }, KS_icircumflex }, + { { KS_dead_circumflex, KS_o }, KS_ocircumflex }, + { { KS_dead_diaeresis, KS_A }, KS_Adiaeresis }, + { { KS_dead_diaeresis, KS_E }, KS_Ediaeresis }, + { { KS_dead_diaeresis, KS_O }, KS_Odiaeresis }, + { { KS_dead_diaeresis, KS_U }, KS_Udiaeresis }, + { { KS_dead_diaeresis, KS_a }, KS_adiaeresis }, + { { KS_dead_diaeresis, KS_e }, KS_ediaeresis }, + { { KS_dead_diaeresis, KS_o }, KS_odiaeresis }, + { { KS_dead_diaeresis, KS_u }, KS_udiaeresis }, + { { KS_dead_ogonek, KS_A }, KS_Aogonek }, + { { KS_dead_ogonek, KS_a }, KS_aogonek }, + { { KS_dead_ogonek, KS_E }, KS_Eogonek }, + { { KS_dead_ogonek, KS_e }, KS_eogonek } }; #define COMPOSE_SIZE sizeof(compose_tab)/sizeof(compose_tab[0]) Index: src/sys/dev/wscons/wsksymdef.h diff -u src/sys/dev/wscons/wsksymdef.h:1.61 src/sys/dev/wscons/wsksymdef.h:1.61.8.1 --- src/sys/dev/wscons/wsksymdef.h:1.61 Wed May 21 07:39:24 2008 +++ src/sys/dev/wscons/wsksymdef.h Sun Nov 1 16:13:10 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: wsksymdef.h,v 1.61 2008/05/21 07:39:24 ghen Exp $ */ +/* $NetBSD: wsksymdef.h,v 1.61.8.1 2009/11/01 16:13:10 bouyer Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -153,7 +153,6 @@ #define KS_braceright 0x7d #define KS_asciitilde 0x7e #define KS_Delete 0x7f - #define KS_nobreakspace 0xa0 #define KS_exclamdown 0xa1 #define KS_cent 0xa2 @@ -250,22 +249,85 @@ #define KS_yacute 0xfd #define KS_thorn 0xfe #define KS_ydiaeresis 0xff - -#define KS_Odoubleacute 0x150 -#define KS_odoubleacute 0x151 -#define KS_Udoubleacute 0x170 -#define KS_udoubleacute 0x171 +#define KS_Abreve 0x0102 +#define KS_abreve 0x0103 +#define KS_Aogonek 0x0104 +#define KS_aogonek 0x0105 +#define KS_Cacute 0x0106 +#define KS_cacute 0x0107 +#define KS_Ccaron 0x010c +#define KS_ccaron 0x010d +#define KS_Dcaron 0x010e +#define KS_dcaron 0x010f +#define KS_Dstroke 0x0110 +#define KS_dstroke 0x0111 +#define KS_Eogonek 0x0118 +#define KS_eogonek 0x0119 +#define KS_Ecaron 0x011a +#define KS_ecaron 0x011b +#define KS_Lacute 0x0139 +#define KS_lacute 0x013a +#define KS_Lcaron 0x013d +#define KS_lcaron 0x013e +#define KS_Lstroke 0x0141 +#define KS_lstroke 0x0142 +#define KS_Nacute 0x0143 +#define KS_nacute 0x0144 +#define KS_Ncaron 0x0147 +#define KS_ncaron 0x0148 +#define KS_Odoubleacute 0x0150 +#define KS_odoubleacute 0x0151 +#define KS_Racute 0x0154 +#define KS_racute 0x0155 +#define KS_Rcaron 0x0158 +#define KS_rcaron 0x0159 +#define KS_Sacute 0x015a +#define KS_sacute 0x015b +#define KS_Scedilla 0x015e +#define KS_scedilla 0x015f +#define KS_Scaron 0x0160 +#define KS_scaron 0x0161 +#define KS_Tcedilla 0x0162 +#define KS_tcedilla 0x0163 +#define KS_Tcaron 0x0164 +#define KS_tcaron 0x0165 +#define KS_Uabovering 0x016e +#define KS_uabovering 0x016f +#define KS_Udoubleacute 0x0170 +#define KS_udoubleacute 0x0171 +#define KS_Zacute 0x0179 +#define KS_zacute 0x017a +#define KS_Zabovedot 0x017b +#define KS_zabovedot 0x017c +#define KS_Zcaron 0x017d +#define KS_zcaron 0x017e + +#define KS_caron 0x02c7 +#define KS_breve 0x02d8 +#define KS_abovedot 0x02d9 +#define KS_ogonek 0x02db +#define KS_doubleacute 0x02dd /* * Group Dead (dead accents) + * http://www.unicode.org/charts/PDF/U0300.pdf + * dotaccent = "dot above" + * hungarumlaut = "double acute" + * slash = "short solidus" */ #define KS_dead_grave 0x0300 #define KS_dead_acute 0x0301 #define KS_dead_circumflex 0x0302 #define KS_dead_tilde 0x0303 +#define KS_dead_breve 0x0306 #define KS_dead_diaeresis 0x0308 #define KS_dead_abovering 0x030a +#define KS_dead_caron 0x030c +#define KS_dead_dotaccent 0x0307 +#define KS_dead_hungarumlaut 0x030b +#define KS_dead_ogonek 0x0328 +#define KS_dead_slash 0x0337 #define KS_dead_cedilla 0x0327 #define KS_dead_semi 0x0328 #define KS_dead_colon 0x0329