Subject: port-amiga/22961: WSCONS - Polish keymaps
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <pch@polo.po.opole.pl>
List: netbsd-bugs
Date: 09/26/2003 05:31:20
>Number:         22961
>Category:       port-amiga
>Synopsis:       WSCONS - Polish keymaps
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    port-amiga-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Sep 26 05:32:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Pawel Chwalowski
>Release:        1.6.1
>Organization:
>Environment:
NetBSD zbytniczka 1.6.1 NetBSD 1.6.1 (ZBYTNICZKA) #0: Fri Jul  4 11:54:12 GMT 2003     root@zbytniczka:/usr/src/sys/arch/amiga/compile/ZBYTNICZKA amiga

>Description:
Polish keymaps is not supported in the amiga wscons driver.
>How-To-Repeat:

>Fix:
"us" is the most popular keyboard. So it should be built-in.

/sys/arch/amiga/dev/wskbdmap_amiga.c

--- wskbdmap_amiga.c	Mon Jan 28 10:57:04 2002
+++ wskbdmap_amiga.c_PL	Thu Sep 25 01:49:27 2003
@@ -209,6 +209,20 @@
     KC(0),   KS_asciicircum,	KS_degree,
 };
 
+static const keysym_t amikbd_keydesc_pl[] = {
+/*  pos      normal		shifted		altgr		shift-altgr */
+    KC(18),  KS_e,		KS_E,		KS_ecircumflex,	KS_Ecircumflex,
+    KC(24),  KS_o,		KS_O,		KS_oacute,	KS_Oacute,
+    KC(32),  KS_a,		KS_A,		KS_plusminus,	KS_exclamdown,
+    KC(33),  KS_s,		KS_S,		KS_paragraph,	KS_brokenbar,
+    KC(40),  KS_l,		KS_L,		KS_threesuperior,	KS_sterling,
+    KC(49),  KS_z,		KS_Z,		KS_questiondown,	KS_macron,
+    KC(50),  KS_x,		KS_X,		KS_onequarter,	KS_notsign,
+    KC(51),  KS_c,		KS_C,		KS_ae,		KS_AE,
+    KC(54),  KS_n,		KS_N,		KS_ntilde,	KS_Ntilde,
+    KC(101), KS_Mode_switch,	KS_Multi_key,
+};
+
 static const keysym_t pckbd_keydesc_fr[] = {
 /*  pos      normal		shifted		altgr		shift-altgr */
     KC(1),   KS_ampersand,	KS_1,
@@ -486,6 +500,7 @@
 	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_PL,			KB_US,	amikbd_keydesc_pl),
 /*	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),*/

Now you can set "encoding pl" in /etc/wscons.conf (you should use kernel with "options KFONT_CONS_ISO8859_2" or load any iso8859-2 font).


But I have something for "de" keyboard owners (like me) too.

/usr/share/wscons/keymaps/amikbd.pl.qwertz.iso8859-2

# NetBSD/amiga
# This is a Polish keymap for iso8859-2 (qwertz)
#
# Usage:
# Add the following options to the /etc/wscons.conf
# encoding de
# mapfile /usr/share/wscons/keymaps/amikbd.pl.qwertz.iso8859-2

keycode 18 = e E ecircumflex Ecircumflex
keycode 21 = z Z questiondown macron
keycode 24 = o O oacute Oacute
keycode 32 = a A plusminus exclamdown
keycode 33 = s S paragraph brokenbar
keycode 40 = l L threesuperior sterling
keycode 50 = x X onequarter notsign
keycode 51 = c C ae AE
keycode 54 = n N ntilde Ntilde
keycode 101 = Mode_switch Multi_key

>Release-Note:
>Audit-Trail:
>Unformatted: