changeset 11966:926aaadc2d28

6935238 Add support for Belgian Keyboard Layout in the console 6550091 It is not possible to select Arabic keyboard layout using the command kbd -s 6676200 taiwan file in /usr/share/lib/keytables/type_6/ directory, should be renamed
author ja208388
date Mon, 22 Mar 2010 11:35:36 +0100
parents a7d9676a9f85
children f91b268929d9
files usr/src/cmd/loadkeys/type_101/Makefile usr/src/cmd/loadkeys/type_101/taiwan usr/src/cmd/loadkeys/type_101/traditional_chinese usr/src/cmd/loadkeys/type_4/Makefile usr/src/cmd/loadkeys/type_4/taiwan usr/src/cmd/loadkeys/type_4/taiwan_5 usr/src/cmd/loadkeys/type_4/taiwan_hobo usr/src/cmd/loadkeys/type_4/traditional_chinese usr/src/cmd/loadkeys/type_4/traditional_chinese_5 usr/src/cmd/loadkeys/type_4/traditional_chinese_hobo usr/src/cmd/loadkeys/type_6/Makefile usr/src/cmd/loadkeys/type_6/arabia usr/src/cmd/loadkeys/type_6/belgium usr/src/cmd/loadkeys/type_6/kbd_layouts usr/src/cmd/loadkeys/type_6/taiwan usr/src/cmd/loadkeys/type_6/traditional_chinese usr/src/pkg/manifests/system-data-keyboard-keytables.mf
diffstat 17 files changed, 569 insertions(+), 490 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/loadkeys/type_101/Makefile	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/cmd/loadkeys/type_101/Makefile	Mon Mar 22 11:35:36 2010 +0100
@@ -2,9 +2,8 @@
 # CDDL HEADER START
 #
 # The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
 #
 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
 # or http://www.opensolaris.org/os/licensing.
@@ -20,10 +19,9 @@
 # CDDL HEADER END
 #
 #
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
 #
-# Copyright (c) 1999 by Sun Microsystems, Inc.
-# All rights reserved.
 #
 # cmd/loadkeys/type_101/Makefile
 
@@ -51,7 +49,7 @@
 	sweden \
 	swiss_french \
 	swiss_german \
-	taiwan \
+	traditional_chinese \
 	turkey \
 	uk \
 	us
@@ -175,8 +173,8 @@
 $(ROOTKEYDIR)/layout_2f:	$(ROOTKEYDIR)/korea
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/korea $@
 
-$(ROOTKEYDIR)/layout_30:	$(ROOTKEYDIR)/taiwan
-	$(RM) $@; $(LN) $(ROOTKEYDIR)/taiwan $@
+$(ROOTKEYDIR)/layout_30:	$(ROOTKEYDIR)/traditional_chinese
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/traditional_chinese $@
 
 $(ROOTKEYDIR)/layout_31:	$(ROOTKEYDIR)/japan
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/japan $@
--- a/usr/src/cmd/loadkeys/type_101/taiwan	Mon Mar 22 03:32:52 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-#
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-# Taiwan key layout
-#
-
-# Main Pad Row 1:  digits, Backspace
-key 1 base ` shift ~ caps ` ctrl ^^ altg nop
-key 2 base 1 shift ! caps 1 ctrl 1 altg nop
-key 3 base 2 shift @ caps 2 ctrl ^@ altg nop
-key 4 base 3 shift # caps 3 ctrl 3 altg nop
-key 5 base 4 shift $ caps 4 ctrl 4 altg nop
-key 6 base 5 shift % caps 5 ctrl 5 altg nop
-key 7 base 6 shift ^ caps 6 ctrl ^^ altg nop
-key 8 base 7 shift & caps 7 ctrl 7 altg nop
-key 9 base 8 shift * caps 8 ctrl 8 altg nop
-key 10 base 9 shift ( caps 9 ctrl 9 altg nop
-key 11 base 0 shift ) caps 0 ctrl 0 altg nop
-key 12 base - shift _ caps - ctrl ^_ altg nop
-key 13 base = shift + caps = ctrl = altg nop
-key 14 all hole
-key 15 all '\b'
-
-# Main Pad Row 2:  Tab, QWERTY...
-key 17 base q shift Q caps Q ctrl ^Q altg nop
-key 18 base w shift W caps W ctrl ^W altg nop
-key 20 base r shift R caps R ctrl ^R altg nop
-key 22 base y shift Y caps Y ctrl ^Y altg nop
-key 25 base o shift O caps O ctrl ^O altg nop
-key 26 base p shift P caps P ctrl ^P altg nop
-key 27 base [ shift { caps [ ctrl ^[ altg nop
-key 28 base ] shift } caps ] ctrl ^] altg nop
-key 29 base '\\' shift | caps '\\' ctrl ^\ altg nop
-
-# Main Pad Row 3:  CapsLock, ASDFGH..., Enter
-key 31 base a shift A caps A ctrl ^A altg nop
-key 32 base s shift S caps S ctrl ^S altg nop
-key 40 base ; shift : caps ; ctrl ; altg nop
-key 41 base '\'' shift '"' caps '\'' ctrl '\'' altg nop
-key 42 base '\\' shift | caps '\\' ctrl ^\ altg nop
-
-# Main Pad Row 4:  Shift, ZXCVBN..., Shift
-key 45 all hole
-key 46 base z shift Z caps Z ctrl ^Z altg nop
-key 47 base x shift X caps X ctrl ^X altg nop
-key 48 base c shift C caps C ctrl ^C altg nop
-key 52 base m shift M caps M ctrl '\r' altg nop
-key 53 base , shift < caps , ctrl , altg nop
-key 54 base . shift > caps . ctrl . altg nop
-key 55 base / shift ? caps / ctrl ^_ altg nop
-key 56 all nop
-
-# Main Pad Row 5:  Ctrl, Alt, Space, ...
-key 62 all shiftkeys+alt up shiftkeys+alt
-
-# Numeric Pad
-key 104 base '\177' shift . caps '\177' ctrl paddot altg nop numl paddot
-
-# Japanese Keys
-key 131 all hole
-key 132 all hole
-key 133 all hole
-
-# Korean Keys
-key 150 all hole
-key 151 all hole
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_101/traditional_chinese	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,88 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+#
+# Traditional-chinese key layout
+#
+
+# Main Pad Row 1:  digits, Backspace
+key 1 base ` shift ~ caps ` ctrl ^^ altg nop
+key 2 base 1 shift ! caps 1 ctrl 1 altg nop
+key 3 base 2 shift @ caps 2 ctrl ^@ altg nop
+key 4 base 3 shift # caps 3 ctrl 3 altg nop
+key 5 base 4 shift $ caps 4 ctrl 4 altg nop
+key 6 base 5 shift % caps 5 ctrl 5 altg nop
+key 7 base 6 shift ^ caps 6 ctrl ^^ altg nop
+key 8 base 7 shift & caps 7 ctrl 7 altg nop
+key 9 base 8 shift * caps 8 ctrl 8 altg nop
+key 10 base 9 shift ( caps 9 ctrl 9 altg nop
+key 11 base 0 shift ) caps 0 ctrl 0 altg nop
+key 12 base - shift _ caps - ctrl ^_ altg nop
+key 13 base = shift + caps = ctrl = altg nop
+key 14 all hole
+key 15 all '\b'
+
+# Main Pad Row 2:  Tab, QWERTY...
+key 17 base q shift Q caps Q ctrl ^Q altg nop
+key 18 base w shift W caps W ctrl ^W altg nop
+key 20 base r shift R caps R ctrl ^R altg nop
+key 22 base y shift Y caps Y ctrl ^Y altg nop
+key 25 base o shift O caps O ctrl ^O altg nop
+key 26 base p shift P caps P ctrl ^P altg nop
+key 27 base [ shift { caps [ ctrl ^[ altg nop
+key 28 base ] shift } caps ] ctrl ^] altg nop
+key 29 base '\\' shift | caps '\\' ctrl ^\ altg nop
+
+# Main Pad Row 3:  CapsLock, ASDFGH..., Enter
+key 31 base a shift A caps A ctrl ^A altg nop
+key 32 base s shift S caps S ctrl ^S altg nop
+key 40 base ; shift : caps ; ctrl ; altg nop
+key 41 base '\'' shift '"' caps '\'' ctrl '\'' altg nop
+key 42 base '\\' shift | caps '\\' ctrl ^\ altg nop
+
+# Main Pad Row 4:  Shift, ZXCVBN..., Shift
+key 45 all hole
+key 46 base z shift Z caps Z ctrl ^Z altg nop
+key 47 base x shift X caps X ctrl ^X altg nop
+key 48 base c shift C caps C ctrl ^C altg nop
+key 52 base m shift M caps M ctrl '\r' altg nop
+key 53 base , shift < caps , ctrl , altg nop
+key 54 base . shift > caps . ctrl . altg nop
+key 55 base / shift ? caps / ctrl ^_ altg nop
+key 56 all nop
+
+# Main Pad Row 5:  Ctrl, Alt, Space, ...
+key 62 all shiftkeys+alt up shiftkeys+alt
+
+# Numeric Pad
+key 104 base '\177' shift . caps '\177' ctrl paddot altg nop numl paddot
+
+# Japanese Keys
+key 131 all hole
+key 132 all hole
+key 133 all hole
+
+# Korean Keys
+key 150 all hole
+key 151 all hole
--- a/usr/src/cmd/loadkeys/type_4/Makefile	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/cmd/loadkeys/type_4/Makefile	Mon Mar 22 11:35:36 2010 +0100
@@ -2,9 +2,8 @@
 # CDDL HEADER START
 #
 # The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
 #
 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
 # or http://www.opensolaris.org/os/licensing.
@@ -20,24 +19,23 @@
 # CDDL HEADER END
 #
 #
-# ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Copyright (c) 1991, by Sun Microsystems, Inc.
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
 #
 # cmd/loadkeys/type_4/Makefile
 
 KEYTABLES = \
 	us belgium_france germany swiss_german swiss_french uk \
 	canada denmark italy netherlands norway portugal spain_latin_america \
-	sweden_finland japan korea taiwan us101a_pc \
+	sweden_finland japan korea traditional_chinese us101a_pc \
 	reset germany_5 norway_5 sweden_5 uk_5 italy_5 \
 	portugal_5 swiss_french_5 us_5 denmark_5 netherlands_5 spain_5 \
-	swiss_german_5 france_5 japan_5 korea_5 taiwan_5 canadian_french_5 \
+	swiss_german_5 france_5 japan_5 korea_5 traditional_chinese_5 canadian_french_5 \
 	hungary_5 poland_5 czech_5 russia_5 canadian_french_5_tbits5 \
 	germany_hobo norway_hobo sweden_hobo uk_hobo italy_hobo \
 	portugal_hobo swiss_french_hobo us_hobo denmark_hobo netherlands_hobo \
 	spain_hobo swiss_german_hobo france_hobo japan_hobo korea_hobo \
-	taiwan_hobo canadian_french_hobo
+	traditional_chinese_hobo canadian_french_hobo
 
 include ../../Makefile.cmd
 
@@ -138,8 +136,8 @@
 $(ROOTKEYDIR)/layout_10: $(ROOTKEYDIR)/korea
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/korea $@
 
-$(ROOTKEYDIR)/layout_11: $(ROOTKEYDIR)/taiwan
-	$(RM) $@; $(LN) $(ROOTKEYDIR)/taiwan $@
+$(ROOTKEYDIR)/layout_11: $(ROOTKEYDIR)/traditional_chinese
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/traditional_chinese $@
 
 $(ROOTKEYDIR)/layout_13: $(ROOTKEYDIR)/us101a_pc
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/us101a_pc $@
@@ -192,8 +190,8 @@
 $(ROOTKEYDIR)/layout_2f: $(ROOTKEYDIR)/korea_5
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/korea_5 $@
 
-$(ROOTKEYDIR)/layout_30: $(ROOTKEYDIR)/taiwan_5
-	$(RM) $@; $(LN) $(ROOTKEYDIR)/taiwan_5 $@
+$(ROOTKEYDIR)/layout_30: $(ROOTKEYDIR)/traditional_chinese_5
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/traditional_chinese_5 $@
 
 $(ROOTKEYDIR)/layout_31: $(ROOTKEYDIR)/japan_5
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/japan_5 $@
@@ -261,8 +259,8 @@
 $(ROOTKEYDIR)/layout_5e: $(ROOTKEYDIR)/korea_hobo
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/korea_hobo $@
 
-$(ROOTKEYDIR)/layout_5f: $(ROOTKEYDIR)/taiwan_hobo
-	$(RM) $@; $(LN) $(ROOTKEYDIR)/taiwan_hobo $@
+$(ROOTKEYDIR)/layout_5f: $(ROOTKEYDIR)/traditional_chinese_hobo
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/traditional_chinese_hobo $@
 
 $(ROOTKEYDIR)/layout_60: $(ROOTKEYDIR)/japan_hobo
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/japan_hobo $@
--- a/usr/src/cmd/loadkeys/type_4/taiwan	Mon Mar 22 03:32:52 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#       ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Taiwan key layout
-#
-key 0	 all hole
-key 1	 all buckybits+systembit up buckybits+systembit
-key 2	 all hole
-key 3	 all lf(2)
-key 4	 all hole
-key 5	 all tf(1)
-key 6	 all tf(2)
-key 7	 all tf(10)
-key 8	 all tf(3)
-key 9	 all tf(11)
-key 10	 all tf(4)
-key 11	 all tf(12)
-key 12	 all tf(5)
-key 13	 all shiftkeys+altgraph up shiftkeys+altgraph
-key 14	 all tf(6)
-key 15	 all hole
-key 16	 all tf(7)
-key 17	 all tf(8)
-key 18	 all tf(9)
-key 19	 all shiftkeys+alt up shiftkeys+alt
-key 20	 all hole
-key 21	 all rf(1)
-key 22	 all rf(2)
-key 23	 all rf(3)
-key 24	 all hole
-key 25	 all lf(3)
-key 26	 all lf(4)
-key 27	 all hole
-key 28	 all hole
-key 29	 all ^[
-key 30	 base 1 shift ! caps 1 ctrl 1 altg nop
-key 31	 base 2 shift @ caps 2 ctrl ^@ altg nop
-key 32	 base 3 shift # caps 3 ctrl 3 altg nop
-key 33	 base 4 shift $ caps 4 ctrl 4 altg nop
-key 34	 base 5 shift % caps 5 ctrl 5 altg nop
-key 35	 base 6 shift ^ caps 6 ctrl ^^ altg nop
-key 36	 base 7 shift & caps 7 ctrl 7 altg nop
-key 37	 base 8 shift * caps 8 ctrl 8 altg nop
-key 38	 base 9 shift ( caps 9 ctrl 9 altg nop
-key 39	 base 0 shift ) caps 0 ctrl 0 altg nop
-key 40	 base - shift _ caps - ctrl ^_ altg nop
-key 41	 base = shift + caps = ctrl = altg nop
-key 42	 base ` shift ~ caps ` ctrl ^^ altg nop
-key 43	 all '\b'
-key 44	 all hole
-key 45	 all rf(4) numl padequal
-key 46	 all rf(5) numl padslash
-key 47	 all rf(6) numl padstar
-key 48	 all bf(13)
-key 49	 all lf(5)
-key 50	 all bf(10) numl paddot
-key 51	 all lf(6)
-key 52	 all hole
-key 53	 all '\t'
-key 54	 base q shift Q caps Q ctrl ^Q altg nop
-key 55	 base w shift W caps W ctrl ^W altg nop
-key 56	 base e shift E caps E ctrl ^E altg nop
-key 57	 base r shift R caps R ctrl ^R altg nop
-key 58	 base t shift T caps T ctrl ^T altg nop
-key 59	 base y shift Y caps Y ctrl ^Y altg nop
-key 60	 base u shift U caps U ctrl ^U altg nop
-key 61	 base i shift I caps I ctrl '\t' altg nop
-key 62	 base o shift O caps O ctrl ^O altg nop
-key 63	 base p shift P caps P ctrl ^P altg nop
-key 64	 base [ shift { caps [ ctrl ^[ altg nop
-key 65	 base ] shift } caps ] ctrl ^] altg nop
-key 66	 all '\177'
-key 67	 all bf(3)
-key 68	 all rf(7) numl pad7
-key 69	 all string+uparrow numl pad8
-key 70	 all rf(9) numl pad9
-key 71	 all bf(15) numl padminus
-key 72	 all lf(7)
-key 73	 all lf(8)
-key 74	 all hole
-key 75	 all hole
-key 76	 all shiftkeys+leftctrl up shiftkeys+leftctrl
-key 77	 base a shift A caps A ctrl ^A altg nop
-key 78	 base s shift S caps S ctrl ^S altg nop
-key 79	 base d shift D caps D ctrl ^D altg nop
-key 80	 base f shift F caps F ctrl ^F altg nop
-key 81	 base g shift G caps G ctrl ^G altg nop
-key 82	 base h shift H caps H ctrl '\b' altg nop
-key 83	 base j shift J caps J ctrl '\n' altg nop
-key 84	 base k shift K caps K ctrl '\v' altg nop
-key 85	 base l shift L caps L ctrl ^L altg nop
-key 86	 base ; shift : caps ; ctrl ; altg nop
-key 87	 base '\'' shift '"' caps '\'' ctrl '\'' altg nop
-key 88	 base '\\' shift | caps '\\' ctrl ^\ altg nop
-key 89	 all '\r'
-key 90	 all bf(11) numl padenter
-key 91	 all string+leftarrow numl pad4
-key 92	 all rf(11) numl pad5
-key 93	 all string+rightarrow numl pad6
-key 94	 all bf(8) numl pad0
-key 95	 all lf(9)
-key 96	 all hole
-key 97	 all lf(10)
-key 98	 all shiftkeys+numlock
-key 99	 all shiftkeys+leftshift up shiftkeys+leftshift
-key 100	 base z shift Z caps Z ctrl ^Z altg nop
-key 101	 base x shift X caps X ctrl ^X altg nop
-key 102	 base c shift C caps C ctrl ^C altg nop
-key 103	 base v shift V caps V ctrl ^V altg nop
-key 104	 base b shift B caps B ctrl ^B altg nop
-key 105	 base n shift N caps N ctrl ^N altg nop
-key 106	 base m shift M caps M ctrl '\r' altg nop
-key 107	 base , shift < caps , ctrl , altg nop
-key 108	 base . shift > caps . ctrl . altg nop
-key 109	 base / shift ? caps / ctrl ^_ altg nop
-key 110	 all shiftkeys+rightshift up shiftkeys+rightshift
-key 111	 all '\n'
-key 112	 all rf(13) numl pad1
-key 113	 all string+downarrow numl pad2
-key 114	 all rf(15) numl pad3
-key 115	 all hole
-key 116	 all hole
-key 117	 all hole
-key 118	 all lf(16)
-key 119	 all shiftkeys+capslock
-key 120	 all buckybits+metabit up buckybits+metabit
-key 121	 base ' ' shift ' ' caps ' ' ctrl ^@ altg ' '
-key 122	 all buckybits+metabit up buckybits+metabit
-key 123	 all hole
-key 124	 all hole
-key 125	 all bf(14) numl padplus
-key 126	 all error numl error up hole
-key 127	 all idle numl idle up reset
-
--- a/usr/src/cmd/loadkeys/type_4/taiwan_5	Mon Mar 22 03:32:52 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#       ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Taiwan Type 5 key layout
-#
-#
-key 13	all bf(3)
-#
-#
-#
-# New function keys assigned old codes
-#
-key 44   all bf(8)
-key 52   all rf(7)
-key 96   all rf(9)
-key 74   all rf(13)
-key 123  all rf(15)
-key 20   all string+uparrow
-key 24   all string+leftarrow
-key 27   all string+downarrow
-key 28   all string+rightarrow
--- a/usr/src/cmd/loadkeys/type_4/taiwan_hobo	Mon Mar 22 03:32:52 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#       ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Taiwan Hobo key layout
-#
-#
-key 13	all bf(3)
-key 36	 numl 7
-key 37	 numl 8
-key 38	 numl 9
-key 39	 numl *
-key 60	 numl 4
-key 61	 numl 5
-key 62	 numl 6
-key 63	 numl -
-key 83	 numl 1
-key 84	 numl 2
-key 85	 numl 3
-key 86	 numl +
-key 106	 numl 0
-key 107	 numl ,
-key 108	 numl .
-key 109	 numl /
-#
-#
-#
-# New function keys assigned old codes
-#
-key 44   all bf(8)
-key 52   all rf(7)
-key 96   all rf(9)
-key 74   all rf(13)
-key 123  all rf(15)
-key 20   all string+uparrow
-key 24   all string+leftarrow
-key 27   all string+downarrow
-key 28   all string+rightarrow
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_4/traditional_chinese	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,155 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+# Traditional_chinese key layout
+#
+key 0	 all hole
+key 1	 all buckybits+systembit up buckybits+systembit
+key 2	 all hole
+key 3	 all lf(2)
+key 4	 all hole
+key 5	 all tf(1)
+key 6	 all tf(2)
+key 7	 all tf(10)
+key 8	 all tf(3)
+key 9	 all tf(11)
+key 10	 all tf(4)
+key 11	 all tf(12)
+key 12	 all tf(5)
+key 13	 all shiftkeys+altgraph up shiftkeys+altgraph
+key 14	 all tf(6)
+key 15	 all hole
+key 16	 all tf(7)
+key 17	 all tf(8)
+key 18	 all tf(9)
+key 19	 all shiftkeys+alt up shiftkeys+alt
+key 20	 all hole
+key 21	 all rf(1)
+key 22	 all rf(2)
+key 23	 all rf(3)
+key 24	 all hole
+key 25	 all lf(3)
+key 26	 all lf(4)
+key 27	 all hole
+key 28	 all hole
+key 29	 all ^[
+key 30	 base 1 shift ! caps 1 ctrl 1 altg nop
+key 31	 base 2 shift @ caps 2 ctrl ^@ altg nop
+key 32	 base 3 shift # caps 3 ctrl 3 altg nop
+key 33	 base 4 shift $ caps 4 ctrl 4 altg nop
+key 34	 base 5 shift % caps 5 ctrl 5 altg nop
+key 35	 base 6 shift ^ caps 6 ctrl ^^ altg nop
+key 36	 base 7 shift & caps 7 ctrl 7 altg nop
+key 37	 base 8 shift * caps 8 ctrl 8 altg nop
+key 38	 base 9 shift ( caps 9 ctrl 9 altg nop
+key 39	 base 0 shift ) caps 0 ctrl 0 altg nop
+key 40	 base - shift _ caps - ctrl ^_ altg nop
+key 41	 base = shift + caps = ctrl = altg nop
+key 42	 base ` shift ~ caps ` ctrl ^^ altg nop
+key 43	 all '\b'
+key 44	 all hole
+key 45	 all rf(4) numl padequal
+key 46	 all rf(5) numl padslash
+key 47	 all rf(6) numl padstar
+key 48	 all bf(13)
+key 49	 all lf(5)
+key 50	 all bf(10) numl paddot
+key 51	 all lf(6)
+key 52	 all hole
+key 53	 all '\t'
+key 54	 base q shift Q caps Q ctrl ^Q altg nop
+key 55	 base w shift W caps W ctrl ^W altg nop
+key 56	 base e shift E caps E ctrl ^E altg nop
+key 57	 base r shift R caps R ctrl ^R altg nop
+key 58	 base t shift T caps T ctrl ^T altg nop
+key 59	 base y shift Y caps Y ctrl ^Y altg nop
+key 60	 base u shift U caps U ctrl ^U altg nop
+key 61	 base i shift I caps I ctrl '\t' altg nop
+key 62	 base o shift O caps O ctrl ^O altg nop
+key 63	 base p shift P caps P ctrl ^P altg nop
+key 64	 base [ shift { caps [ ctrl ^[ altg nop
+key 65	 base ] shift } caps ] ctrl ^] altg nop
+key 66	 all '\177'
+key 67	 all bf(3)
+key 68	 all rf(7) numl pad7
+key 69	 all string+uparrow numl pad8
+key 70	 all rf(9) numl pad9
+key 71	 all bf(15) numl padminus
+key 72	 all lf(7)
+key 73	 all lf(8)
+key 74	 all hole
+key 75	 all hole
+key 76	 all shiftkeys+leftctrl up shiftkeys+leftctrl
+key 77	 base a shift A caps A ctrl ^A altg nop
+key 78	 base s shift S caps S ctrl ^S altg nop
+key 79	 base d shift D caps D ctrl ^D altg nop
+key 80	 base f shift F caps F ctrl ^F altg nop
+key 81	 base g shift G caps G ctrl ^G altg nop
+key 82	 base h shift H caps H ctrl '\b' altg nop
+key 83	 base j shift J caps J ctrl '\n' altg nop
+key 84	 base k shift K caps K ctrl '\v' altg nop
+key 85	 base l shift L caps L ctrl ^L altg nop
+key 86	 base ; shift : caps ; ctrl ; altg nop
+key 87	 base '\'' shift '"' caps '\'' ctrl '\'' altg nop
+key 88	 base '\\' shift | caps '\\' ctrl ^\ altg nop
+key 89	 all '\r'
+key 90	 all bf(11) numl padenter
+key 91	 all string+leftarrow numl pad4
+key 92	 all rf(11) numl pad5
+key 93	 all string+rightarrow numl pad6
+key 94	 all bf(8) numl pad0
+key 95	 all lf(9)
+key 96	 all hole
+key 97	 all lf(10)
+key 98	 all shiftkeys+numlock
+key 99	 all shiftkeys+leftshift up shiftkeys+leftshift
+key 100	 base z shift Z caps Z ctrl ^Z altg nop
+key 101	 base x shift X caps X ctrl ^X altg nop
+key 102	 base c shift C caps C ctrl ^C altg nop
+key 103	 base v shift V caps V ctrl ^V altg nop
+key 104	 base b shift B caps B ctrl ^B altg nop
+key 105	 base n shift N caps N ctrl ^N altg nop
+key 106	 base m shift M caps M ctrl '\r' altg nop
+key 107	 base , shift < caps , ctrl , altg nop
+key 108	 base . shift > caps . ctrl . altg nop
+key 109	 base / shift ? caps / ctrl ^_ altg nop
+key 110	 all shiftkeys+rightshift up shiftkeys+rightshift
+key 111	 all '\n'
+key 112	 all rf(13) numl pad1
+key 113	 all string+downarrow numl pad2
+key 114	 all rf(15) numl pad3
+key 115	 all hole
+key 116	 all hole
+key 117	 all hole
+key 118	 all lf(16)
+key 119	 all shiftkeys+capslock
+key 120	 all buckybits+metabit up buckybits+metabit
+key 121	 base ' ' shift ' ' caps ' ' ctrl ^@ altg ' '
+key 122	 all buckybits+metabit up buckybits+metabit
+key 123	 all hole
+key 124	 all hole
+key 125	 all bf(14) numl padplus
+key 126	 all error numl error up hole
+key 127	 all idle numl idle up reset
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_4/traditional_chinese_5	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,41 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+#
+# Traditional_chinese Type 5 key layout
+#
+key 13	all bf(3)
+#
+#
+# New function keys assigned old codes
+#
+key 44   all bf(8)
+key 52   all rf(7)
+key 96   all rf(9)
+key 74   all rf(13)
+key 123  all rf(15)
+key 20   all string+uparrow
+key 24   all string+leftarrow
+key 27   all string+downarrow
+key 28   all string+rightarrow
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_4/traditional_chinese_hobo	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,59 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+#
+# Traditional_chinese Hobo key layout
+#
+#
+key 13	all bf(3)
+key 36	 numl 7
+key 37	 numl 8
+key 38	 numl 9
+key 39	 numl *
+key 60	 numl 4
+key 61	 numl 5
+key 62	 numl 6
+key 63	 numl -
+key 83	 numl 1
+key 84	 numl 2
+key 85	 numl 3
+key 86	 numl +
+key 106	 numl 0
+key 107	 numl ,
+key 108	 numl .
+key 109	 numl /
+#
+#
+#
+# New function keys assigned old codes
+#
+key 44   all bf(8)
+key 52   all rf(7)
+key 96   all rf(9)
+key 74   all rf(13)
+key 123  all rf(15)
+key 20   all string+uparrow
+key 24   all string+leftarrow
+key 27   all string+downarrow
+key 28   all string+rightarrow
--- a/usr/src/cmd/loadkeys/type_6/Makefile	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/cmd/loadkeys/type_6/Makefile	Mon Mar 22 11:35:36 2010 +0100
@@ -19,9 +19,7 @@
 # CDDL HEADER END
 #
 #
-#
-#
-# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 # cmd/loadkeys/type_6/Makefile
@@ -30,11 +28,12 @@
         us belgium czech denmark finnish france canadian_french \
  	germany greece hungary italy japan korea \
         netherlands norway portugal poland reset spain sweden \
-        swiss_french swiss_german taiwan uk \
+        swiss_french swiss_german traditional_chinese uk \
         slovakia slovenia serbiaandmontenegro \
         iceland croatia bulgaria belarus maltaus \
         maltauk albania turkeyq turkeyf latvia lithuania macedonia russia \
-        latinamerica canadian_bilingual brazil dvorak estonia romania
+        latinamerica canadian_bilingual brazil dvorak estonia romania \
+	arabia
 
 KEYTABLESCONFIG = kbd_layouts
 
@@ -55,7 +54,7 @@
 	layout_20 layout_21 layout_100 layout_18 layout_101 layout_102 \
 	layout_103 layout_104 layout_105 layout_106 layout_107 layout_108 \
 	layout_10f layout_1f layout_23 layout_15 layout_05 layout_11 \
-	layout_03 layout_110 layout_111 layout_112 layout_113
+	layout_03 layout_110 layout_111 layout_112 layout_113 layout_01
 
 ROOTLINKS= $(LAYOUTS:%=$(ROOTKEYDIR)/%)
 
@@ -86,6 +85,9 @@
 $(ROOTKEYDIR)/layout_00: $(ROOTKEYDIR)/us
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/us $@
 
+$(ROOTKEYDIR)/layout_01: $(ROOTKEYDIR)/arabia
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/arabia $@
+
 $(ROOTKEYDIR)/layout_02: $(ROOTKEYDIR)/belgium
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/belgium $@
 
@@ -155,8 +157,8 @@
 $(ROOTKEYDIR)/layout_1c: $(ROOTKEYDIR)/swiss_german
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/swiss_german $@
 
-$(ROOTKEYDIR)/layout_1e: $(ROOTKEYDIR)/taiwan
-	$(RM) $@; $(LN) $(ROOTKEYDIR)/taiwan $@
+$(ROOTKEYDIR)/layout_1e: $(ROOTKEYDIR)/traditional_chinese
+	$(RM) $@; $(LN) $(ROOTKEYDIR)/traditional_chinese $@
 
 $(ROOTKEYDIR)/layout_20: $(ROOTKEYDIR)/uk
 	$(RM) $@; $(LN) $(ROOTKEYDIR)/uk $@
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_6/arabia	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,89 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+#
+# Arabia Type 6 (USB) key layout
+#
+# Note, on the console, this keyboard layout is exactly
+# the same as a US keyboard. This is because the console
+# may not have full font support for the characters
+# available in this language.
+#
+key  49  base '\\' shift | caps '\\' ctrl ^\ altg nop
+key  50 all hole        
+key 103  all hole        
+key  30  base 1 shift ! caps 1 ctrl 1 altg nop
+key  31  base 2 shift @ caps 2 ctrl ^@ altg nop
+key  32  base 3 shift # caps 3 ctrl 3 altg nop
+key  33  base 4 shift $ caps 4 ctrl 4 altg nop
+key  34  base 5 shift % caps 5 ctrl 5 altg nop
+key  35  base 6 shift ^ caps 6 ctrl ^^ altg nop
+key  36  base 7 shift & caps 7 ctrl 7 altg nop
+key  37  base 8 shift * caps 8 ctrl 8 altg nop
+key  38  base 9 shift ( caps 9 ctrl 9 altg nop
+key  39  base 0 shift ) caps 0 ctrl 0 altg nop
+key  45  base - shift _ caps - ctrl ^_ altg nop
+key  46  base = shift + caps = ctrl = altg nop
+key  20  base q shift Q caps Q ctrl ^Q altg nop
+key  26  base w shift W caps W ctrl ^W altg nop
+key  28  base y shift Y caps Y ctrl ^Y altg nop
+key  18  base o shift O caps O ctrl ^O altg nop
+key  19  base p shift P caps P ctrl ^P altg nop
+key  47  base [ shift { caps [ ctrl ^[ altg nop
+key  48  base ] shift } caps ] ctrl ^] altg nop
+key 224  all shiftkeys+leftctrl up shiftkeys+leftctrl      
+key   4  base a shift A caps A ctrl ^A altg nop
+key  22  base s shift S caps S ctrl ^S altg nop
+key  51  base ; shift : caps ; ctrl ; altg nop
+key  52  base '\'' shift '"' caps '\'' ctrl '\'' altg nop
+key  53  base ` shift ~ caps ` ctrl ^^ altg nop
+key 100  all hole        
+key  29  base z shift Z caps Z ctrl ^Z altg nop
+key  27  base x shift X caps X ctrl ^X altg nop
+key   6  base c shift C caps C ctrl ^C altg nop
+key  25  base v shift V caps V ctrl ^V altg nop
+key   5  base b shift B caps B ctrl ^B altg nop
+key  17  base n shift N caps N ctrl ^N altg nop
+key  16  base m shift M caps M ctrl '\r' altg nop
+key  54  base , shift < caps , ctrl , altg nop
+key  55  base . shift > caps . ctrl . altg nop
+key  56  base / shift ? caps / ctrl ^_ altg nop
+key  57  all shiftkeys+capslock        
+key 226  all shiftkeys+alt up shiftkeys+alt      
+key 101  all compose        
+key 230  all shiftkeys+altgraph up shiftkeys+altgraph      
+#
+#
+#
+# New function keys assigned old codes
+#
+key  73  all bf(8)        
+key  74  all rf(7)        
+key  75  all rf(9)        
+key  77  all rf(13)        
+key  78  all rf(15)        
+key  82  all string+uparrow        
+key  80  all string+leftarrow        
+key  81  all string+downarrow        
+key  79  all string+rightarrow        
--- a/usr/src/cmd/loadkeys/type_6/belgium	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/cmd/loadkeys/type_6/belgium	Mon Mar 22 11:35:36 2010 +0100
@@ -19,52 +19,41 @@
 # CDDL HEADER END
 #
 #
-# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
 #
 # Belgian Type 6 (USB) key layout
 #
-key  49  base '\\' shift | caps '\\' ctrl ^\ altg nop
-key  50 all hole
-key 103  all hole
-key  30  base 1 shift ! caps 1 ctrl 1 altg nop
-key  31  base 2 shift @ caps 2 ctrl ^@ altg nop
-key  32  base 3 shift # caps 3 ctrl 3 altg nop
-key  33  base 4 shift $ caps 4 ctrl 4 altg nop
-key  34  base 5 shift % caps 5 ctrl 5 altg nop
-key  35  base 6 shift ^ caps 6 ctrl ^^ altg nop
-key  36  base 7 shift & caps 7 ctrl 7 altg nop
-key  37  base 8 shift * caps 8 ctrl 8 altg nop
-key  38  base 9 shift ( caps 9 ctrl 9 altg nop
-key  39  base 0 shift ) caps 0 ctrl 0 altg nop
-key  45  base - shift _ caps - ctrl ^_ altg nop
-key  46  base = shift + caps = ctrl = altg nop
-key  20  base q shift Q caps Q ctrl ^Q altg nop
-key  26  base w shift W caps W ctrl ^W altg nop
-key  28  base y shift Y caps Y ctrl ^Y altg nop
-key  18  base o shift O caps O ctrl ^O altg nop
-key  19  base p shift P caps P ctrl ^P altg nop
-key  47  base [ shift { caps [ ctrl ^[ altg nop
-key  48  base ] shift } caps ] ctrl ^] altg nop
-key 224  all shiftkeys+leftctrl up shiftkeys+leftctrl
-key   4  base a shift A caps A ctrl ^A altg nop
-key  22  base s shift S caps S ctrl ^S altg nop
-key  51  base ; shift : caps ; ctrl ; altg nop
-key  52  base '\'' shift '"' caps '\'' ctrl '\'' altg nop
-key  53  base ` shift ~ caps ` ctrl ^^ altg nop
-key 100  all hole
-key  29  base z shift Z caps Z ctrl ^Z altg nop
-key  27  base x shift X caps X ctrl ^X altg nop
-key   6  base c shift C caps C ctrl ^C altg nop
-key  25  base v shift V caps V ctrl ^V altg nop
-key   5  base b shift B caps B ctrl ^B altg nop
-key  17  base n shift N caps N ctrl ^N altg nop
-key  16  base m shift M caps M ctrl '\r' altg nop
-key  54  base , shift < caps , ctrl , altg nop
-key  55  base . shift > caps . ctrl . altg nop
-key  56  base / shift ? caps / ctrl ^_ altg nop
+#
+key  53  base ² shift ³ caps ² ctrl ² altg nop
+key  30  base & shift 1 caps & ctrl & altg |
+key  31  base é shift 2 caps é ctrl é altg @
+key  32  base '"' shift 3 caps '"' ctrl '"' altg #
+key  33  base '\'' shift 4 caps '\'' ctrl '\'' altg nop
+key  34  base ( shift 5 caps ( ctrl ^[ altg nop
+key  35  base § shift 6 caps § ctrl ^_ altg ^
+key  36  base è shift 7 caps è ctrl è altg nop
+key  37  base ! shift 8 caps ! ctrl ^\ altg nop
+key  38  base ç shift 9 caps ç ctrl ^^ altg {
+key  39  base à shift 0 caps à ctrl ^@ altg }
+key  45  base ) shift ° caps ) ctrl ^] altg nop
+key  46  base - shift _ caps - ctrl ^_ altg nop
+key  20  base a shift A caps A ctrl ^A altg nop
+key  26  base z shift Z caps Z ctrl ^Z altg nop
+key  47  base fa_cflex shift fa_umlaut caps fa_cflex ctrl fa_cflex altg [
+key  48  base $ shift * caps $ ctrl $ altg ]
+key   4  base q shift Q caps Q ctrl ^Q altg nop
+key  51  base m shift M caps M ctrl ^M altg nop
+key  52  base ù shift % caps ù ctrl ù altg fa_grave
+key  50  base µ shift £ caps µ ctrl µ altg fa_acute numl nonl up nop
+key  49  all hole
+key 100  base < shift > caps < ctrl < altg '\\' numl nonl up nop
+key  29  base w shift W caps W ctrl ^W altg nop
+key  16  base , shift ? caps , ctrl , altg nop
+key  54  base ; shift . caps ; ctrl ; altg nop
+key  55  base : shift / caps : ctrl : altg nop
+key  56  base = shift + caps = ctrl = altg fa_tilde
 key  57  all shiftkeys+capslock
 key 226  all shiftkeys+alt up shiftkeys+alt
 key 101  all compose
@@ -74,12 +63,12 @@
 #
 # New function keys assigned old codes
 #
-key  73  all bf(8)
-key  74  all rf(7)
-key  75  all rf(9)
-key  77  all rf(13)
-key  78  all rf(15)
-key  82  all string+uparrow
-key  80  all string+leftarrow
-key  81  all string+downarrow
-key  79  all string+rightarrow
+key  73  all bf(8)        
+key  74  all rf(7)        
+key  75  all rf(9)        
+key  77  all rf(13)        
+key  78  all rf(15)        
+key  82  all string+uparrow        
+key  80  all string+leftarrow        
+key  81  all string+downarrow        
+key  79  all string+rightarrow        
--- a/usr/src/cmd/loadkeys/type_6/kbd_layouts	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/cmd/loadkeys/type_6/kbd_layouts	Mon Mar 22 11:35:36 2010 +0100
@@ -18,9 +18,8 @@
 #
 # CDDL HEADER END
 #
-
 #
-# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 #
@@ -37,6 +36,7 @@
 
 
 Albanian=264
+Arabic=1
 Belarusian=261
 Belgian=2
 Brazilian=272
--- a/usr/src/cmd/loadkeys/type_6/taiwan	Mon Mar 22 03:32:52 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-#
-# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-# ident	"%Z%%M%	%I%	%E% SMI"
-#
-# Taiwan Type 6 (USB) key layout
-#
-#
-key 230  all bf(3)        
-#
-#
-#
-# New function keys assigned old codes
-#
-key  73  all bf(8)        
-key  74  all rf(7)        
-key  75  all rf(9)        
-key  77  all rf(13)        
-key  78  all rf(15)        
-key  82  all string+uparrow        
-key  80  all string+leftarrow        
-key  81  all string+downarrow        
-key  79  all string+rightarrow        
-key  49  base '\\' shift | caps '\\' ctrl ^\ altg nop
-key  50  all hole
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/loadkeys/type_6/traditional_chinese	Mon Mar 22 11:35:36 2010 +0100
@@ -0,0 +1,44 @@
+#
+# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Traditional_chinese Type 6 (USB) key layout
+#
+#
+key 230  all bf(3)        
+#
+#
+#
+# New function keys assigned old codes
+#
+key  73  all bf(8)        
+key  74  all rf(7)        
+key  75  all rf(9)        
+key  77  all rf(13)        
+key  78  all rf(15)        
+key  82  all string+uparrow        
+key  80  all string+leftarrow        
+key  81  all string+downarrow        
+key  79  all string+rightarrow        
+key  49  base '\\' shift | caps '\\' ctrl ^\ altg nop
+key  50  all hole
--- a/usr/src/pkg/manifests/system-data-keyboard-keytables.mf	Mon Mar 22 03:32:52 2010 -0700
+++ b/usr/src/pkg/manifests/system-data-keyboard-keytables.mf	Mon Mar 22 11:35:36 2010 +0100
@@ -63,7 +63,7 @@
 file path=usr/share/lib/keytables/type_101/sweden
 file path=usr/share/lib/keytables/type_101/swiss_french
 file path=usr/share/lib/keytables/type_101/swiss_german
-file path=usr/share/lib/keytables/type_101/taiwan
+file path=usr/share/lib/keytables/type_101/traditional_chinese
 file path=usr/share/lib/keytables/type_101/turkey
 file path=usr/share/lib/keytables/type_101/uk
 file path=usr/share/lib/keytables/type_101/us
@@ -115,9 +115,9 @@
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/swiss_german
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/swiss_german_5
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/swiss_german_hobo
-$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/taiwan
-$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/taiwan_5
-$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/taiwan_hobo
+$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/traditional_chinese
+$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/traditional_chinese_5
+$(sparc_ONLY)file path=usr/share/lib/keytables/type_4/traditional_chinese_hobo
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/uk
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/uk_5
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/uk_hobo
@@ -125,6 +125,7 @@
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/us101a_pc
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/us_5
 $(sparc_ONLY)file path=usr/share/lib/keytables/type_4/us_hobo
+file path=usr/share/lib/keytables/type_6/arabia
 file path=usr/share/lib/keytables/type_6/albania
 file path=usr/share/lib/keytables/type_6/belarus
 file path=usr/share/lib/keytables/type_6/belgium
@@ -167,7 +168,7 @@
 file path=usr/share/lib/keytables/type_6/sweden
 file path=usr/share/lib/keytables/type_6/swiss_french
 file path=usr/share/lib/keytables/type_6/swiss_german
-file path=usr/share/lib/keytables/type_6/taiwan
+file path=usr/share/lib/keytables/type_6/traditional_chinese
 file path=usr/share/lib/keytables/type_6/turkeyf
 file path=usr/share/lib/keytables/type_6/turkeyq
 file path=usr/share/lib/keytables/type_6/uk
@@ -253,7 +254,7 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_10 \
     target=../../../../usr/share/lib/keytables/type_4/korea
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_11 \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_13 \
     target=../../../../usr/share/lib/keytables/type_4/us101a_pc
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_20 \
@@ -289,7 +290,7 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_2f \
     target=../../../../usr/share/lib/keytables/type_4/korea_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_30 \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan_5
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_31 \
     target=../../../../usr/share/lib/keytables/type_4/japan_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_32 \
@@ -335,7 +336,7 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_5e \
     target=../../../../usr/share/lib/keytables/type_4/korea_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_5f \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan_hobo
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_60 \
     target=../../../../usr/share/lib/keytables/type_4/japan_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/layout_61 \
@@ -388,12 +389,12 @@
     target=../../../../usr/share/lib/keytables/type_4/swiss_german_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/swiss_german_hobo \
     target=../../../../usr/share/lib/keytables/type_4/swiss_german_hobo
-$(sparc_ONLY)hardlink path=usr/share/lib/keytables/taiwan \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan
-$(sparc_ONLY)hardlink path=usr/share/lib/keytables/taiwan_5 \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan_5
-$(sparc_ONLY)hardlink path=usr/share/lib/keytables/taiwan_hobo \
-    target=../../../../usr/share/lib/keytables/type_4/taiwan_hobo
+$(sparc_ONLY)hardlink path=usr/share/lib/keytables/traditional_chinese \
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese
+$(sparc_ONLY)hardlink path=usr/share/lib/keytables/traditional_chinese_5 \
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese_5
+$(sparc_ONLY)hardlink path=usr/share/lib/keytables/traditional_chinese_hobo \
+    target=../../../../usr/share/lib/keytables/type_4/traditional_chinese_hobo
 hardlink path=usr/share/lib/keytables/type_101/layout_00 \
     target=../../../../../usr/share/lib/keytables/type_101/us
 hardlink path=usr/share/lib/keytables/type_101/layout_01 \
@@ -427,7 +428,7 @@
 hardlink path=usr/share/lib/keytables/type_101/layout_2f \
     target=../../../../../usr/share/lib/keytables/type_101/korea
 hardlink path=usr/share/lib/keytables/type_101/layout_30 \
-    target=../../../../../usr/share/lib/keytables/type_101/taiwan
+    target=../../../../../usr/share/lib/keytables/type_101/traditional_chinese
 hardlink path=usr/share/lib/keytables/type_101/layout_31 \
     target=../../../../../usr/share/lib/keytables/type_101/japan
 hardlink path=usr/share/lib/keytables/type_101/layout_32 \
@@ -483,7 +484,7 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_10 \
     target=../../../../../usr/share/lib/keytables/type_4/korea
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_11 \
-    target=../../../../../usr/share/lib/keytables/type_4/taiwan
+    target=../../../../../usr/share/lib/keytables/type_4/traditional_chinese
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_13 \
     target=../../../../../usr/share/lib/keytables/type_4/us101a_pc
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_20 \
@@ -519,7 +520,7 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_2f \
     target=../../../../../usr/share/lib/keytables/type_4/korea_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_30 \
-    target=../../../../../usr/share/lib/keytables/type_4/taiwan_5
+    target=../../../../../usr/share/lib/keytables/type_4/traditional_chinese_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_31 \
     target=../../../../../usr/share/lib/keytables/type_4/japan_5
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_32 \
@@ -565,13 +566,15 @@
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_5e \
     target=../../../../../usr/share/lib/keytables/type_4/korea_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_5f \
-    target=../../../../../usr/share/lib/keytables/type_4/taiwan_hobo
+    target=../../../../../usr/share/lib/keytables/type_4/traditional_chinese_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_60 \
     target=../../../../../usr/share/lib/keytables/type_4/japan_hobo
 $(sparc_ONLY)hardlink path=usr/share/lib/keytables/type_4/layout_61 \
     target=../../../../../usr/share/lib/keytables/type_4/canadian_french_hobo
 hardlink path=usr/share/lib/keytables/type_6/layout_00 \
     target=../../../../../usr/share/lib/keytables/type_6/us
+hardlink path=usr/share/lib/keytables/type_6/layout_01 \
+    target=../../../../../usr/share/lib/keytables/type_6/arabia
 hardlink path=usr/share/lib/keytables/type_6/layout_02 \
     target=../../../../../usr/share/lib/keytables/type_6/belgium
 hardlink path=usr/share/lib/keytables/type_6/layout_03 \
@@ -655,7 +658,7 @@
 hardlink path=usr/share/lib/keytables/type_6/layout_1c \
     target=../../../../../usr/share/lib/keytables/type_6/swiss_german
 hardlink path=usr/share/lib/keytables/type_6/layout_1e \
-    target=../../../../../usr/share/lib/keytables/type_6/taiwan
+    target=../../../../../usr/share/lib/keytables/type_6/traditional_chinese
 hardlink path=usr/share/lib/keytables/type_6/layout_1f \
     target=../../../../../usr/share/lib/keytables/type_6/turkeyq
 hardlink path=usr/share/lib/keytables/type_6/layout_20 \