xref: /freebsd/share/i18n/csmapper/APPLE/HEBREW%UCS.src (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
1*ad30f8e7SGabor Kovesdan
2*ad30f8e7SGabor KovesdanTYPE		ROWCOL
3*ad30f8e7SGabor KovesdanNAME		HEBREW/UCS
4*ad30f8e7SGabor KovesdanSRC_ZONE	0x00-0xFF
5*ad30f8e7SGabor KovesdanOOB_MODE	ILSEQ
6*ad30f8e7SGabor KovesdanDST_ILSEQ	0xFFFE
7*ad30f8e7SGabor KovesdanDST_UNIT_BITS	16
8*ad30f8e7SGabor Kovesdan
9*ad30f8e7SGabor KovesdanBEGIN_MAP
10*ad30f8e7SGabor Kovesdan#=======================================================================
11*ad30f8e7SGabor Kovesdan#   File name:  HEBREW.TXT
12*ad30f8e7SGabor Kovesdan#
13*ad30f8e7SGabor Kovesdan#   Contents:   Map (external version) from Mac OS Hebrew
14*ad30f8e7SGabor Kovesdan#               character set to Unicode 2.1 and later.
15*ad30f8e7SGabor Kovesdan#
16*ad30f8e7SGabor Kovesdan#   Copyright:  (c) 1995-2002, 2005 by Apple Computer, Inc., all rights
17*ad30f8e7SGabor Kovesdan#               reserved.
18*ad30f8e7SGabor Kovesdan#
19*ad30f8e7SGabor Kovesdan#   Contact:    charsets@apple.com
20*ad30f8e7SGabor Kovesdan#
21*ad30f8e7SGabor Kovesdan#   Changes:
22*ad30f8e7SGabor Kovesdan#
23*ad30f8e7SGabor Kovesdan#       c02  2005-Apr-05    Update header comments; add section on
24*ad30f8e7SGabor Kovesdan#                           roundtrip considerations. Matches internal
25*ad30f8e7SGabor Kovesdan#                           xml <c1.4> and Text Encoding Converter 2.0.
26*ad30f8e7SGabor Kovesdan#      b3,c1 2002-Dec-19    Don't require left-right context for digits
27*ad30f8e7SGabor Kovesdan#                           0x30-0x39. Change mapping of 0x81 to use
28*ad30f8e7SGabor Kovesdan#                           decomposition. Reverse the mappings of 0xA8,
29*ad30f8e7SGabor Kovesdan#                           0xA9. Update URLs, notes. Matches internal
30*ad30f8e7SGabor Kovesdan#                           utom<b7>.
31*ad30f8e7SGabor Kovesdan#       b02  1999-Sep-22    Update contact e-mail address. Matches
32*ad30f8e7SGabor Kovesdan#                           internal utom<b1>, ufrm<b1>, and Text
33*ad30f8e7SGabor Kovesdan#                           Encoding Converter version 1.5.
34*ad30f8e7SGabor Kovesdan#       n03  1998-Feb-05    Show required Unicode character
35*ad30f8e7SGabor Kovesdan#                           directionality in a different way. Update
36*ad30f8e7SGabor Kovesdan#                           mappings for 0xC0 and 0xDE to use
37*ad30f8e7SGabor Kovesdan#                           transcoding hints; matches internal utom<n6>,
38*ad30f8e7SGabor Kovesdan#                           ufrm<n20>, and Text Encoding Converter
39*ad30f8e7SGabor Kovesdan#                           version 1.3. Rewrite header comments.
40*ad30f8e7SGabor Kovesdan#       n01  1995-Nov-15    First version. Matches internal ufrm<n8>.
41*ad30f8e7SGabor Kovesdan#
42*ad30f8e7SGabor Kovesdan# Standard header:
43*ad30f8e7SGabor Kovesdan# ----------------
44*ad30f8e7SGabor Kovesdan#
45*ad30f8e7SGabor Kovesdan#   Apple, the Apple logo, and Macintosh are trademarks of Apple
46*ad30f8e7SGabor Kovesdan#   Computer, Inc., registered in the United States and other countries.
47*ad30f8e7SGabor Kovesdan#   Unicode is a trademark of Unicode Inc. For the sake of brevity,
48*ad30f8e7SGabor Kovesdan#   throughout this document, "Macintosh" can be used to refer to
49*ad30f8e7SGabor Kovesdan#   Macintosh computers and "Unicode" can be used to refer to the
50*ad30f8e7SGabor Kovesdan#   Unicode standard.
51*ad30f8e7SGabor Kovesdan#
52*ad30f8e7SGabor Kovesdan#   Apple Computer, Inc. ("Apple") makes no warranty or representation,
53*ad30f8e7SGabor Kovesdan#   either express or implied, with respect to this document and the
54*ad30f8e7SGabor Kovesdan#   included data, its quality, accuracy, or fitness for a particular
55*ad30f8e7SGabor Kovesdan#   purpose. In no event will Apple be liable for direct, indirect,
56*ad30f8e7SGabor Kovesdan#   special, incidental, or consequential damages resulting from any
57*ad30f8e7SGabor Kovesdan#   defect or inaccuracy in this document or the included data.
58*ad30f8e7SGabor Kovesdan#
59*ad30f8e7SGabor Kovesdan#   These mapping tables and character lists are subject to change.
60*ad30f8e7SGabor Kovesdan#   The latest tables should be available from the following:
61*ad30f8e7SGabor Kovesdan#
62*ad30f8e7SGabor Kovesdan#   <http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/>
63*ad30f8e7SGabor Kovesdan#
64*ad30f8e7SGabor Kovesdan#   For general information about Mac OS encodings and these mapping
65*ad30f8e7SGabor Kovesdan#   tables, see the file "README.TXT".
66*ad30f8e7SGabor Kovesdan#
67*ad30f8e7SGabor Kovesdan# Format:
68*ad30f8e7SGabor Kovesdan# -------
69*ad30f8e7SGabor Kovesdan#
70*ad30f8e7SGabor Kovesdan#   Three tab-separated columns;
71*ad30f8e7SGabor Kovesdan#   '#' begins a comment which continues to the end of the line.
72*ad30f8e7SGabor Kovesdan#     Column #1 is the Mac OS Hebrew code (in hex as 0xNN).
73*ad30f8e7SGabor Kovesdan#     Column #2 is the corresponding Unicode or Unicode sequence (in
74*ad30f8e7SGabor Kovesdan#       hex as 0xNNNN, 0xNNNN+0xNNNN, etc.). Sequences of up to 3
75*ad30f8e7SGabor Kovesdan#       Unicode characters are used here. A single Unicode character
76*ad30f8e7SGabor Kovesdan#       may be preceded by a tag indicating required directionality
77*ad30f8e7SGabor Kovesdan#       (i.e. 0xNNNN or 0xNNNN).
78*ad30f8e7SGabor Kovesdan#     Column #3 is a comment containing the Unicode name.
79*ad30f8e7SGabor Kovesdan#
80*ad30f8e7SGabor Kovesdan#   The entries are in Mac OS Hebrew code order.
81*ad30f8e7SGabor Kovesdan#
82*ad30f8e7SGabor Kovesdan#   Some of these mappings require the use of corporate characters.
83*ad30f8e7SGabor Kovesdan#   See the file "CORPCHAR.TXT" and notes below.
84*ad30f8e7SGabor Kovesdan#
85*ad30f8e7SGabor Kovesdan#   Control character mappings are not shown in this table, following
86*ad30f8e7SGabor Kovesdan#   the conventions of the standard UTC mapping tables. However, the
87*ad30f8e7SGabor Kovesdan#   Mac OS Hebrew character set uses the standard control characters at
88*ad30f8e7SGabor Kovesdan#   0x00-0x1F and 0x7F.
89*ad30f8e7SGabor Kovesdan#
90*ad30f8e7SGabor Kovesdan# Notes on Mac OS Hebrew:
91*ad30f8e7SGabor Kovesdan# -----------------------
92*ad30f8e7SGabor Kovesdan#
93*ad30f8e7SGabor Kovesdan#   This is a legacy Mac OS encoding; in the Mac OS X Carbon and Cocoa
94*ad30f8e7SGabor Kovesdan#   environments, it is only supported via transcoding to and from
95*ad30f8e7SGabor Kovesdan#   Unicode.
96*ad30f8e7SGabor Kovesdan#
97*ad30f8e7SGabor Kovesdan#   1. General
98*ad30f8e7SGabor Kovesdan#
99*ad30f8e7SGabor Kovesdan#   The Mac OS Hebrew character set supports the Hebrew and Yiddish
100*ad30f8e7SGabor Kovesdan#   languages. It incorporates the Hebrew letter repertoire of
101*ad30f8e7SGabor Kovesdan#   ISO 8859-8, and uses the same code points for them, 0xE0-0xFA.
102*ad30f8e7SGabor Kovesdan#   It also incorporates the ASCII character set. In addition, the
103*ad30f8e7SGabor Kovesdan#   Mac OS Hebrew character set includes the following:
104*ad30f8e7SGabor Kovesdan#
105*ad30f8e7SGabor Kovesdan#   - Hebrew points (nikud marks) at 0xC6, 0xCB-0xCF and 0xD8-0xDF.
106*ad30f8e7SGabor Kovesdan#     These are non-spacing combining marks. Note that the RAFE point
107*ad30f8e7SGabor Kovesdan#     at 0xD8 is not displayed correctly in some fonts, and cannot be
108*ad30f8e7SGabor Kovesdan#     typed using the keyboard layouts in the current Hebrew localized
109*ad30f8e7SGabor Kovesdan#     systems. Also note: The character given in Unicode as QAMATS
110*ad30f8e7SGabor Kovesdan#     (U+05B8) actually refers to two different sounds, depending on
111*ad30f8e7SGabor Kovesdan#     context. For example, when ALEF is followed by QAMATS, the QAMATS
112*ad30f8e7SGabor Kovesdan#     can actually refer to two different sounds depending on the
113*ad30f8e7SGabor Kovesdan#     following letters. The Mac OS Hebrew character set separately
114*ad30f8e7SGabor Kovesdan#     encodes these two sounds for the same graphic shape, as "qamats"
115*ad30f8e7SGabor Kovesdan#     (0xCB) and "qamats qatan" (0xDE). The "qamats" character is more
116*ad30f8e7SGabor Kovesdan#     common, so it is mapped to the Unicode QAMATS; "qamats qatan" can
117*ad30f8e7SGabor Kovesdan#     only be used with a limited number of characters, and it is
118*ad30f8e7SGabor Kovesdan#     mapped using a corporate-zone variant tag (see below).
119*ad30f8e7SGabor Kovesdan#
120*ad30f8e7SGabor Kovesdan#   - Various Hebrew ligatures at 0x81, 0xC0, 0xC7, 0xC8, 0xD6, and
121*ad30f8e7SGabor Kovesdan#     0xD7. Also note that the Yiddish YOD YOD PATAH ligature at 0x81
122*ad30f8e7SGabor Kovesdan#     is missing in some fonts.
123*ad30f8e7SGabor Kovesdan#
124*ad30f8e7SGabor Kovesdan#   - The NEW SHEQEL SIGN at 0xA6.
125*ad30f8e7SGabor Kovesdan#
126*ad30f8e7SGabor Kovesdan#   - Latin characters with diacritics at 0x80 and 0x82-0x9F. However,
127*ad30f8e7SGabor Kovesdan#     most of these cannot be typed using the keyboard layouts in the
128*ad30f8e7SGabor Kovesdan#     Hebrew localized systems.
129*ad30f8e7SGabor Kovesdan#
130*ad30f8e7SGabor Kovesdan#   - Right-left versions of certain ASCII punctuation, symbols and
131*ad30f8e7SGabor Kovesdan#     digits: 0xA0-0xA5, 0xA7-0xBF, 0xFB-0xFF. See below.
132*ad30f8e7SGabor Kovesdan#
133*ad30f8e7SGabor Kovesdan#   - Miscellaneous additional punctuation at 0xC1, 0xC9, 0xCA, and
134*ad30f8e7SGabor Kovesdan#     0xD0-0xD5. There is a variant of the Hebrew encoding in which
135*ad30f8e7SGabor Kovesdan#     the LEFT SINGLE QUOTATION MARK at 0xD4 is replaced by FIGURE
136*ad30f8e7SGabor Kovesdan#     SPACE. The glyphs for some of the other punctuation characters
137*ad30f8e7SGabor Kovesdan#     are missing in some fonts.
138*ad30f8e7SGabor Kovesdan#
139*ad30f8e7SGabor Kovesdan#   - Four obsolete characters at 0xC2-0xC5 known as canorals (not to
140*ad30f8e7SGabor Kovesdan#     be confused with cantillation marks!). These were used for
141*ad30f8e7SGabor Kovesdan#     manual positioning of nikud marks before System 7.1 (at which
142*ad30f8e7SGabor Kovesdan#     point nikud positioning became automatic with WorldScript.).
143*ad30f8e7SGabor Kovesdan#
144*ad30f8e7SGabor Kovesdan#   2. Directional characters and roundtrip fidelity
145*ad30f8e7SGabor Kovesdan#
146*ad30f8e7SGabor Kovesdan#   The Mac OS Hebrew character set was developed around 1987. At that
147*ad30f8e7SGabor Kovesdan#   time the bidirectional line line layout algorithm used in the Mac OS
148*ad30f8e7SGabor Kovesdan#   Hebrew system was fairly simple; it used only a few direction
149*ad30f8e7SGabor Kovesdan#   classes (instead of the 19 now used in the Unicode bidirectional
150*ad30f8e7SGabor Kovesdan#   algorithm). In order to permit users to handle some tricky layou
151*ad30f8e7SGabor Kovesdan#   problems, certain punctuation, symbol, and digit characters have
152*ad30f8e7SGabor Kovesdan#   duplicate code points, one with a left-right direction attribute and
153*ad30f8e7SGabor Kovesdan#   the other with a right-left direction attribute.
154*ad30f8e7SGabor Kovesdan#
155*ad30f8e7SGabor Kovesdan#   For example, plus sign is encoded at 0x2B with a left-right
156*ad30f8e7SGabor Kovesdan#   attribute, and at 0xAB with a right-left attribute. However, there
157*ad30f8e7SGabor Kovesdan#   is only one PLUS SIGN character in Unicode. This leads to some
158*ad30f8e7SGabor Kovesdan#   interesting problems when mapping between Mac OS Hebrew and Unicode;
159*ad30f8e7SGabor Kovesdan#   see below.
160*ad30f8e7SGabor Kovesdan#
161*ad30f8e7SGabor Kovesdan#   A related problem is that even when a particular character is
162*ad30f8e7SGabor Kovesdan#   encoded only once in Mac OS Hebrew, it may have a different
163*ad30f8e7SGabor Kovesdan#   direction attribute than the corresponding Unicode character.
164*ad30f8e7SGabor Kovesdan#
165*ad30f8e7SGabor Kovesdan#   For example, the Mac OS Hebrew character at 0xC9 is HORIZONTAL
166*ad30f8e7SGabor Kovesdan#   ELLIPSIS with strong right-left direction. However, the Unicode
167*ad30f8e7SGabor Kovesdan#   character HORIZONTAL ELLIPSIS has direction class neutral.
168*ad30f8e7SGabor Kovesdan#
169*ad30f8e7SGabor Kovesdan#   3. Font variants
170*ad30f8e7SGabor Kovesdan#
171*ad30f8e7SGabor Kovesdan#   The table in this file gives the Unicode mappings for the standard
172*ad30f8e7SGabor Kovesdan#   Mac OS Hebrew encoding. This encoding is supported by many of the
173*ad30f8e7SGabor Kovesdan#   Apple fonts (including all of the fonts in the Hebrew Language Kit),
174*ad30f8e7SGabor Kovesdan#   and is the encoding supported by the text processing utilities.
175*ad30f8e7SGabor Kovesdan#   However, some TrueType fonts provided with the localized Hebrew
176*ad30f8e7SGabor Kovesdan#   system implement a slightly different encoding; the difference is
177*ad30f8e7SGabor Kovesdan#   only in one code point, 0xD4. For the standard variant, this is:
178*ad30f8e7SGabor Kovesdan#     0xD4 -> 0x2018  LEFT SINGLE QUOTATION MARK, right-left
179*ad30f8e7SGabor Kovesdan#
180*ad30f8e7SGabor Kovesdan#   The TrueType variant is used by the following TrueType fonts from
181*ad30f8e7SGabor Kovesdan#   the localized system: Caesarea, Carmel Book, Gilboa, Ramat Sharon,
182*ad30f8e7SGabor Kovesdan#   and Sinai Book. For these, 0xD4 is as follows:
183*ad30f8e7SGabor Kovesdan#     0xD4 -> 0x2007  FIGURE SPACE, right-left
184*ad30f8e7SGabor Kovesdan#
185*ad30f8e7SGabor Kovesdan# Unicode mapping issues and notes:
186*ad30f8e7SGabor Kovesdan# ---------------------------------
187*ad30f8e7SGabor Kovesdan#
188*ad30f8e7SGabor Kovesdan#   1. Matching the direction of Mac OS Hebrew characters
189*ad30f8e7SGabor Kovesdan#
190*ad30f8e7SGabor Kovesdan#   When Mac OS Hebrew encodes a character twice but with different
191*ad30f8e7SGabor Kovesdan#   direction attributes for the two code points - as in the case of
192*ad30f8e7SGabor Kovesdan#   plus sign mentioned above - we need a way to map both Mac OS Hebrew
193*ad30f8e7SGabor Kovesdan#   code points to Unicode and back again without loss of information.
194*ad30f8e7SGabor Kovesdan#   With the plus sign, for example, mapping one of the Mac OS Hebrew
195*ad30f8e7SGabor Kovesdan#   characters to a code in the Unicode corporate use zone is
196*ad30f8e7SGabor Kovesdan#   undesirable, since both of the plus sign characters are likely to
197*ad30f8e7SGabor Kovesdan#   be used in text that is interchanged.
198*ad30f8e7SGabor Kovesdan#
199*ad30f8e7SGabor Kovesdan#   The problem is solved with the use of direction override characters
200*ad30f8e7SGabor Kovesdan#   and direction-dependent mappings. When mapping from Mac OS Hebrew
201*ad30f8e7SGabor Kovesdan#   to Unicode, we use direction overrides as necessary to force the
202*ad30f8e7SGabor Kovesdan#   direction of the resulting Unicode characters.
203*ad30f8e7SGabor Kovesdan#
204*ad30f8e7SGabor Kovesdan#   The required direction is indicated by a direction tag in the
205*ad30f8e7SGabor Kovesdan#   mappings. A tag of <LR> means the corresponding Unicode character
206*ad30f8e7SGabor Kovesdan#   must have a strong left-right context, and a tag of <RL> indicates
207*ad30f8e7SGabor Kovesdan#   a right-left context.
208*ad30f8e7SGabor Kovesdan#
209*ad30f8e7SGabor Kovesdan#   For example, the mapping of 0x2B is given as 0x002B; the
210*ad30f8e7SGabor Kovesdan#   mapping of 0xAB is given as 0x002B. If we map an isolated
211*ad30f8e7SGabor Kovesdan#   instance of 0x2B to Unicode, it should be mapped as follows (LRO
212*ad30f8e7SGabor Kovesdan#   indicates LEFT-RIGHT OVERRIDE, PDF indicates POP DIRECTION
213*ad30f8e7SGabor Kovesdan#   FORMATTING):
214*ad30f8e7SGabor Kovesdan#
215*ad30f8e7SGabor Kovesdan#     0x2B ->  0x202D (LRO) + 0x002B (PLUS SIGN) + 0x202C (PDF)
216*ad30f8e7SGabor Kovesdan#
217*ad30f8e7SGabor Kovesdan#   When mapping several characters in a row that require direction
218*ad30f8e7SGabor Kovesdan#   forcing, the overrides need only be used at the beginning and end.
219*ad30f8e7SGabor Kovesdan#   For example:
220*ad30f8e7SGabor Kovesdan#
221*ad30f8e7SGabor Kovesdan#     0x24 0x20 0x28 0x29 -> 0x202D 0x0024 0x0020 0x0028 0x0029 0x202C
222*ad30f8e7SGabor Kovesdan#
223*ad30f8e7SGabor Kovesdan#   If neutral characters that require direction forcing are already
224*ad30f8e7SGabor Kovesdan#   between strong-direction characters with matching directionality,
225*ad30f8e7SGabor Kovesdan#   then direction overrides need not be used. Direction overrides are
226*ad30f8e7SGabor Kovesdan#   always needed to map the right-left digits at 0xB0-0xB9.
227*ad30f8e7SGabor Kovesdan#
228*ad30f8e7SGabor Kovesdan#   When mapping from Unicode to Mac OS Hebrew, the Unicode
229*ad30f8e7SGabor Kovesdan#   bidirectional algorithm should be used to determine resolved
230*ad30f8e7SGabor Kovesdan#   direction of the Unicode characters. The mapping from Unicode to
231*ad30f8e7SGabor Kovesdan#   Mac OS Hebrew can then be disambiguated by the use of the resolved
232*ad30f8e7SGabor Kovesdan#   direction:
233*ad30f8e7SGabor Kovesdan#
234*ad30f8e7SGabor Kovesdan#     Unicode 0x002B -> Mac OS Hebrew 0x2B (if L) or 0xAB (if R)
235*ad30f8e7SGabor Kovesdan#
236*ad30f8e7SGabor Kovesdan#   However, this also means the direction override characters should
237*ad30f8e7SGabor Kovesdan#   be discarded when mapping from Unicode to Mac OS Hebrew (after
238*ad30f8e7SGabor Kovesdan#   they have been used to determine resolved direction), since the
239*ad30f8e7SGabor Kovesdan#   direction override information is carried by the code point itself.
240*ad30f8e7SGabor Kovesdan#
241*ad30f8e7SGabor Kovesdan#   Even when direction overrides are not needed for roundtrip
242*ad30f8e7SGabor Kovesdan#   fidelity, they are sometimes used when mapping Mac OS Hebrew
243*ad30f8e7SGabor Kovesdan#   characters to Unicode in order to achieve similar text layout with
244*ad30f8e7SGabor Kovesdan#   the resulting Unicode text. For example, the single Mac OS Hebrew
245*ad30f8e7SGabor Kovesdan#   ellipsis character has direction class right-left,and there is no
246*ad30f8e7SGabor Kovesdan#   left-right version. However, the Unicode HORIZONTAL ELLIPSIS
247*ad30f8e7SGabor Kovesdan#   character has direction class neutral (which means it may end up
248*ad30f8e7SGabor Kovesdan#   with a resolved direction of left-right if surrounded by left-right
249*ad30f8e7SGabor Kovesdan#   characters). When mapping the Mac OS Hebrew ellipsis to Unicode, it
250*ad30f8e7SGabor Kovesdan#   is surrounded with a direction override to help preserve proper
251*ad30f8e7SGabor Kovesdan#   text layout. The resolved direction is not needed or used when
252*ad30f8e7SGabor Kovesdan#   mapping the Unicode HORIZONTAL ELLIPSIS back to Mac OS Hebrew.
253*ad30f8e7SGabor Kovesdan#
254*ad30f8e7SGabor Kovesdan#   2. Use of corporate-zone Unicodes
255*ad30f8e7SGabor Kovesdan#
256*ad30f8e7SGabor Kovesdan#   The goals in the mappings provided here are:
257*ad30f8e7SGabor Kovesdan#   - Ensure roundtrip mapping from every character in the Mac OS
258*ad30f8e7SGabor Kovesdan#     Hebrew character set to Unicode and back
259*ad30f8e7SGabor Kovesdan#   - Use standard Unicode characters as much as possible, to
260*ad30f8e7SGabor Kovesdan#     maximize interchangeability of the resulting Unicode text.
261*ad30f8e7SGabor Kovesdan#     Whenever possible, avoid having content carried by private-use
262*ad30f8e7SGabor Kovesdan#     characters.
263*ad30f8e7SGabor Kovesdan#
264*ad30f8e7SGabor Kovesdan#   Some of the characters in the Mac OS Hebrew character set do not
265*ad30f8e7SGabor Kovesdan#   correspond to distinct, single Unicode characters. To map these
266*ad30f8e7SGabor Kovesdan#   and satisfy both goals above, we employ various strategies.
267*ad30f8e7SGabor Kovesdan#
268*ad30f8e7SGabor Kovesdan#   a) If possible, use private use characters in combination with
269*ad30f8e7SGabor Kovesdan#   standard Unicode characters to mark variants of the standard
270*ad30f8e7SGabor Kovesdan#   Unicode character.
271*ad30f8e7SGabor Kovesdan#
272*ad30f8e7SGabor Kovesdan#   Apple has defined a block of 32 corporate characters as "transcoding
273*ad30f8e7SGabor Kovesdan#   hints." These are used in combination with standard Unicode characters
274*ad30f8e7SGabor Kovesdan#   to force them to be treated in a special way for mapping to other
275*ad30f8e7SGabor Kovesdan#   encodings; they have no other effect. Sixteen of these transcoding
276*ad30f8e7SGabor Kovesdan#   hints are "grouping hints" - they indicate that the next 2-4 Unicode
277*ad30f8e7SGabor Kovesdan#   characters should be treated as a single entity for transcoding. The
278*ad30f8e7SGabor Kovesdan#   other sixteen transcoding hints are "variant tags" - they are like
279*ad30f8e7SGabor Kovesdan#   combining characters, and can follow a standard Unicode (or a sequence
280*ad30f8e7SGabor Kovesdan#   consisting of a base character and other combining characters) to
281*ad30f8e7SGabor Kovesdan#   cause it to be treated in a special way for transcoding. These always
282*ad30f8e7SGabor Kovesdan#   terminate a combining-character sequence.
283*ad30f8e7SGabor Kovesdan#
284*ad30f8e7SGabor Kovesdan#   Two transcoding hints are used in this mapping table: a grouping hint
285*ad30f8e7SGabor Kovesdan#   and a variant tag:
286*ad30f8e7SGabor Kovesdan#   hint:
287*ad30f8e7SGabor Kovesdan#     0xF86A  group next 2 characters, right-left directionality
288*ad30f8e7SGabor Kovesdan#     0xF87F  variant tag
289*ad30f8e7SGabor Kovesdan#
290*ad30f8e7SGabor Kovesdan#   In Mac OS Hebrew, 0xC0 is a ligature for lamed holam. This can also
291*ad30f8e7SGabor Kovesdan#   be represented in Mac OS Hebrew as 0xEC+0xDD, using separate
292*ad30f8e7SGabor Kovesdan#   characters for lamed and holam. The latter sequence is mapped to
293*ad30f8e7SGabor Kovesdan#   Unicode as 0x05DC+0x05B9, i.e. as the sequence HEBREW LETTER LAMED +
294*ad30f8e7SGabor Kovesdan#   HEBREW POINT HOLAM. We want to map the ligature 0xC0 using the same
295*ad30f8e7SGabor Kovesdan#   standard Unicode characters, but for round-trip fidelity we need to
296*ad30f8e7SGabor Kovesdan#   distinguish it from the mapping of the sequence 0xEC+0xDD. Thus for
297*ad30f8e7SGabor Kovesdan#   0xC0 we use a grouping hint, and map as follows:
298*ad30f8e7SGabor Kovesdan#
299*ad30f8e7SGabor Kovesdan#     0xC0 -> 0xF86A+0x05DC+0x05B9
300*ad30f8e7SGabor Kovesdan#
301*ad30f8e7SGabor Kovesdan#   The variant tag is used for "qamats qatan" to mark it as an alternate
302*ad30f8e7SGabor Kovesdan#   for HEBREW POINT QAMATS, as follows:
303*ad30f8e7SGabor Kovesdan#
304*ad30f8e7SGabor Kovesdan#     0xDE -> 0x05B8+0xF87F
305*ad30f8e7SGabor Kovesdan#
306*ad30f8e7SGabor Kovesdan#   b) Otherwise, use private use characters by themselves to map Mac OS
307*ad30f8e7SGabor Kovesdan#   Hebrew characters which  have no relationship to any standard Unicode
308*ad30f8e7SGabor Kovesdan#   character.
309*ad30f8e7SGabor Kovesdan#
310*ad30f8e7SGabor Kovesdan#   The following additional corporate zone Unicode characters are used
311*ad30f8e7SGabor Kovesdan#   for this purpose here (to map the obsolete "canorals", see above):
312*ad30f8e7SGabor Kovesdan#
313*ad30f8e7SGabor Kovesdan#     0xF89B  Hebrew canoral 1
314*ad30f8e7SGabor Kovesdan#     0xF89C  Hebrew canoral 2
315*ad30f8e7SGabor Kovesdan#     0xF89D  Hebrew canoral 3
316*ad30f8e7SGabor Kovesdan#     0xF89E  Hebrew canoral 4
317*ad30f8e7SGabor Kovesdan#
318*ad30f8e7SGabor Kovesdan#   3. Roundtrip considerations when mapping to decomposed Unicode
319*ad30f8e7SGabor Kovesdan#
320*ad30f8e7SGabor Kovesdan#   Both Mac OS Hebrew and Unicode provide multiple ways of representing
321*ad30f8e7SGabor Kovesdan#   certain letter-and-point combinations. For example, HEBREW LETTER
322*ad30f8e7SGabor Kovesdan#   VAV WITH HOLAM can be represented in Unicode as the single character
323*ad30f8e7SGabor Kovesdan#   0xFB4B or as the sequence 0x05D5 0x05B9; similarly, it can be
324*ad30f8e7SGabor Kovesdan#   represented in Mac OS Hebrew as 0xC7 or as the sequence 0xE5 0xDD.
325*ad30f8e7SGabor Kovesdan#   This leads to some roundtrip problems. First note that we have the
326*ad30f8e7SGabor Kovesdan#   following mappings without such problems:
327*ad30f8e7SGabor Kovesdan#
328*ad30f8e7SGabor Kovesdan#   Mac   standard                            decomp. of     reverse map
329*ad30f8e7SGabor Kovesdan#   OS    Unicode mapping                     std. mapping   of decomp.
330*ad30f8e7SGabor Kovesdan#   ----  ----------------------------------  -------------  -----------
331*ad30f8e7SGabor Kovesdan#   0xC6  0x05BC  ... POINT DAGESH OR MAPIQ   0x05BC (same)  0xC6
332*ad30f8e7SGabor Kovesdan#   0xE5  0x05D5  ... LETTER VAV              0x05D5 (same)  0xE5
333*ad30f8e7SGabor Kovesdan#   0xDD  0x05B9  ... POINT HOLAM             0x05B9 (same)  0xDD
334*ad30f8e7SGabor Kovesdan#
335*ad30f8e7SGabor Kovesdan#   However, those mappings above cause roundtrip problems for the
336*ad30f8e7SGabor Kovesdan#   the following mappings if they are decomposed:
337*ad30f8e7SGabor Kovesdan#
338*ad30f8e7SGabor Kovesdan#   Mac   standard                            decomp. of     reverse map
339*ad30f8e7SGabor Kovesdan#   OS    Unicode mapping                     std. mapping   of decomp.
340*ad30f8e7SGabor Kovesdan#   ----  ----------------------------------  -------------  -----------
341*ad30f8e7SGabor Kovesdan#   0xC7  0xFB4B  ... LETTER VAV WITH HOLAM   0x05D5 0x05B9  0xE5 0xDD
342*ad30f8e7SGabor Kovesdan#   0xC8  0xFB35  ... LETTER VAV WITH DAGESH  0x05D5 0x05BC  0xE5 0xC6
343*ad30f8e7SGabor Kovesdan#
344*ad30f8e7SGabor Kovesdan#   One solution is to use a grouping transcoding hint with the two
345*ad30f8e7SGabor Kovesdan#   decompositions above to mark the decomposed sequence for special
346*ad30f8e7SGabor Kovesdan#   treatment in transcoding. This yields the following mappings to
347*ad30f8e7SGabor Kovesdan#   decomposed Unicode:
348*ad30f8e7SGabor Kovesdan#
349*ad30f8e7SGabor Kovesdan#   Mac                                decomposed
350*ad30f8e7SGabor Kovesdan#   OS                                 Unicode mapping
351*ad30f8e7SGabor Kovesdan#   ----                               --------------------
352*ad30f8e7SGabor Kovesdan#   0xC7                               0xF86A 0x05D5 0x05B9
353*ad30f8e7SGabor Kovesdan#   0xC8                               0xF86A 0x05D5 0x05BC
354*ad30f8e7SGabor Kovesdan#
355*ad30f8e7SGabor Kovesdan# Details of mapping changes in each version:
356*ad30f8e7SGabor Kovesdan# -------------------------------------------
357*ad30f8e7SGabor Kovesdan#
358*ad30f8e7SGabor Kovesdan#   Changes from version b02 to version b03/c01:
359*ad30f8e7SGabor Kovesdan#
360*ad30f8e7SGabor Kovesdan#   - Stop specifying left-right context for digits 0x30-0x39, since the
361*ad30f8e7SGabor Kovesdan#     corresponding Unicodes 0x0030-0x0039 already have left-right
362*ad30f8e7SGabor Kovesdan#     directionality.
363*ad30f8e7SGabor Kovesdan#
364*ad30f8e7SGabor Kovesdan#   - Change mapping of 0x81 from 0xFB1F HEBREW LIGATURE YIDDISH YOD YOD
365*ad30f8e7SGabor Kovesdan#     PATAH to its canonical decomposition 0x05F2+0x05B7 to improve
366*ad30f8e7SGabor Kovesdan#     cross-platform compatibility (Windows doesn't handle 0xFB1F)
367*ad30f8e7SGabor Kovesdan#
368*ad30f8e7SGabor Kovesdan#   - Interchange the mappings of 0xA8 and 0xA9 to obtain the correct
369*ad30f8e7SGabor Kovesdan#     open/close behavior; they work differently than in Mac Arabic.
370*ad30f8e7SGabor Kovesdan#     The old mapping was
371*ad30f8e7SGabor Kovesdan#         0xA8 0x0028 # LEFT PARENTHESIS, right-left
372*ad30f8e7SGabor Kovesdan#         0xA9 0x0029 # RIGHT PARENTHESIS, right-left
373*ad30f8e7SGabor Kovesdan#     and the new mapping is
374*ad30f8e7SGabor Kovesdan#         0xA8 0x0029 # RIGHT PARENTHESIS, right-left
375*ad30f8e7SGabor Kovesdan#         0xA9 0x0028 # LEFT PARENTHESIS, right-left
376*ad30f8e7SGabor Kovesdan#
377*ad30f8e7SGabor Kovesdan#   Changes from version n01 to version n03:
378*ad30f8e7SGabor Kovesdan#
379*ad30f8e7SGabor Kovesdan#   - Change mapping for 0xC0 from single corporate character to
380*ad30f8e7SGabor Kovesdan#     grouping hint plus standard Unicodes
381*ad30f8e7SGabor Kovesdan#
382*ad30f8e7SGabor Kovesdan#   - Change mapping for 0xDE from single corporate character to
383*ad30f8e7SGabor Kovesdan#     standard Unicode plus variant tag
384*ad30f8e7SGabor Kovesdan#
385*ad30f8e7SGabor Kovesdan##################
386*ad30f8e7SGabor Kovesdan
387*ad30f8e7SGabor Kovesdan0x00 - 0x7F = 0x0000 -
388*ad30f8e7SGabor Kovesdan0x80 = 0x00C4	# LATIN CAPITAL LETTER A WITH DIAERESIS
389*ad30f8e7SGabor Kovesdan0x81 = 0xFB1F	# 0x05F2+0x05B7	# HEBREW LIGATURE YIDDISH YOD YOD PATAH
390*ad30f8e7SGabor Kovesdan0x82 = 0x00C7	# LATIN CAPITAL LETTER C WITH CEDILLA
391*ad30f8e7SGabor Kovesdan0x83 = 0x00C9	# LATIN CAPITAL LETTER E WITH ACUTE
392*ad30f8e7SGabor Kovesdan0x84 = 0x00D1	# LATIN CAPITAL LETTER N WITH TILDE
393*ad30f8e7SGabor Kovesdan0x85 = 0x00D6	# LATIN CAPITAL LETTER O WITH DIAERESIS
394*ad30f8e7SGabor Kovesdan0x86 = 0x00DC	# LATIN CAPITAL LETTER U WITH DIAERESIS
395*ad30f8e7SGabor Kovesdan0x87 = 0x00E1	# LATIN SMALL LETTER A WITH ACUTE
396*ad30f8e7SGabor Kovesdan0x88 = 0x00E0	# LATIN SMALL LETTER A WITH GRAVE
397*ad30f8e7SGabor Kovesdan0x89 = 0x00E2	# LATIN SMALL LETTER A WITH CIRCUMFLEX
398*ad30f8e7SGabor Kovesdan0x8A = 0x00E4	# LATIN SMALL LETTER A WITH DIAERESIS
399*ad30f8e7SGabor Kovesdan0x8B = 0x00E3	# LATIN SMALL LETTER A WITH TILDE
400*ad30f8e7SGabor Kovesdan0x8C = 0x00E5	# LATIN SMALL LETTER A WITH RING ABOVE
401*ad30f8e7SGabor Kovesdan0x8D = 0x00E7	# LATIN SMALL LETTER C WITH CEDILLA
402*ad30f8e7SGabor Kovesdan0x8E = 0x00E9	# LATIN SMALL LETTER E WITH ACUTE
403*ad30f8e7SGabor Kovesdan0x8F = 0x00E8	# LATIN SMALL LETTER E WITH GRAVE
404*ad30f8e7SGabor Kovesdan0x90 = 0x00EA	# LATIN SMALL LETTER E WITH CIRCUMFLEX
405*ad30f8e7SGabor Kovesdan0x91 = 0x00EB	# LATIN SMALL LETTER E WITH DIAERESIS
406*ad30f8e7SGabor Kovesdan0x92 = 0x00ED	# LATIN SMALL LETTER I WITH ACUTE
407*ad30f8e7SGabor Kovesdan0x93 = 0x00EC	# LATIN SMALL LETTER I WITH GRAVE
408*ad30f8e7SGabor Kovesdan0x94 = 0x00EE	# LATIN SMALL LETTER I WITH CIRCUMFLEX
409*ad30f8e7SGabor Kovesdan0x95 = 0x00EF	# LATIN SMALL LETTER I WITH DIAERESIS
410*ad30f8e7SGabor Kovesdan0x96 = 0x00F1	# LATIN SMALL LETTER N WITH TILDE
411*ad30f8e7SGabor Kovesdan0x97 = 0x00F3	# LATIN SMALL LETTER O WITH ACUTE
412*ad30f8e7SGabor Kovesdan0x98 = 0x00F2	# LATIN SMALL LETTER O WITH GRAVE
413*ad30f8e7SGabor Kovesdan0x99 = 0x00F4	# LATIN SMALL LETTER O WITH CIRCUMFLEX
414*ad30f8e7SGabor Kovesdan0x9A = 0x00F6	# LATIN SMALL LETTER O WITH DIAERESIS
415*ad30f8e7SGabor Kovesdan0x9B = 0x00F5	# LATIN SMALL LETTER O WITH TILDE
416*ad30f8e7SGabor Kovesdan0x9C = 0x00FA	# LATIN SMALL LETTER U WITH ACUTE
417*ad30f8e7SGabor Kovesdan0x9D = 0x00F9	# LATIN SMALL LETTER U WITH GRAVE
418*ad30f8e7SGabor Kovesdan0x9E = 0x00FB	# LATIN SMALL LETTER U WITH CIRCUMFLEX
419*ad30f8e7SGabor Kovesdan0x9F = 0x00FC	# LATIN SMALL LETTER U WITH DIAERESIS
420*ad30f8e7SGabor Kovesdan0xA0 = 0x0020	# SPACE, right-left
421*ad30f8e7SGabor Kovesdan0xA1 = 0x0021	# EXCLAMATION MARK, right-left
422*ad30f8e7SGabor Kovesdan0xA2 = 0x0022	# QUOTATION MARK, right-left
423*ad30f8e7SGabor Kovesdan0xA3 = 0x0023	# NUMBER SIGN, right-left
424*ad30f8e7SGabor Kovesdan0xA4 = 0x0024	# DOLLAR SIGN, right-left
425*ad30f8e7SGabor Kovesdan0xA5 = 0x0025	# PERCENT SIGN, right-left
426*ad30f8e7SGabor Kovesdan0xA6 = 0x20AA	# NEW SHEQEL SIGN
427*ad30f8e7SGabor Kovesdan0xA7 = 0x0027	# APOSTROPHE, right-left
428*ad30f8e7SGabor Kovesdan0xA8 = 0x0029	# RIGHT PARENTHESIS, right-left # close parenthesis
429*ad30f8e7SGabor Kovesdan0xA9 = 0x0028	# LEFT PARENTHESIS, right-left # open parenthesis
430*ad30f8e7SGabor Kovesdan0xAA = 0x002A	# ASTERISK, right-left
431*ad30f8e7SGabor Kovesdan0xAB = 0x002B	# PLUS SIGN, right-left
432*ad30f8e7SGabor Kovesdan0xAC = 0x002C	# COMMA, right-left
433*ad30f8e7SGabor Kovesdan0xAD = 0x002D	# HYPHEN-MINUS, right-left
434*ad30f8e7SGabor Kovesdan0xAE = 0x002E	# FULL STOP, right-left
435*ad30f8e7SGabor Kovesdan0xAF = 0x002F	# SOLIDUS, right-left
436*ad30f8e7SGabor Kovesdan0xB0 = 0x0030	# DIGIT ZERO, right-left (need override)
437*ad30f8e7SGabor Kovesdan0xB1 = 0x0031	# DIGIT ONE, right-left (need override)
438*ad30f8e7SGabor Kovesdan0xB2 = 0x0032	# DIGIT TWO, right-left (need override)
439*ad30f8e7SGabor Kovesdan0xB3 = 0x0033	# DIGIT THREE, right-left (need override)
440*ad30f8e7SGabor Kovesdan0xB4 = 0x0034	# DIGIT FOUR, right-left (need override)
441*ad30f8e7SGabor Kovesdan0xB5 = 0x0035	# DIGIT FIVE, right-left (need override)
442*ad30f8e7SGabor Kovesdan0xB6 = 0x0036	# DIGIT SIX, right-left (need override)
443*ad30f8e7SGabor Kovesdan0xB7 = 0x0037	# DIGIT SEVEN, right-left (need override)
444*ad30f8e7SGabor Kovesdan0xB8 = 0x0038	# DIGIT EIGHT, right-left (need override)
445*ad30f8e7SGabor Kovesdan0xB9 = 0x0039	# DIGIT NINE, right-left (need override)
446*ad30f8e7SGabor Kovesdan0xBA = 0x003A	# COLON, right-left
447*ad30f8e7SGabor Kovesdan0xBB = 0x003B	# SEMICOLON, right-left
448*ad30f8e7SGabor Kovesdan0xBC = 0x003C	# LESS-THAN SIGN, right-left
449*ad30f8e7SGabor Kovesdan0xBD = 0x003D	# EQUALS SIGN, right-left
450*ad30f8e7SGabor Kovesdan0xBE = 0x003E	# GREATER-THAN SIGN, right-left
451*ad30f8e7SGabor Kovesdan0xBF = 0x003F	# QUESTION MARK, right-left
452*ad30f8e7SGabor Kovesdan0xC0 = 0x05B9	# 0xF86A+0x05DC+0x05B9	# Hebrew ligature lamed holam
453*ad30f8e7SGabor Kovesdan0xC1 = 0x201E	# DOUBLE LOW-9 QUOTATION MARK, right-left
454*ad30f8e7SGabor Kovesdan0xC2 = 0xF89B	# Hebrew canoral 1
455*ad30f8e7SGabor Kovesdan0xC3 = 0xF89C	# Hebrew canoral 2
456*ad30f8e7SGabor Kovesdan0xC4 = 0xF89D	# Hebrew canoral 3
457*ad30f8e7SGabor Kovesdan0xC5 = 0xF89E	# Hebrew canoral 4
458*ad30f8e7SGabor Kovesdan0xC6 = 0x05BC	# HEBREW POINT DAGESH OR MAPIQ
459*ad30f8e7SGabor Kovesdan0xC7 = 0xFB4B	# HEBREW LETTER VAV WITH HOLAM
460*ad30f8e7SGabor Kovesdan0xC8 = 0xFB35	# HEBREW LETTER VAV WITH DAGESH
461*ad30f8e7SGabor Kovesdan0xC9 = 0x2026	# HORIZONTAL ELLIPSIS, right-left
462*ad30f8e7SGabor Kovesdan0xCA = 0x00A0	# NO-BREAK SPACE, right-left
463*ad30f8e7SGabor Kovesdan0xCB = 0x05B8	# HEBREW POINT QAMATS
464*ad30f8e7SGabor Kovesdan0xCC = 0x05B7	# HEBREW POINT PATAH
465*ad30f8e7SGabor Kovesdan0xCD = 0x05B5	# HEBREW POINT TSERE
466*ad30f8e7SGabor Kovesdan0xCE = 0x05B6	# HEBREW POINT SEGOL
467*ad30f8e7SGabor Kovesdan0xCF = 0x05B4	# HEBREW POINT HIRIQ
468*ad30f8e7SGabor Kovesdan0xD0 = 0x2013	# EN DASH, right-left
469*ad30f8e7SGabor Kovesdan0xD1 = 0x2014	# EM DASH, right-left
470*ad30f8e7SGabor Kovesdan0xD2 = 0x201C	# LEFT DOUBLE QUOTATION MARK, right-left
471*ad30f8e7SGabor Kovesdan0xD3 = 0x201D	# RIGHT DOUBLE QUOTATION MARK, right-left
472*ad30f8e7SGabor Kovesdan0xD4 = 0x2018	# LEFT SINGLE QUOTATION MARK, right-left
473*ad30f8e7SGabor Kovesdan0xD5 = 0x2019	# RIGHT SINGLE QUOTATION MARK, right-left
474*ad30f8e7SGabor Kovesdan0xD6 = 0xFB2A	# HEBREW LETTER SHIN WITH SHIN DOT
475*ad30f8e7SGabor Kovesdan0xD7 = 0xFB2B	# HEBREW LETTER SHIN WITH SIN DOT
476*ad30f8e7SGabor Kovesdan0xD8 = 0x05BF	# HEBREW POINT RAFE
477*ad30f8e7SGabor Kovesdan0xD9 = 0x05B0	# HEBREW POINT SHEVA
478*ad30f8e7SGabor Kovesdan0xDA = 0x05B2	# HEBREW POINT HATAF PATAH
479*ad30f8e7SGabor Kovesdan0xDB = 0x05B1	# HEBREW POINT HATAF SEGOL
480*ad30f8e7SGabor Kovesdan0xDC = 0x05BB	# HEBREW POINT QUBUTS
481*ad30f8e7SGabor Kovesdan0xDD = 0x05B9	# HEBREW POINT HOLAM
482*ad30f8e7SGabor Kovesdan0xDE = 0xF87F	# 0x05B8+0xF87F	# HEBREW POINT QAMATS, alternate form "qamats qatan"
483*ad30f8e7SGabor Kovesdan0xDF = 0x05B3	# HEBREW POINT HATAF QAMATS
484*ad30f8e7SGabor Kovesdan0xE0 = 0x05D0	# HEBREW LETTER ALEF
485*ad30f8e7SGabor Kovesdan0xE1 = 0x05D1	# HEBREW LETTER BET
486*ad30f8e7SGabor Kovesdan0xE2 = 0x05D2	# HEBREW LETTER GIMEL
487*ad30f8e7SGabor Kovesdan0xE3 = 0x05D3	# HEBREW LETTER DALET
488*ad30f8e7SGabor Kovesdan0xE4 = 0x05D4	# HEBREW LETTER HE
489*ad30f8e7SGabor Kovesdan0xE5 = 0x05D5	# HEBREW LETTER VAV
490*ad30f8e7SGabor Kovesdan0xE6 = 0x05D6	# HEBREW LETTER ZAYIN
491*ad30f8e7SGabor Kovesdan0xE7 = 0x05D7	# HEBREW LETTER HET
492*ad30f8e7SGabor Kovesdan0xE8 = 0x05D8	# HEBREW LETTER TET
493*ad30f8e7SGabor Kovesdan0xE9 = 0x05D9	# HEBREW LETTER YOD
494*ad30f8e7SGabor Kovesdan0xEA = 0x05DA	# HEBREW LETTER FINAL KAF
495*ad30f8e7SGabor Kovesdan0xEB = 0x05DB	# HEBREW LETTER KAF
496*ad30f8e7SGabor Kovesdan0xEC = 0x05DC	# HEBREW LETTER LAMED
497*ad30f8e7SGabor Kovesdan0xED = 0x05DD	# HEBREW LETTER FINAL MEM
498*ad30f8e7SGabor Kovesdan0xEE = 0x05DE	# HEBREW LETTER MEM
499*ad30f8e7SGabor Kovesdan0xEF = 0x05DF	# HEBREW LETTER FINAL NUN
500*ad30f8e7SGabor Kovesdan0xF0 = 0x05E0	# HEBREW LETTER NUN
501*ad30f8e7SGabor Kovesdan0xF1 = 0x05E1	# HEBREW LETTER SAMEKH
502*ad30f8e7SGabor Kovesdan0xF2 = 0x05E2	# HEBREW LETTER AYIN
503*ad30f8e7SGabor Kovesdan0xF3 = 0x05E3	# HEBREW LETTER FINAL PE
504*ad30f8e7SGabor Kovesdan0xF4 = 0x05E4	# HEBREW LETTER PE
505*ad30f8e7SGabor Kovesdan0xF5 = 0x05E5	# HEBREW LETTER FINAL TSADI
506*ad30f8e7SGabor Kovesdan0xF6 = 0x05E6	# HEBREW LETTER TSADI
507*ad30f8e7SGabor Kovesdan0xF7 = 0x05E7	# HEBREW LETTER QOF
508*ad30f8e7SGabor Kovesdan0xF8 = 0x05E8	# HEBREW LETTER RESH
509*ad30f8e7SGabor Kovesdan0xF9 = 0x05E9	# HEBREW LETTER SHIN
510*ad30f8e7SGabor Kovesdan0xFA = 0x05EA	# HEBREW LETTER TAV
511*ad30f8e7SGabor Kovesdan0xFB = 0x007D	# RIGHT CURLY BRACKET, right-left
512*ad30f8e7SGabor Kovesdan0xFC = 0x005D	# RIGHT SQUARE BRACKET, right-left
513*ad30f8e7SGabor Kovesdan0xFD = 0x007B	# LEFT CURLY BRACKET, right-left
514*ad30f8e7SGabor Kovesdan0xFE = 0x005B	# LEFT SQUARE BRACKET, right-left
515*ad30f8e7SGabor Kovesdan0xFF = 0x007C	# VERTICAL LINE, right-left
516*ad30f8e7SGabor KovesdanEND_MAP
517