#======================================================================= # File name: KEYBOARD.TXT # # Contents: Map (external version) from Mac OS Keyboard # character set to Unicode 4.0 and later. # # Copyright: (c) 2001-2002, 2005 by Apple Computer, Inc., all rights # reserved. # # Contact: charsets@apple.com # # Changes: # # c02 2005-Apr-05 Change mappings for 0x09, 0x0F, 0x8C; add # Mac OS X-only mappings for 0x8D-9x8F. # Update header comments, including # clarification of Mac OS X usage. Matches # internal xml and Text Encoding # Converter 2.0. # b1,c1 2002-Dec-19 First version. Matches internal utom. # # Standard header: # ---------------- # # Apple, the Apple logo, and Macintosh are trademarks of Apple # Computer, Inc., registered in the United States and other countries. # Unicode is a trademark of Unicode Inc. For the sake of brevity, # throughout this document, "Macintosh" can be used to refer to # Macintosh computers and "Unicode" can be used to refer to the # Unicode standard. # # Apple Computer, Inc. ("Apple") makes no warranty or representation, # either express or implied, with respect to this document and the # included data, its quality, accuracy, or fitness for a particular # purpose. In no event will Apple be liable for direct, indirect, # special, incidental, or consequential damages resulting from any # defect or inaccuracy in this document or the included data. # # These mapping tables and character lists are subject to change. # The latest tables should be available from the following: # # # # For general information about Mac OS encodings and these mapping # tables, see the file "README.TXT". # # Format: # ------- # # Three tab-separated columns; # '#' begins a comment which continues to the end of the line. # Column #1 is the Mac OS Keyboard code (in hex as 0xNN) # Column #2 is the corresponding Unicode or Unicode sequence # (in hex as 0xNNNN or 0xNNNN+0xNNNN, etc.). # Column #3 is a comment containing the Unicode name. # In some cases an additional comment follows the Unicode name. # # The entries are in Mac OS Keyboard code order. # # Some of these mappings require the use of corporate characters. # See the file "CORPCHAR.TXT" and notes below. # # The Mac OS Keyboard character set uses the ranges normally set aside # for controls, so those ranges are present in this table. # # Notes on Mac OS Keyboard: # ------------------------- # # This is the encoding for the legacy font named ".Keyboard". Before # Mac OS X, this font was used by the user-interface system to display # glyphs for special keys on the keyboard. In Mac OS X, that font is # not present and this mapping is not associated with a font; it is # only used as a way to map from a set of Menu Manager constants to # associated Unicode sequences. As such, new mappings added for Mac OS # X only may be one-way mappings: From the Keyboard glyph "encoding" # to Unicode, but not back. # # The Mac OS Keyboard encoding shares the script code smRoman # (0) with the Mac OS Roman encoding. To determine if the Keyboard # encoding is being used in Mac OS 8 or Mac OS 9, you must check if # the font name is ".Keyboard". # # Unicode mapping issues and notes: # --------------------------------- # # The goals in the mappings provided here are: # - For mappings used in Mac OS 8 and Mac OS 9, ensure roundtrip # mapping from every character in the Mac OS Keyboard character set # to Unicode and back. This consideration does not apply to mappings # added for Mac OS X only (noted below). # - Use standard Unicode characters as much as possible, to # maximize interchangeability of the resulting Unicode text. # Whenever possible, avoid having content carried by private-use # characters. # # Some of the characters in the Mac OS Keyboard character set do not # correspond to distinct, single Unicode characters. To map these # and satisfy both goals above, we employ various strategies. # # a) If possible, use private use characters in combination with # standard Unicode characters to mark variants of the standard # Unicode character. # # Apple has defined a block of 32 corporate characters as "transcoding # hints." These are used in combination with standard Unicode # characters to force them to be treated in a special way for mapping # to other encodings; they have no other effect. Sixteen of these # transcoding hints are "grouping hints" - they indicate that the next # 2-4 Unicode characters should be treated as a single entity for # transcoding. The other sixteen transcoding hints are "variant tags" # - they are like combining characters, and can follow a standard # Unicode (or a sequence consisting of a base character and other # combining characters) to cause it to be treated in a special way for # transcoding. These always terminate a combining-character sequence. # # The transcoding coding hints used in this mapping table are two # grouping tags, 0xF860-61, and one variant tag, 0xF87F. Since these # are combined with standard Unicode characters, some characters in # the Mac OS Keyboard character set map to a sequence of two to four # Unicodes instead of a single Unicode character. # # For example, the Mac OS Keyboard character at 0x6F, representing the # F1 key, is mapped to Unicode using the grouping tag F860 (group next # two) followed by U+0046 (LATIN CAPITAL LETTER F) and U+0031 (DIGIT # ONE). # # b) Otherwise, use private use characters by themselves to map Mac OS # Keyboard characters which have no relationship to any standard # Unicode character. # # The following additional corporate zone Unicode characters are # used for this purpose here: # # 0xF802 Lower left pencil # 0xF803 Contextual menu key symbol # 0xF8FF Apple logo # # NOTE: The graphic image associated with the Apple logo character # is not authorized for use without permission of Apple, and # unauthorized use might constitute trademark infringement. # # Details of mapping changes in each version: # ------------------------------------------- # # Changes from version c01 to version c02: # # - Mapping for 0x09 changed from 0x0009 (wrong) to 0x2423 # - Mapping for 0x0F changed from 0x270E (wrong) to 0xF802 # - Mapping for 0x8C changed from 0xF804 to 0x23CF (Unicode 4.0) # - Add Mac OS X-only mappings for 0x8D-0x8F # ################## 0x00 0x0000 # control - NUL # 0x02 0x21E5 # RIGHTWARDS ARROW TO BAR # Tab right (left-to-right text) 0x03 0x21E4 # LEFTWARDS ARROW TO BAR # Tab left (right-to-left text) 0x04 0x2324 # UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS # Enter key 0x05 0x21E7 # UPWARDS WHITE ARROW # Shift key 0x06 0x2303 # UP ARROWHEAD # Control key 0x07 0x2325 # OPTION KEY # Option key 0x08 0x0008 # control - BS 0x09 0x2423 # OPEN BOX # Space key (Mac OS X mapping, duplicates mapping for 0x61, hence no round-trip) 0x0A 0x2326 # ERASE TO THE RIGHT # Delete right (right-to-left text) 0x0B 0x21A9 # LEFTWARDS ARROW WITH HOOK # Return key (left-to-right text) 0x0C 0x21AA # RIGHTWARDS ARROW WITH HOOK # Return key (right-to-left text) 0x0D 0x000D # control - CR # 0x0F 0xF802 # lower left pencil 0x10 0x21E3 # DOWNWARDS DASHED ARROW 0x11 0x2318 # PLACE OF INTEREST SIGN # Command key 0x12 0x2713 # CHECK MARK 0x13 0x25C6 # BLACK DIAMOND 0x14 0xF8FF # Apple logo # 0x17 0x232B # ERASE TO THE LEFT # Delete left (left-to-right text) 0x18 0x21E0 # LEFTWARDS DASHED ARROW 0x19 0x21E1 # UPWARDS DASHED ARROW 0x1A 0x21E2 # RIGHTWARDS DASHED ARROW 0x1B 0x238B # BROKEN CIRCLE WITH NORTHWEST ARROW # Escape key; for Unicode 3.0 and later 0x1C 0x2327 # X IN A RECTANGLE BOX # Clear key # 0x20 0x0020 # SPACE # 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE # 0x46 0x0046 # LATIN CAPITAL LETTER F # 0x61 0x2423 # OPEN BOX # Blank key 0x62 0x21DE # UPWARDS ARROW WITH DOUBLE STROKE # Page up key 0x63 0x21EA # UPWARDS WHITE ARROW FROM BAR # Caps lock key 0x64 0x2190 # LEFTWARDS ARROW 0x65 0x2192 # RIGHTWARDS ARROW 0x66 0x2196 # NORTH WEST ARROW 0x67 0x003F+0x20DD # QUESTION MARK + COMBINING ENCLOSING CIRCLE # Help key 0x68 0x2191 # UPWARDS ARROW 0x69 0x2198 # SOUTH EAST ARROW 0x6A 0x2193 # DOWNWARDS ARROW 0x6B 0x21DF # DOWNWARDS ARROW WITH DOUBLE STROKE # Page down key 0x6C 0xF8FF+0xF87F # Apple logo, outline 0x6D 0xF803 # Contextual menu key symbol 0x6E 0x2758+0x20DD # LIGHT VERTICAL BAR + COMBINING ENCLOSING CIRCLE # Power key 0x6F 0xF860+0x0046+0x0031 # group_2 + F + 1 # F1 key 0x70 0xF860+0x0046+0x0032 # group_2 + F + 2 # F2 key 0x71 0xF860+0x0046+0x0033 # group_2 + F + 3 # F3 key 0x72 0xF860+0x0046+0x0034 # group_2 + F + 4 # F4 key 0x73 0xF860+0x0046+0x0035 # group_2 + F + 5 # F5 key 0x74 0xF860+0x0046+0x0036 # group_2 + F + 6 # F6 key 0x75 0xF860+0x0046+0x0037 # group_2 + F + 7 # F7 key 0x76 0xF860+0x0046+0x0038 # group_2 + F + 8 # F8 key 0x77 0xF860+0x0046+0x0039 # group_2 + F + 9 # F9 key 0x78 0xF861+0x0046+0x0031+0x0030 # group_3 + F + 1 + 0 # F10 key 0x79 0xF861+0x0046+0x0031+0x0031 # group_3 + F + 1 + 1 # F11 key 0x7A 0xF861+0x0046+0x0031+0x0032 # group_3 + F + 1 + 2 # F12 key # 0x87 0xF861+0x0046+0x0031+0x0033 # group_3 + F + 1 + 3 # F13 key 0x88 0xF861+0x0046+0x0031+0x0034 # group_3 + F + 1 + 4 # F14 key 0x89 0xF861+0x0046+0x0031+0x0035 # group_3 + F + 1 + 5 # F15 key 0x8A 0x2388 # HELM SYMBOL # Control key (ISO standard), Unicode 3.0 and later 0x8B 0x2387 # ALTERNATIVE KEY SYMBOL # Unicode 3.0 and later 0x8C 0x23CF # EJECT SYMBOL # Unicode 4.0 and later, Mac OS X only 0x8D 0x82F1+0x6570 # Japanese "eisu" key symbol # Mac OS X only 0x8E 0x304B+0x306A # Japanese "kana" key symbol # Mac OS X only 0x8F 0xF861+0x0046+0x0031+0x0036 # group_3 + F + 1 + 6 # F16 key, Mac OS X only #