Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev Add Icelandic keyboard layout to ukbd/pckbd.



details:   https://anonhg.NetBSD.org/src/rev/14555514f4da
branches:  trunk
changeset: 1011811:14555514f4da
user:      nia <nia%NetBSD.org@localhost>
date:      Sun Jul 12 14:31:49 2020 +0000

description:
Add Icelandic keyboard layout to ukbd/pckbd.

diffstat:

 sys/dev/hid/hidkbdmap.c          |  42 ++++++++++++++++++++++++++++++++++++++-
 sys/dev/pckbport/wskbdmap_mfii.c |  41 +++++++++++++++++++++++++++++++++++++-
 sys/dev/wscons/wsksymdef.h       |   3 +-
 3 files changed, 81 insertions(+), 5 deletions(-)

diffs (156 lines):

diff -r d9dbfa7416e1 -r 14555514f4da sys/dev/hid/hidkbdmap.c
--- a/sys/dev/hid/hidkbdmap.c   Sun Jul 12 13:40:44 2020 +0000
+++ b/sys/dev/hid/hidkbdmap.c   Sun Jul 12 14:31:49 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: hidkbdmap.c,v 1.7 2020/07/12 13:12:17 nia Exp $        */
+/*     $NetBSD: hidkbdmap.c,v 1.8 2020/07/12 14:31:49 nia Exp $        */
 
 /*
  * Copyright (c) 1999,2001 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.7 2020/07/12 13:12:17 nia Exp $");
+__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.8 2020/07/12 14:31:49 nia Exp $");
 
 #include <sys/types.h>
 #include <dev/wscons/wsksymdef.h>
@@ -707,6 +707,42 @@
     KC(51),  KS_L5_scedilla,   KS_L5_Scedilla, KS_apostrophe,
 };
 
+static const keysym_t hidkbd_keydesc_is[] = {
+/*  pos      normal            shifted                 altgr                   shift-altgr */
+    KC(8),   KS_e,             KS_E,                   KS_currency,            KS_cent,
+    KC(16),  KS_m,             KS_M,                   KS_mu,
+    KC(20),  KS_q,             KS_Q,                   KS_at,
+    KC(30),  KS_1,             KS_exclam,              KS_onesuperior,         KS_exclamdown,
+    KC(31),  KS_2,             KS_quotedbl,            KS_twosuperior,         KS_currency,
+    KC(32),  KS_3,             KS_numbersign,          KS_threesuperior,       KS_sterling,
+    KC(33),  KS_4,             KS_dollar,              KS_onequarter,
+    KC(34),  KS_5,             KS_percent,             KS_onehalf,
+    KC(35),  KS_6,             KS_ampersand,           KS_notsign,
+    KC(36),  KS_7,             KS_slash,               KS_braceleft,
+    KC(37),  KS_8,             KS_parenleft,           KS_bracketleft,
+    KC(38),  KS_9,             KS_parenright,          KS_bracketright,        KS_plusminus,
+    KC(39),  KS_0,             KS_equal,               KS_braceright,          KS_degree,
+    KC(45),  KS_odiaeresis,    KS_Odiaeresis,          KS_backslash,           KS_questiondown,
+    KC(46),  KS_minus,         KS_underscore,          KS_dead_cedilla,        KS_dead_ogonek,
+    KC(47),  KS_eth,           KS_ETH,                 KS_dead_diaeresis,      KS_dead_abovering,
+    KC(48),  KS_apostrophe,    KS_question,            KS_asciitilde,
+    KC(49),  KS_plus,          KS_asterisk,            KS_grave,               KS_dead_breve,
+    KC(50),  KS_plus,          KS_asterisk,            KS_grave,               KS_dead_breve,
+    KC(51),  KS_ae,            KS_AE,                  KS_asciicircum,         KS_dead_hungarumlaut,
+    KC(52),  KS_dead_acute,    KS_dead_diaeresis,      KS_dead_circumflex,
+    KC(53),  KS_degree,                KS_diaeresis,
+    KC(54),  KS_comma,         KS_semicolon,
+    KC(55),  KS_period,                KS_colon,               KS_periodcentered,      KS_division,
+    KC(56),  KS_thorn,         KS_THORN,
+    KC(100), KS_less,          KS_greater,             KS_bar,
+    KC(230), KS_Mode_switch,   KS_Multi_key,
+};
+
+static const keysym_t hidkbd_keydesc_is_nodead[] = {
+/*  pos      normal    shifted         altgr           shift-altgr */
+    KC(52),  KS_acute, KS_diaeresis,   KS_asciicircum,
+};
+
 #define KBD_MAP(name, base, map) \
                        { name, base, sizeof(map)/sizeof(keysym_t), map }
 
@@ -728,6 +764,8 @@
        KBD_MAP(KB_BR | KB_NODEAD,      KB_BR,  hidkbd_keydesc_br_nodead),
        KBD_MAP(KB_DK,                  KB_US,  hidkbd_keydesc_dk),
        KBD_MAP(KB_DK | KB_NODEAD,      KB_DK,  hidkbd_keydesc_dk_nodead),
+       KBD_MAP(KB_IS,                  KB_US,  hidkbd_keydesc_is),
+       KBD_MAP(KB_IS | KB_NODEAD,      KB_IS,  hidkbd_keydesc_is_nodead),
        KBD_MAP(KB_IT,                  KB_US,  hidkbd_keydesc_it),
        KBD_MAP(KB_UK,                  KB_US,  hidkbd_keydesc_uk),
        KBD_MAP(KB_UK | KB_SWAPCTRLCAPS,KB_UK,  hidkbd_keydesc_swapctrlcaps),
diff -r d9dbfa7416e1 -r 14555514f4da sys/dev/pckbport/wskbdmap_mfii.c
--- a/sys/dev/pckbport/wskbdmap_mfii.c  Sun Jul 12 13:40:44 2020 +0000
+++ b/sys/dev/pckbport/wskbdmap_mfii.c  Sun Jul 12 14:31:49 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: wskbdmap_mfii.c,v 1.30 2020/07/12 12:13:05 nia Exp $   */
+/*     $NetBSD: wskbdmap_mfii.c,v 1.31 2020/07/12 14:31:49 nia 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.30 2020/07/12 12:13:05 nia Exp $");
+__KERNEL_RCSID(0, "$NetBSD: wskbdmap_mfii.c,v 1.31 2020/07/12 14:31:49 nia Exp $");
 
 #include "opt_wskbdmap.h"
 #include <sys/types.h>
@@ -877,6 +877,41 @@
     KC(26),  KS_apostrophe,    KS_grave,       KS_dead_acute,  KS_dead_grave,
     KC(40),  KS_asciitilde,    KS_asciicircum, KS_dead_tilde,  KS_dead_circumflex,
 };
+
+static const keysym_t pckbd_keydesc_is[] = {
+/*  pos      normal            shifted                 altgr                   shift-altgr */
+    KC(2),   KS_1,             KS_exclam,              KS_onesuperior,         KS_exclamdown,
+    KC(3),   KS_2,             KS_quotedbl,            KS_twosuperior,
+    KC(4),   KS_3,             KS_numbersign,          KS_threesuperior,       KS_sterling,
+    KC(5),   KS_4,             KS_dollar,              KS_onequarter,          KS_currency,
+    KC(6),   KS_5,             KS_percent,             KS_onehalf,
+    KC(7),   KS_6,             KS_ampersand,           KS_notsign,
+    KC(8),   KS_7,             KS_slash,               KS_braceleft,
+    KC(9),   KS_8,             KS_parenleft,           KS_bracketleft,
+    KC(10),  KS_9,             KS_parenright,          KS_bracketright,        KS_plusminus,
+    KC(11),  KS_0,             KS_equal,               KS_braceright,          KS_degree,
+    KC(12),  KS_odiaeresis,    KS_Odiaeresis,          KS_backslash,           KS_questiondown,
+    KC(13),  KS_minus,         KS_underscore,          KS_dead_cedilla,        KS_dead_ogonek,
+    KC(16),  KS_q,             KS_Q,                   KS_at,
+    KC(18),  KS_e,             KS_E,                   KS_currency,            KS_cent,
+    KC(26),  KS_eth,           KS_ETH,                 KS_dead_diaeresis,      KS_dead_abovering,
+    KC(27),  KS_apostrophe,    KS_question,            KS_asciitilde,
+    KC(39),  KS_ae,            KS_AE,                  KS_asciicircum,
+    KC(40),  KS_dead_acute,    KS_dead_diaeresis,      KS_dead_circumflex,     KS_dead_caron,
+    KC(41),  KS_degree,                KS_diaeresis,
+    KC(43),  KS_plus,          KS_asterisk,            KS_grave,               KS_dead_breve,
+    KC(50),  KS_m,             KS_M,                   KS_mu,
+    KC(51),  KS_comma,         KS_semicolon,
+    KC(52),  KS_period,                KS_colon,               KS_periodcentered,      KS_division,
+    KC(53),  KS_thorn,
+    KC(86),  KS_less,          KS_greater,             KS_bar,
+    KC(184), KS_Mode_switch,   KS_Multi_key,
+};
+
+static const keysym_t pckbd_keydesc_is_nodead[] = {
+/*  pos      normal            shifted         altgr           shift-altgr */
+    KC(40),  KS_acute,         KS_diaeresis,   KS_asciicircum,
+};
 #endif /* WSKBD_USONLY */
 
 #define KBD_MAP(name, base, map) \
@@ -900,6 +935,8 @@
        KBD_MAP(KB_BR | KB_NODEAD,      KB_BR,  pckbd_keydesc_br_nodead),
        KBD_MAP(KB_DK,                  KB_US,  pckbd_keydesc_dk),
        KBD_MAP(KB_DK | KB_NODEAD,      KB_DK,  pckbd_keydesc_dk_nodead),
+       KBD_MAP(KB_IS,                  KB_US,  pckbd_keydesc_is),
+       KBD_MAP(KB_IS | KB_NODEAD,      KB_IS,  pckbd_keydesc_is_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),
diff -r d9dbfa7416e1 -r 14555514f4da sys/dev/wscons/wsksymdef.h
--- a/sys/dev/wscons/wsksymdef.h        Sun Jul 12 13:40:44 2020 +0000
+++ b/sys/dev/wscons/wsksymdef.h        Sun Jul 12 14:31:49 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: wsksymdef.h,v 1.69 2020/07/12 12:13:05 nia Exp $ */
+/*     $NetBSD: wsksymdef.h,v 1.70 2020/07/12 14:31:50 nia Exp $ */
 
 /*-
  * Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -665,6 +665,7 @@
 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_IS,  0,      0x1a00, "is",   ,       "Icelandic")    \
 action(KB_IT,  0,      0x0500, "it",   ,       "Italian")      \
 action(KB_JP,  0,      0x0800, "jp",   ,       "Japanese")     \
 action(KB_NO,  0,      0x0a00, "no",   ,       "Norwegian")    \



Home | Main Index | Thread Index | Old Index