NetBSD-Bugs archive

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

kern/53011: Missing Turkish keyboad layout



>Number:         53011
>Category:       kern
>Synopsis:       Missing Turkish keyboad layout
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Mon Feb 12 11:30:00 +0000 2018
>Originator:     berte
>Release:        8.99.12
>Organization:
>Environment:
NetBSD asgard 8.99.12 NetBSD 8.99.12 (turkish) #3: Mon Feb 12 08:54:53 UTC 2018  root@asgard:/usr/src/sys/arch/amd64/compile/turkish amd64
>Description:
I added Turkish keyboard layout into kernel sources.
>How-To-Repeat:

>Fix:
? arch/amd64/compile/turkish
? arch/amd64/conf/turkish
Index: dev/pckbport/wskbdmap_mfii.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pckbport/wskbdmap_mfii.c,v
retrieving revision 1.25
diff -u -r1.25 wskbdmap_mfii.c
--- dev/pckbport/wskbdmap_mfii.c	14 Jul 2014 10:05:24 -0000	1.25
+++ dev/pckbport/wskbdmap_mfii.c	12 Feb 2018 09:40:03 -0000
@@ -771,6 +771,41 @@
     KC(184), KS_Mode_switch,	KS_Multi_key,
 };
 
+static const keysym_t pckbd_keydesc_tr[] = {
+/*  pos      normal		shifted         altgr           shift-altgr */
+    KC(3),   KS_2,		KS_apostrophe,	KS_sterling,
+    KC(4),   KS_3,		KS_asciicircum,	KS_numbersign,
+    KC(5),   KS_4,		KS_plus,	KS_dollar,
+    KC(6),   KS_5,		KS_percent,	KS_onehalf,
+    KC(7),   KS_6,		KS_ampersand,
+    KC(8),   KS_7,		KS_slash,	KS_braceleft,
+    KC(9),   KS_8,		KS_parenleft,	KS_bracketleft,
+    KC(10),  KS_9,		KS_parenright,	KS_bracketright,
+    KC(11),  KS_0,		KS_equal,	KS_braceright,
+    KC(12),  KS_asterisk,	KS_question,	KS_backslash,
+    KC(13),  KS_minus,		KS_underscore,
+    KC(16),  KS_q,		KS_Q,		KS_at,
+    KC(23),  KS_L5_idotless,	KS_I,
+    KC(26),  KS_L5_gbreve,	KS_L5_Gbreve,	KS_dead_diaeresis,
+    KC(27),  KS_udiaeresis,	KS_Udiaeresis,	KS_asciitilde,
+    KC(39),  KS_L5_scedilla,	KS_L5_Scedilla,	KS_dead_acute,
+    KC(40),  KS_i,		KS_L5_Idotabove,
+    KC(41),  KS_quotedbl,	KS_eacute,
+    KC(43),  KS_comma,		KS_semicolon,	KS_dead_grave,
+    KC(51),  KS_odiaeresis,	KS_Odiaeresis,
+    KC(52),  KS_ccedilla,	KS_Ccedilla,
+    KC(53),  KS_period,	KS_colon,
+    KC(86),  KS_less,		KS_greater,	KS_bar,
+    KC(184), KS_Mode_switch,	KS_Multi_key,
+};
+
+static const keysym_t pckbd_keydesc_tr_nodead[] = {
+/*  pos      normal		shifted         altgr           shift-altgr */
+    KC(26),  KS_L5_gbreve,	KS_L5_Gbreve,
+    KC(39),  KS_L5_scedilla,	KS_L5_Scedilla,	KS_apostrophe,
+    KC(43),  KS_comma,		KS_semicolon,	KS_grave,
+};
+
 static const keysym_t pckbd_keydesc_swapctrlcaps[] = {
 /*  pos      command		normal		shifted */
     KC(29), 			KS_Caps_Lock,
@@ -838,6 +873,8 @@
 	KBD_MAP(KB_HU,			KB_US,	pckbd_keydesc_hu),
 	KBD_MAP(KB_NL,			KB_US,	pckbd_keydesc_nl),
 	KBD_MAP(KB_NL | KB_NODEAD,	KB_NL,	pckbd_keydesc_nl_nodead),
+	KBD_MAP(KB_TR,			KB_US,	pckbd_keydesc_tr),
+	KBD_MAP(KB_TR | KB_NODEAD,	KB_TR,	pckbd_keydesc_tr_nodead),
 #endif /* WSKBD_USONLY */
 
 	/* placeholders */
Index: dev/wscons/wsksymdef.h
===================================================================
RCS file: /cvsroot/src/sys/dev/wscons/wsksymdef.h,v
retrieving revision 1.66
diff -u -r1.66 wsksymdef.h
--- dev/wscons/wsksymdef.h	22 Apr 2012 14:32:08 -0000	1.66
+++ dev/wscons/wsksymdef.h	12 Feb 2018 09:40:04 -0000
@@ -590,6 +590,18 @@
 
 #define KS_voidSymbol		0xf500
 
+
+/*
+ * Group Latin-5 (iso8859-9)
+ */
+
+#define KS_L5_Gbreve		0xd0
+#define KS_L5_Idotabove		0xdd
+#define KS_L5_Scedilla		0xde
+#define KS_L5_gbreve		0xf0
+#define KS_L5_idotless		0xfd
+#define KS_L5_scedilla		0xfe
+
 /*ENDKEYSYMDECL*/
 
 /*
@@ -661,12 +673,13 @@
 action(KB_SV,	0,	0x0900,	"sv",	,	"Swedish")	\
 action(KB_SF,	0,	0x1000,	"sf",	,	"Swiss French")	\
 action(KB_SG,	0,	0x0f00,	"sg",	,	"Swiss German")	\
-action(KB_UA,	0,	0x1200,	"ua",	,	"Ukrainian")	
+action(KB_UA,	0,	0x1200,	"ua",	,	"Ukrainian")	\
+action(KB_TR,	0,	0x1700,	"tr",	,	"Turkish")	
 #define KB_NONE 0x0000
 
 /* 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=0x1700 };
+enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1800 };
 
 /* Define list of KB_xxx and country codes for array initialisation */
 #define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },



Home | Main Index | Thread Index | Old Index