]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - share/i18n/csmapper/APPLE/UCS%KEYBOARD.src
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / share / i18n / csmapper / APPLE / UCS%KEYBOARD.src
1 # $FreeBSD$
2
3 TYPE            ROWCOL
4 NAME            UCS/KEYBOARD
5 SRC_ZONE        0x0000-0xF8FF
6 OOB_MODE        INVALID
7 DST_INVALID     0x100
8 DST_UNIT_BITS   16
9 #=======================================================================
10 #   File name:  KEYBOARD.TXT
11 #
12 #   Contents:   Map (external version) from Mac OS Keyboard
13 #               character set to Unicode 4.0 and later.
14 #
15 #   Copyright:  (c) 2001-2002, 2005 by Apple Computer, Inc., all rights
16 #               reserved.
17 #
18 #   Contact:    charsets@apple.com
19 #
20 #   Changes:
21 #
22 #       c02  2005-Apr-05    Change mappings for 0x09, 0x0F, 0x8C; add
23 #                           Mac OS X-only mappings for 0x8D-9x8F.
24 #                           Update header comments, including
25 #                           clarification of Mac OS X usage. Matches
26 #                           internal xml <c1.2> and Text Encoding
27 #                           Converter 2.0.
28 #      b1,c1 2002-Dec-19    First version. Matches internal utom<b6>.
29 #
30 # Standard header:
31 # ----------------
32 #
33 #   Apple, the Apple logo, and Macintosh are trademarks of Apple
34 #   Computer, Inc., registered in the United States and other countries.
35 #   Unicode is a trademark of Unicode Inc. For the sake of brevity,
36 #   throughout this document, "Macintosh" can be used to refer to
37 #   Macintosh computers and "Unicode" can be used to refer to the
38 #   Unicode standard.
39 #
40 #   Apple Computer, Inc. ("Apple") makes no warranty or representation,
41 #   either express or implied, with respect to this document and the
42 #   included data, its quality, accuracy, or fitness for a particular
43 #   purpose. In no event will Apple be liable for direct, indirect,
44 #   special, incidental, or consequential damages resulting from any
45 #   defect or inaccuracy in this document or the included data.
46 #
47 #   These mapping tables and character lists are subject to change.
48 #   The latest tables should be available from the following:
49 #
50 #   <http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/>
51 #
52 #   For general information about Mac OS encodings and these mapping
53 #   tables, see the file "README.TXT".
54 #
55 # Format:
56 # -------
57 #
58 #   Three tab-separated columns;
59 #   '#' begins a comment which continues to the end of the line.
60 #     Column #1 is the Mac OS Keyboard code (in hex as 0xNN)
61 #     Column #2 is the corresponding Unicode or Unicode sequence
62 #       (in hex as 0xNNNN or 0xNNNN+0xNNNN, etc.).
63 #     Column #3 is a comment containing the Unicode name.
64 #       In some cases an additional comment follows the Unicode name.
65 #
66 #   The entries are in Mac OS Keyboard code order.
67 #
68 #   Some of these mappings require the use of corporate characters.
69 #   See the file "CORPCHAR.TXT" and notes below.
70 #
71 #   The Mac OS Keyboard character set uses the ranges normally set aside
72 #   for controls, so those ranges are present in this table.
73 #
74 # Notes on Mac OS Keyboard:
75 # -------------------------
76 #
77 #   This is the encoding for the legacy font named ".Keyboard". Before
78 #   Mac OS X, this font was used by the user-interface system to display
79 #   glyphs for special keys on the keyboard. In Mac OS X, that font is
80 #   not present and this mapping is not associated with a font; it is
81 #   only used as a way to map from a set of Menu Manager constants to
82 #   associated Unicode sequences. As such, new mappings added for Mac OS
83 #   X only may be one-way mappings: From the Keyboard glyph "encoding"
84 #   to Unicode, but not back.
85 #
86 #   The Mac OS Keyboard encoding shares the script code smRoman
87 #   (0) with the Mac OS Roman encoding. To determine if the Keyboard
88 #   encoding is being used in Mac OS 8 or Mac OS 9, you must check if
89 #   the font name is ".Keyboard".
90 #
91 # Unicode mapping issues and notes:
92 # ---------------------------------
93 #
94 #   The goals in the mappings provided here are:
95 #   - For mappings used in Mac OS 8 and Mac OS 9, ensure roundtrip
96 #     mapping from every character in the Mac OS  Keyboard character set
97 #     to Unicode and back. This consideration does not apply to mappings
98 #     added for Mac OS X only (noted below).
99 #   - Use standard Unicode characters as much as possible, to
100 #     maximize interchangeability of the resulting Unicode text.
101 #     Whenever possible, avoid having content carried by private-use
102 #     characters.
103 #
104 #   Some of the characters in the Mac OS Keyboard character set do not
105 #   correspond to distinct, single Unicode characters. To map these
106 #   and satisfy both goals above, we employ various strategies.
107 #
108 #   a) If possible, use private use characters in combination with
109 #   standard Unicode characters to mark variants of the standard
110 #   Unicode character.
111 #
112 #   Apple has defined a block of 32 corporate characters as "transcoding
113 #   hints." These are used in combination with standard Unicode
114 #   characters to force them to be treated in a special way for mapping
115 #   to other encodings; they have no other effect. Sixteen of these
116 #   transcoding hints are "grouping hints" - they indicate that the next
117 #   2-4 Unicode characters should be treated as a single entity for
118 #   transcoding. The other sixteen transcoding hints are "variant tags"
119 #   - they are like combining characters, and can follow a standard
120 #   Unicode (or a sequence consisting of a base character and other
121 #   combining characters) to cause it to be treated in a special way for
122 #   transcoding. These always terminate a combining-character sequence.
123 #
124 #   The transcoding coding hints used in this mapping table are two
125 #   grouping tags, 0xF860-61, and one variant tag, 0xF87F. Since these
126 #   are combined with standard Unicode characters, some characters in
127 #   the Mac OS Keyboard character set map to a sequence of two to four
128 #   Unicodes instead of a single Unicode character.
129 #
130 #   For example, the Mac OS Keyboard character at 0x6F, representing the
131 #   F1 key, is mapped to Unicode using the grouping tag F860 (group next
132 #   two) followed by U+0046 (LATIN CAPITAL LETTER F) and U+0031 (DIGIT
133 #   ONE).
134 #
135 #   b) Otherwise, use private use characters by themselves to map Mac OS
136 #   Keyboard characters which have no relationship to any standard
137 #   Unicode character.
138 #
139 #   The following additional corporate zone Unicode characters are
140 #   used for this purpose here:
141 #
142 #     0xF802  Lower left pencil
143 #     0xF803  Contextual menu key symbol
144 #     0xF8FF  Apple logo
145 #
146 #   NOTE: The graphic image associated with the Apple logo character
147 #   is not authorized for use without permission of Apple, and
148 #   unauthorized use might constitute trademark infringement.
149 #
150 # Details of mapping changes in each version:
151 # -------------------------------------------
152 #
153 #   Changes from version c01 to version c02:
154 #
155 #   - Mapping for 0x09 changed from 0x0009 (wrong) to 0x2423
156 #   - Mapping for 0x0F changed from 0x270E (wrong) to 0xF802
157 #   - Mapping for 0x8C changed from 0xF804 to 0x23CF (Unicode 4.0)
158 #   - Add Mac OS X-only mappings for 0x8D-0x8F
159 #
160 ##################
161 BEGIN_MAP
162 0x0000 = 0x00
163 0x0008 = 0x08
164 0x000D = 0x0D
165 0x0020 = 0x20
166 0x0030 = 0x30
167 0x0031 = 0x31
168 0x0032 = 0x32
169 0x0033 = 0x33
170 0x0034 = 0x34
171 0x0035 = 0x35
172 0x0036 = 0x36
173 0x0037 = 0x37
174 0x0038 = 0x38
175 0x0039 = 0x39
176 #0x003F+0x20DD = 0x67
177 0x0046 = 0x46
178 0x2190 = 0x64
179 0x2191 = 0x68
180 0x2192 = 0x65
181 0x2193 = 0x6A
182 0x2196 = 0x66
183 0x2198 = 0x69
184 0x21A9 = 0x0B
185 0x21AA = 0x0C
186 0x21DE = 0x62
187 0x21DF = 0x6B
188 0x21E0 = 0x18
189 0x21E1 = 0x19
190 0x21E2 = 0x1A
191 0x21E3 = 0x10
192 0x21E4 = 0x03
193 0x21E5 = 0x02
194 0x21E7 = 0x05
195 0x21EA = 0x63
196 0x2303 = 0x06
197 0x2318 = 0x11
198 0x2324 = 0x04
199 0x2325 = 0x07
200 0x2326 = 0x0A
201 0x2327 = 0x1C
202 0x232B = 0x17
203 0x2387 = 0x8B
204 0x2388 = 0x8A
205 0x238B = 0x1B
206 0x23CF = 0x8C
207 0x2423 = 0x09
208 0x2423 = 0x61
209 0x25C6 = 0x13
210 0x2713 = 0x12
211 #0x2758+0x20DD = 0x6E
212 #0x304B+0x306A = 0x8E
213 #0x82F1+0x6570 = 0x8D
214 0xF802 = 0x0F
215 0xF803 = 0x6D
216 #0xF860+0x0046+0x0031 = 0x6F
217 #0xF860+0x0046+0x0032 = 0x70
218 #0xF860+0x0046+0x0033 = 0x71
219 #0xF860+0x0046+0x0034 = 0x72
220 #0xF860+0x0046+0x0035 = 0x73
221 #0xF860+0x0046+0x0036 = 0x74
222 #0xF860+0x0046+0x0037 = 0x75
223 #0xF860+0x0046+0x0038 = 0x76
224 #0xF860+0x0046+0x0039 = 0x77
225 #0xF861+0x0046+0x0031+0x0030 = 0x78
226 #0xF861+0x0046+0x0031+0x0031 = 0x79
227 #0xF861+0x0046+0x0031+0x0032 = 0x7A
228 #0xF861+0x0046+0x0031+0x0033 = 0x87
229 #0xF861+0x0046+0x0031+0x0034 = 0x88
230 #0xF861+0x0046+0x0031+0x0035 = 0x89
231 #0xF861+0x0046+0x0031+0x0036 = 0x8F
232 0xF8FF = 0x14
233 #0xF8FF+0xF87F = 0x6C
234 END_MAP