CharacterEncoderImplementations__MAC_Farsi.st
author Claus Gittinger <cg@exept.de>
Mon, 08 Mar 2004 18:09:58 +0100
changeset 8114 05274a80fcc4
parent 8081 b468050174a9
child 8148 dbf64e3142d9
permissions -rw-r--r--
separated implementation into dynamically (lazy) loaded classes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8081
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:libbasic' }"
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ NameSpace: CharacterEncoderImplementations }"
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
SingleByteEncoder subclass:#MAC_Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	instanceVariableNames:''
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	classVariableNames:''
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	poolDictionaries:''
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	category:'Collections-Text-Encodings'
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
!MAC_Farsi class methodsFor:'mapping'!
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
mapFileURL1_relativePathName
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
    ^ 'VENDORS/APPLE/FARSI.TXT'
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
!
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
mapping
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
"
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
# From: http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/FARSI.TXT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
#=======================================================================
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
#   File name:  FARSI.TXT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
#   Contents:   Map (external version) from Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
#               character set to Unicode 2.1 through Unicode 3.2.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
#   Copyright:  (c) 1997-2002 by Apple Computer, Inc., all rights
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
#               reserved.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
#   Contact:    charsets@apple.com
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
#   Changes:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
#      b3,c1 2002-Dec-19    Add comments about character display and
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
#                           direction overrides. Update URLs, notes.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
#                           Matches internal utom<b3>.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
#       b02  1999-Sep-22    Update contact e-mail address. Matches
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
#                           internal utom<b1>, ufrm<b1>, and Text
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
#                           Encoding Converter version 1.5.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
#       n04  1998-Feb-05    Show required Unicode character
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
#                           directionality in a different way. Matches
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
#                           internal utom<n3>, ufrm<n9>, and Text
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
#                           Encoding Converter version 1.3. Update
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
#                           header comments; include information on
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
#                           loose mapping of digits, and changes to
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
#                           mapping for the TrueType variant.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
#       n01  1997-Jul-17    First version. Matches internal utom<n1>,
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
#                           ufrm<n2>.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
# Standard header:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
# ----------------
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
#   Apple, the Apple logo, and Macintosh are trademarks of Apple
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
#   Computer, Inc., registered in the United States and other countries.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
#   Unicode is a trademark of Unicode Inc. For the sake of brevity,
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
#   throughout this document, 'Macintosh' can be used to refer to
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
#   Macintosh computers and 'Unicode' can be used to refer to the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
#   Unicode standard.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
#   Apple makes no warranty or representation, either express or
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
#   implied, with respect to these tables, their quality, accuracy, or
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
#   fitness for a particular purpose. In no event will Apple be liable
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
#   for direct, indirect, special, incidental, or consequential damages 
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
#   resulting from any defect or inaccuracy in this document or the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
#   accompanying tables.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
#   These mapping tables and character lists are subject to change.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
#   The latest tables should be available from the following:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
#   <http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/>
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
#   For general information about Mac OS encodings and these mapping
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
#   tables, see the file 'README.TXT'.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
# Format:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
# -------
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
#   Three tab-separated columns;
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
#   '#' begins a comment which continues to the end of the line.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
#     Column #1 is the Mac OS Farsi code (in hex as 0xNN)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
#     Column #2 is the corresponding Unicode (in hex as 0xNNNN),
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
#       possibly preceded by a tag indicating required directionality
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
#       (i.e. <LR>+0xNNNN or <RL>+0xNNNN).
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
#     Column #3 is a comment containing the Unicode name.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
#   The entries are in Mac OS Farsi code order.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
#   Control character mappings are not shown in this table, following
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
#   the conventions of the standard UTC mapping tables. However, the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
#   Mac OS Roman character set uses the standard control characters at
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
#   0x00-0x1F and 0x7F.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
# Notes on Mac OS Farsi:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
# ----------------------
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
#   1. General
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
#   The Mac OS Farsi character set is based on the Mac OS Arabic
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
#   character set. The main difference is in the right-to-left digits
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
#   0xB0-0xB9: For Mac OS Arabic these correspond to right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
#   versions of the Unicode ARABIC-INDIC DIGITs 0660-0669; for
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
#   Mac OS Farsi these correspond to right-left versions of the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
#   Unicode EXTENDED ARABIC-INDIC DIGITs 06F0-06F9. The other
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
#   difference is in the nature of the font variants.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
#   For more information, see the comments in the mapping table for
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
#   Mac OS Arabic.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
#   Mac OS Farsi characters 0xEB-0xF2 are non-spacing/combining marks.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
#   2. Directional characters and roundtrip fidelity
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
#   The Mac OS Arabic character set (on which Mac OS Farsi is based)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
#   was developed in 1986-1987. At that time the bidirectional line
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
#   layout algorithm used in the Mac OS Arabic system was fairly simple;
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
#   it used only a few direction classes (instead of the 19 now used in
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
#   the Unicode bidirectional algorithm). In order to permit users to
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
#   handle some tricky layout problems, certain punctuation and symbol
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
#   characters were encoded twice, one with a left-right direction
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
#   attribute and the other with a right-left direction attribute. This
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
#   is the case in Mac OS Farsi too.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
#   For example, plus sign is encoded at 0x2B with a left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
#   attribute, and at 0xAB with a right-left attribute. However, there
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
#   is only one PLUS SIGN character in Unicode. This leads to some
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
#   interesting problems when mapping between Mac OS Farsi and Unicode;
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
#   see below.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
#   A related problem is that even when a particular character is
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
#   encoded only once in Mac OS Farsi, it may have a different
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
#   direction attribute than the corresponding Unicode character.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
#   For example, the Mac OS Farsi character at 0x93 is HORIZONTAL
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
#   ELLIPSIS with strong right-left direction. However, the Unicode
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
#   character HORIZONTAL ELLIPSIS has direction class neutral.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
#   3. Behavior of ASCII-range numbers in WorldScript
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
#   Mac OS Farsi also has two sets of digit codes.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
#   The digits at 0x30-0x39 may be displayed using either European
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
#   digit forms or Persian digit forms, depending on context. If there
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
#   is a 'strong European' character such as a Latin letter on either
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
#   side of a sequence consisting of digits 0x30-0x39 and possibly comma
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
#   0x2C or period 0x2E, then the characters will be displayed using
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
#   European forms (This will happen even if there are neutral characters
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
#   between the digits and the strong European character). Otherwise, the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
#   digits will be displayed using Persian forms, the comma will be
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
#   displayed as Arabic thousands separator, and the period as Arabic
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
#   decimal separator. In any case, 0x2C, 0x2E, and 0x30-0x39 are always
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
#   left-right.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
#   The digits at 0xB0-0xB9 are always displayed using Persian digit
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
#   shapes, and moreover, these digits always have strong right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
#   directionality. These are mainly intended for special layout
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
#   purposes such as part numbers, etc.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
#   4. Font variants
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
#   The table in this file gives the Unicode mappings for the standard
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
#   Mac OS Farsi encoding. This encoding is supported by the Tehran font
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
#   (the system font for Farsi), and is the encoding supported by the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
#   text processing utilities. However, the other Farsi fonts actually
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
#   implement a somewhat different encoding; this affects nine code
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
#   points including 0xAA and 0xC0 (which are also affected by font
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
#   variants in Mac OS Arabic). For these nine code points the standard
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
#   Mac OS Farsi encoding has the following mappings:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
#       0x8B -> 0x06BA ARABIC LETTER NOON GHUNNA (Urdu)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
#       0xA4 -> <RL>+0x0024 DOLLAR SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
#       0xAA -> <RL>+0x002A ASTERISK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
#       0xC0 -> <RL>+0x274A EIGHT TEARDROP-SPOKED PROPELLER ASTERISK,
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
#               right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
#       0xF4 -> 0x0679 ARABIC LETTER TTEH (Urdu)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
#       0xF7 -> 0x06A4 ARABIC LETTER VEH (for transliteration)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
#       0xF9 -> 0x0688 ARABIC LETTER DDAL (Urdu)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
#       0xFA -> 0x0691 ARABIC LETTER RREH (Urdu)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
#       0xFF -> 0x06D2 ARABIC LETTER YEH BARREE (Urdu)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
#   The TrueType variant is used for the Farsi TrueType fonts: Ashfahan,
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
#   Amir, Kamran, Mashad, NadeemFarsi. It differs from the standard
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
#   variant in the following ways:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
#       0x8B -> 0xF882 Arabic ligature 'peace on him' (corporate char.)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
#       0xA4 -> 0xFDFC RIAL SIGN (added in Unicode 3.2)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
#       0xAA -> <RL>+0x00D7 MULTIPLICATION SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
#       0xC0 -> <RL>+0x002A ASTERISK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
#       0xF4 -> <RL>+0x00B0 DEGREE SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
#       0xF7 -> 0xFDFA ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
#       0xF9 -> <RL>+0x25CF BLACK CIRCLE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
#       0xFA -> <RL>+0x25A0 BLACK SQUARE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
#       0xFF -> <RL>+0x25B2 BLACK UP-POINTING TRIANGLE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
# Unicode mapping issues and notes:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
# ---------------------------------
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
#   1. Matching the direction of Mac OS Farsi characters
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
#   When Mac OS Farsi encodes a character twice but with different
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
#   direction attributes for the two code points - as in the case of
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
#   plus sign mentioned above - we need a way to map both Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
#   code points to Unicode and back again without loss of information.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
#   With the plus sign, for example, mapping one of the Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
#   characters to a code in the Unicode corporate use zone is
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
#   undesirable, since both of the plus sign characters are likely to
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
#   be used in text that is interchanged.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
#   The problem is solved with the use of direction override characters
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
#   and direction-dependent mappings. When mapping from Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
#   to Unicode, we use direction overrides as necessary to force the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
#   direction of the resulting Unicode characters.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
#   The required direction is indicated by a direction tag in the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
#   mappings. A tag of <LR> means the corresponding Unicode character
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
#   must have a strong left-right context, and a tag of <RL> indicates
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
#   a right-left context.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
#   For example, the mapping of 0x2B is given as <LR>+0x002B; the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
#   mapping of 0xAB is given as <RL>+0x002B. If we map an isolated
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
#   instance of 0x2B to Unicode, it should be mapped as follows (LRO
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
#   indicates LEFT-RIGHT OVERRIDE, PDF indicates POP DIRECTION
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
#   FORMATTING):
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
#     0x2B ->  0x202D (LRO) + 0x002B (PLUS SIGN) + 0x202C (PDF)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
#   When mapping several characters in a row that require direction
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
#   forcing, the overrides need only be used at the beginning and end.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
#   For example:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
#     0x24 0x20 0x28 0x29 -> 0x202D 0x0024 0x0020 0x0028 0x0029 0x202C
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
#   If neutral characters that require direction forcing are already
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
#   between strong-direction characters with matching directionality,
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
#   then direction overrides need not be used. Direction overrides are
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
#   always needed to map the right-left digits at 0xB0-0xB9.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
#   When mapping from Unicode to Mac OS Farsi, the Unicode
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
#   bidirectional algorithm should be used to determine resolved
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
#   direction of the Unicode characters. The mapping from Unicode to
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
#   Mac OS Farsi can then be disambiguated by the use of the resolved
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
#   direction:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
#     Unicode 0x002B -> Mac OS Farsi 0x2B (if L) or 0xAB (if R)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
#   However, this also means the direction override characters should
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
#   be discarded when mapping from Unicode to Mac OS Farsi (after
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
#   they have been used to determine resolved direction), since the
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
#   direction override information is carried by the code point itself.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
#   Even when direction overrides are not needed for roundtrip
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
#   fidelity, they are sometimes used when mapping Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
#   characters to Unicode in order to achieve similar text layout with
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
#   the resulting Unicode text. For example, the single Mac OS Farsi
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
#   ellipsis character has direction class right-left,and there is no
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
#   left-right version. However, the Unicode HORIZONTAL ELLIPSIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
#   character has direction class neutral (which means it may end up
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
#   with a resolved direction of left-right if surrounded by left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
#   characters). When mapping the Mac OS Farsi ellipsis to Unicode, it
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
#   is surrounded with a direction override to help preserve proper
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
#   text layout. The resolved direction is not needed or used when
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
#   mapping the Unicode HORIZONTAL ELLIPSIS back to Mac OS Farsi.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
#   2. Mapping the Mac OS Farsi digits
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
#   The main table below contains mappings that should be used when
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
#   strict round-trip fidelity is required. However, for numeric
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
#   values, the mappings in that table will produce Unicode characters
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
#   that may appear different than the Mac OS Farsi text displayed on
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
#   a Mac OS system using WorldScript. This is because WorldScript
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
#   uses context-dependent display for the 0x30-0x39 digits.
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
#   If roundtrip fidelity is not required, then the following
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
#   alternate mappings should be used when a sequence of 0x30-0x39
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
#   digits - possibly including 0x2C and 0x2E - occurs in an Arabic
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
#   context (that is, when the first 'strong' character on either side
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
#   of the digit sequence is Arabic, or there is no strong character):
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
#     0x2C      0x066C  # ARABIC THOUSANDS SEPARATOR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
#     0x2E      0x066B  # ARABIC DECIMAL SEPARATOR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
#     0x30      0x06F0  # EXTENDED ARABIC-INDIC DIGIT ZERO
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
#     0x31      0x06F1  # EXTENDED ARABIC-INDIC DIGIT ONE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
#     0x32      0x06F2  # EXTENDED ARABIC-INDIC DIGIT TWO
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
#     0x33      0x06F3  # EXTENDED ARABIC-INDIC DIGIT THREE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
#     0x34      0x06F4  # EXTENDED ARABIC-INDIC DIGIT FOUR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
#     0x35      0x06F5  # EXTENDED ARABIC-INDIC DIGIT FIVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
#     0x36      0x06F6  # EXTENDED ARABIC-INDIC DIGIT SIX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
#     0x37      0x06F7  # EXTENDED ARABIC-INDIC DIGIT SEVEN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
#     0x38      0x06F8  # EXTENDED ARABIC-INDIC DIGIT EIGHT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
#     0x39      0x06F9  # EXTENDED ARABIC-INDIC DIGIT NINE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
#   3. Use of corporate-zone Unicodes (mapping the TrueType variant)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
#   The following corporate zone Unicode character is used in this
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
#   mapping:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
#     0xF882  Arabic ligature 'peace on him'
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
# Details of mapping changes in each version:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
# -------------------------------------------
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
#   Changes from version b02 to version b03/c01:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
#   - Update mapping of 0xA4 in TrueType variant to use new Unicode
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
#     character U+FDFC RIAL SIGN addded for Unicode 3.2
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
#   Changes from version n01 to version n04:
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
#   - Change mapping of 0xA4 in TrueType variant (just described in
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
#     header comment) from single corporate character to use
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
#     grouping hint
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
##################
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
0x20    <LR>+0x0020     # SPACE, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
0x21    <LR>+0x0021     # EXCLAMATION MARK, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
0x22    <LR>+0x0022     # QUOTATION MARK, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
0x23    <LR>+0x0023     # NUMBER SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
0x24    <LR>+0x0024     # DOLLAR SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
0x25    <LR>+0x0025     # PERCENT SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
0x26    <LR>+0x0026     # AMPERSAND, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
0x27    <LR>+0x0027     # APOSTROPHE, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
0x28    <LR>+0x0028     # LEFT PARENTHESIS, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
0x29    <LR>+0x0029     # RIGHT PARENTHESIS, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
0x2A    <LR>+0x002A     # ASTERISK, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
0x2B    <LR>+0x002B     # PLUS SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
0x2C    <LR>+0x002C     # COMMA, left-right; in Arabic-script context, displayed as 0x066C ARABIC THOUSANDS SEPARATOR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
0x2D    <LR>+0x002D     # HYPHEN-MINUS, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
0x2E    <LR>+0x002E     # FULL STOP, left-right; in Arabic-script context, displayed as 0x066B ARABIC DECIMAL SEPARATOR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
0x2F    <LR>+0x002F     # SOLIDUS, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
0x30    0x0030  # DIGIT ZERO;  in Arabic-script context, displayed as 0x06F0 EXTENDED ARABIC-INDIC DIGIT ZERO
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
0x31    0x0031  # DIGIT ONE;   in Arabic-script context, displayed as 0x06F1 EXTENDED ARABIC-INDIC DIGIT ONE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
0x32    0x0032  # DIGIT TWO;   in Arabic-script context, displayed as 0x06F2 EXTENDED ARABIC-INDIC DIGIT TWO
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
0x33    0x0033  # DIGIT THREE; in Arabic-script context, displayed as 0x06F3 EXTENDED ARABIC-INDIC DIGIT THREE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
0x34    0x0034  # DIGIT FOUR;  in Arabic-script context, displayed as 0x06F4 EXTENDED ARABIC-INDIC DIGIT FOUR
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
0x35    0x0035  # DIGIT FIVE;  in Arabic-script context, displayed as 0x06F5 EXTENDED ARABIC-INDIC DIGIT FIVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
0x36    0x0036  # DIGIT SIX;   in Arabic-script context, displayed as 0x06F6 EXTENDED ARABIC-INDIC DIGIT SIX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
0x37    0x0037  # DIGIT SEVEN; in Arabic-script context, displayed as 0x06F7 EXTENDED ARABIC-INDIC DIGIT SEVEN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
0x38    0x0038  # DIGIT EIGHT; in Arabic-script context, displayed as 0x06F8 EXTENDED ARABIC-INDIC DIGIT EIGHT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
0x39    0x0039  # DIGIT NINE;  in Arabic-script context, displayed as 0x06F9 EXTENDED ARABIC-INDIC DIGIT NINE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
0x3A    <LR>+0x003A     # COLON, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
0x3B    <LR>+0x003B     # SEMICOLON, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
0x3C    <LR>+0x003C     # LESS-THAN SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
0x3D    <LR>+0x003D     # EQUALS SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
0x3E    <LR>+0x003E     # GREATER-THAN SIGN, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
0x3F    <LR>+0x003F     # QUESTION MARK, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
0x40    0x0040  # COMMERCIAL AT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
0x41    0x0041  # LATIN CAPITAL LETTER A
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
0x42    0x0042  # LATIN CAPITAL LETTER B
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
0x43    0x0043  # LATIN CAPITAL LETTER C
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
0x44    0x0044  # LATIN CAPITAL LETTER D
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
0x45    0x0045  # LATIN CAPITAL LETTER E
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
0x46    0x0046  # LATIN CAPITAL LETTER F
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
0x47    0x0047  # LATIN CAPITAL LETTER G
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
0x48    0x0048  # LATIN CAPITAL LETTER H
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
0x49    0x0049  # LATIN CAPITAL LETTER I
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
0x4A    0x004A  # LATIN CAPITAL LETTER J
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
0x4B    0x004B  # LATIN CAPITAL LETTER K
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
0x4C    0x004C  # LATIN CAPITAL LETTER L
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
0x4D    0x004D  # LATIN CAPITAL LETTER M
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
0x4E    0x004E  # LATIN CAPITAL LETTER N
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
0x4F    0x004F  # LATIN CAPITAL LETTER O
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
0x50    0x0050  # LATIN CAPITAL LETTER P
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
0x51    0x0051  # LATIN CAPITAL LETTER Q
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
0x52    0x0052  # LATIN CAPITAL LETTER R
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
0x53    0x0053  # LATIN CAPITAL LETTER S
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
0x54    0x0054  # LATIN CAPITAL LETTER T
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
0x55    0x0055  # LATIN CAPITAL LETTER U
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
0x56    0x0056  # LATIN CAPITAL LETTER V
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
0x57    0x0057  # LATIN CAPITAL LETTER W
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
0x58    0x0058  # LATIN CAPITAL LETTER X
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
0x59    0x0059  # LATIN CAPITAL LETTER Y
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
0x5A    0x005A  # LATIN CAPITAL LETTER Z
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
0x5B    <LR>+0x005B     # LEFT SQUARE BRACKET, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
0x5C    <LR>+0x005C     # REVERSE SOLIDUS, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
0x5D    <LR>+0x005D     # RIGHT SQUARE BRACKET, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
0x5E    <LR>+0x005E     # CIRCUMFLEX ACCENT, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
0x5F    <LR>+0x005F     # LOW LINE, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
0x60    0x0060  # GRAVE ACCENT
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
0x61    0x0061  # LATIN SMALL LETTER A
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
0x62    0x0062  # LATIN SMALL LETTER B
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
0x63    0x0063  # LATIN SMALL LETTER C
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
0x64    0x0064  # LATIN SMALL LETTER D
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
0x65    0x0065  # LATIN SMALL LETTER E
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
0x66    0x0066  # LATIN SMALL LETTER F
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
0x67    0x0067  # LATIN SMALL LETTER G
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
0x68    0x0068  # LATIN SMALL LETTER H
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
0x69    0x0069  # LATIN SMALL LETTER I
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
0x6A    0x006A  # LATIN SMALL LETTER J
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
0x6B    0x006B  # LATIN SMALL LETTER K
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
0x6C    0x006C  # LATIN SMALL LETTER L
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
0x6D    0x006D  # LATIN SMALL LETTER M
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
0x6E    0x006E  # LATIN SMALL LETTER N
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
0x6F    0x006F  # LATIN SMALL LETTER O
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
0x70    0x0070  # LATIN SMALL LETTER P
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
0x71    0x0071  # LATIN SMALL LETTER Q
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
0x72    0x0072  # LATIN SMALL LETTER R
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
0x73    0x0073  # LATIN SMALL LETTER S
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
0x74    0x0074  # LATIN SMALL LETTER T
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
0x75    0x0075  # LATIN SMALL LETTER U
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
0x76    0x0076  # LATIN SMALL LETTER V
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
0x77    0x0077  # LATIN SMALL LETTER W
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
0x78    0x0078  # LATIN SMALL LETTER X
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
0x79    0x0079  # LATIN SMALL LETTER Y
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
0x7A    0x007A  # LATIN SMALL LETTER Z
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
0x7B    <LR>+0x007B     # LEFT CURLY BRACKET, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
0x7C    <LR>+0x007C     # VERTICAL LINE, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
0x7D    <LR>+0x007D     # RIGHT CURLY BRACKET, left-right
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
0x7E    0x007E  # TILDE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
#
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
0x80    0x00C4  # LATIN CAPITAL LETTER A WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
0x81    <RL>+0x00A0     # NO-BREAK SPACE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
0x82    0x00C7  # LATIN CAPITAL LETTER C WITH CEDILLA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
0x83    0x00C9  # LATIN CAPITAL LETTER E WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
0x84    0x00D1  # LATIN CAPITAL LETTER N WITH TILDE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
0x85    0x00D6  # LATIN CAPITAL LETTER O WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
0x86    0x00DC  # LATIN CAPITAL LETTER U WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
0x87    0x00E1  # LATIN SMALL LETTER A WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
0x88    0x00E0  # LATIN SMALL LETTER A WITH GRAVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
0x89    0x00E2  # LATIN SMALL LETTER A WITH CIRCUMFLEX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
0x8A    0x00E4  # LATIN SMALL LETTER A WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
0x8B    0x06BA  # ARABIC LETTER NOON GHUNNA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
0x8C    <RL>+0x00AB     # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
0x8D    0x00E7  # LATIN SMALL LETTER C WITH CEDILLA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
0x8E    0x00E9  # LATIN SMALL LETTER E WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
0x8F    0x00E8  # LATIN SMALL LETTER E WITH GRAVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
0x90    0x00EA  # LATIN SMALL LETTER E WITH CIRCUMFLEX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
0x91    0x00EB  # LATIN SMALL LETTER E WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
0x92    0x00ED  # LATIN SMALL LETTER I WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
0x93    <RL>+0x2026     # HORIZONTAL ELLIPSIS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
0x94    0x00EE  # LATIN SMALL LETTER I WITH CIRCUMFLEX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
0x95    0x00EF  # LATIN SMALL LETTER I WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
0x96    0x00F1  # LATIN SMALL LETTER N WITH TILDE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
0x97    0x00F3  # LATIN SMALL LETTER O WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
0x98    <RL>+0x00BB     # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
0x99    0x00F4  # LATIN SMALL LETTER O WITH CIRCUMFLEX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
0x9A    0x00F6  # LATIN SMALL LETTER O WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
0x9B    <RL>+0x00F7     # DIVISION SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
0x9C    0x00FA  # LATIN SMALL LETTER U WITH ACUTE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
0x9D    0x00F9  # LATIN SMALL LETTER U WITH GRAVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
0x9E    0x00FB  # LATIN SMALL LETTER U WITH CIRCUMFLEX
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
0x9F    0x00FC  # LATIN SMALL LETTER U WITH DIAERESIS
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
0xA0    <RL>+0x0020     # SPACE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
0xA1    <RL>+0x0021     # EXCLAMATION MARK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
0xA2    <RL>+0x0022     # QUOTATION MARK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
0xA3    <RL>+0x0023     # NUMBER SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
0xA4    <RL>+0x0024     # DOLLAR SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
0xA5    0x066A  # ARABIC PERCENT SIGN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
0xA6    <RL>+0x0026     # AMPERSAND, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
0xA7    <RL>+0x0027     # APOSTROPHE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
0xA8    <RL>+0x0028     # LEFT PARENTHESIS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
0xA9    <RL>+0x0029     # RIGHT PARENTHESIS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
0xAA    <RL>+0x002A     # ASTERISK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
0xAB    <RL>+0x002B     # PLUS SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
0xAC    0x060C  # ARABIC COMMA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
0xAD    <RL>+0x002D     # HYPHEN-MINUS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
0xAE    <RL>+0x002E     # FULL STOP, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
0xAF    <RL>+0x002F     # SOLIDUS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
0xB0    <RL>+0x06F0     # EXTENDED ARABIC-INDIC DIGIT ZERO, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
0xB1    <RL>+0x06F1     # EXTENDED ARABIC-INDIC DIGIT ONE, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
0xB2    <RL>+0x06F2     # EXTENDED ARABIC-INDIC DIGIT TWO, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
0xB3    <RL>+0x06F3     # EXTENDED ARABIC-INDIC DIGIT THREE, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
0xB4    <RL>+0x06F4     # EXTENDED ARABIC-INDIC DIGIT FOUR, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
0xB5    <RL>+0x06F5     # EXTENDED ARABIC-INDIC DIGIT FIVE, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
0xB6    <RL>+0x06F6     # EXTENDED ARABIC-INDIC DIGIT SIX, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
0xB7    <RL>+0x06F7     # EXTENDED ARABIC-INDIC DIGIT SEVEN, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
0xB8    <RL>+0x06F8     # EXTENDED ARABIC-INDIC DIGIT EIGHT, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
0xB9    <RL>+0x06F9     # EXTENDED ARABIC-INDIC DIGIT NINE, right-left (need override)
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
0xBA    <RL>+0x003A     # COLON, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
0xBB    0x061B  # ARABIC SEMICOLON
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
0xBC    <RL>+0x003C     # LESS-THAN SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
0xBD    <RL>+0x003D     # EQUALS SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
0xBE    <RL>+0x003E     # GREATER-THAN SIGN, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
0xBF    0x061F  # ARABIC QUESTION MARK
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
0xC0    <RL>+0x274A     # EIGHT TEARDROP-SPOKED PROPELLER ASTERISK, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
0xC1    0x0621  # ARABIC LETTER HAMZA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
0xC2    0x0622  # ARABIC LETTER ALEF WITH MADDA ABOVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
0xC3    0x0623  # ARABIC LETTER ALEF WITH HAMZA ABOVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
0xC4    0x0624  # ARABIC LETTER WAW WITH HAMZA ABOVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
0xC5    0x0625  # ARABIC LETTER ALEF WITH HAMZA BELOW
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
0xC6    0x0626  # ARABIC LETTER YEH WITH HAMZA ABOVE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
0xC7    0x0627  # ARABIC LETTER ALEF
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
0xC8    0x0628  # ARABIC LETTER BEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
0xC9    0x0629  # ARABIC LETTER TEH MARBUTA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
0xCA    0x062A  # ARABIC LETTER TEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
0xCB    0x062B  # ARABIC LETTER THEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
0xCC    0x062C  # ARABIC LETTER JEEM
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
0xCD    0x062D  # ARABIC LETTER HAH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
0xCE    0x062E  # ARABIC LETTER KHAH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
0xCF    0x062F  # ARABIC LETTER DAL
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
0xD0    0x0630  # ARABIC LETTER THAL
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
0xD1    0x0631  # ARABIC LETTER REH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
0xD2    0x0632  # ARABIC LETTER ZAIN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
0xD3    0x0633  # ARABIC LETTER SEEN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
0xD4    0x0634  # ARABIC LETTER SHEEN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
0xD5    0x0635  # ARABIC LETTER SAD
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
0xD6    0x0636  # ARABIC LETTER DAD
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
0xD7    0x0637  # ARABIC LETTER TAH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
0xD8    0x0638  # ARABIC LETTER ZAH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
0xD9    0x0639  # ARABIC LETTER AIN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
0xDA    0x063A  # ARABIC LETTER GHAIN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
0xDB    <RL>+0x005B     # LEFT SQUARE BRACKET, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
0xDC    <RL>+0x005C     # REVERSE SOLIDUS, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
0xDD    <RL>+0x005D     # RIGHT SQUARE BRACKET, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
0xDE    <RL>+0x005E     # CIRCUMFLEX ACCENT, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
0xDF    <RL>+0x005F     # LOW LINE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
0xE0    0x0640  # ARABIC TATWEEL
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
0xE1    0x0641  # ARABIC LETTER FEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
0xE2    0x0642  # ARABIC LETTER QAF
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
0xE3    0x0643  # ARABIC LETTER KAF
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
0xE4    0x0644  # ARABIC LETTER LAM
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
0xE5    0x0645  # ARABIC LETTER MEEM
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
0xE6    0x0646  # ARABIC LETTER NOON
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
0xE7    0x0647  # ARABIC LETTER HEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
0xE8    0x0648  # ARABIC LETTER WAW
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
0xE9    0x0649  # ARABIC LETTER ALEF MAKSURA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
0xEA    0x064A  # ARABIC LETTER YEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
0xEB    0x064B  # ARABIC FATHATAN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
0xEC    0x064C  # ARABIC DAMMATAN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
0xED    0x064D  # ARABIC KASRATAN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
0xEE    0x064E  # ARABIC FATHA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
0xEF    0x064F  # ARABIC DAMMA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
0xF0    0x0650  # ARABIC KASRA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
0xF1    0x0651  # ARABIC SHADDA
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
0xF2    0x0652  # ARABIC SUKUN
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
0xF3    0x067E  # ARABIC LETTER PEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
0xF4    0x0679  # ARABIC LETTER TTEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
0xF5    0x0686  # ARABIC LETTER TCHEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
0xF6    0x06D5  # ARABIC LETTER AE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
0xF7    0x06A4  # ARABIC LETTER VEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
0xF8    0x06AF  # ARABIC LETTER GAF
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
0xF9    0x0688  # ARABIC LETTER DDAL
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
0xFA    0x0691  # ARABIC LETTER RREH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
0xFB    <RL>+0x007B     # LEFT CURLY BRACKET, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
0xFC    <RL>+0x007C     # VERTICAL LINE, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
0xFD    <RL>+0x007D     # RIGHT CURLY BRACKET, right-left
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
0xFE    0x0698  # ARABIC LETTER JEH
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
0xFF    0x06D2  # ARABIC LETTER YEH BARREE
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
"
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
! !
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
!MAC_Farsi class methodsFor:'documentation'!
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
version
8114
05274a80fcc4 separated implementation into dynamically (lazy) loaded classes
Claus Gittinger <cg@exept.de>
parents: 8081
diff changeset
   545
    ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MAC_Farsi.st,v 1.2 2004-03-08 17:09:04 cg Exp $'
8081
b468050174a9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
! !