vrshoot

diff libs/ft2static/freetype/ttnameid.h @ 0:b2f14e535253

initial commit
author John Tsiombikas <nuclear@member.fsf.org>
date Sat, 01 Feb 2014 19:58:19 +0200
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/libs/ft2static/freetype/ttnameid.h	Sat Feb 01 19:58:19 2014 +0200
     1.3 @@ -0,0 +1,1247 @@
     1.4 +/***************************************************************************/
     1.5 +/*                                                                         */
     1.6 +/*  ttnameid.h                                                             */
     1.7 +/*                                                                         */
     1.8 +/*    TrueType name ID definitions (specification only).                   */
     1.9 +/*                                                                         */
    1.10 +/*  Copyright 1996-2002, 2003, 2004, 2006, 2007, 2008 by                   */
    1.11 +/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
    1.12 +/*                                                                         */
    1.13 +/*  This file is part of the FreeType project, and may only be used,       */
    1.14 +/*  modified, and distributed under the terms of the FreeType project      */
    1.15 +/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
    1.16 +/*  this file you indicate that you have read the license and              */
    1.17 +/*  understand and accept it fully.                                        */
    1.18 +/*                                                                         */
    1.19 +/***************************************************************************/
    1.20 +
    1.21 +
    1.22 +#ifndef __TTNAMEID_H__
    1.23 +#define __TTNAMEID_H__
    1.24 +
    1.25 +
    1.26 +#include <ft2build.h>
    1.27 +
    1.28 +
    1.29 +FT_BEGIN_HEADER
    1.30 +
    1.31 +
    1.32 +  /*************************************************************************/
    1.33 +  /*                                                                       */
    1.34 +  /* <Section>                                                             */
    1.35 +  /*    truetype_tables                                                    */
    1.36 +  /*                                                                       */
    1.37 +
    1.38 +
    1.39 +  /*************************************************************************/
    1.40 +  /*                                                                       */
    1.41 +  /* Possible values for the `platform' identifier code in the name        */
    1.42 +  /* records of the TTF `name' table.                                      */
    1.43 +  /*                                                                       */
    1.44 +  /*************************************************************************/
    1.45 +
    1.46 +
    1.47 +  /***********************************************************************
    1.48 +   *
    1.49 +   * @enum:
    1.50 +   *   TT_PLATFORM_XXX
    1.51 +   *
    1.52 +   * @description:
    1.53 +   *   A list of valid values for the `platform_id' identifier code in
    1.54 +   *   @FT_CharMapRec and @FT_SfntName structures.
    1.55 +   *
    1.56 +   * @values:
    1.57 +   *   TT_PLATFORM_APPLE_UNICODE ::
    1.58 +   *     Used by Apple to indicate a Unicode character map and/or name entry.
    1.59 +   *     See @TT_APPLE_ID_XXX for corresponding `encoding_id' values.  Note
    1.60 +   *     that name entries in this format are coded as big-endian UCS-2
    1.61 +   *     character codes _only_.
    1.62 +   *
    1.63 +   *   TT_PLATFORM_MACINTOSH ::
    1.64 +   *     Used by Apple to indicate a MacOS-specific charmap and/or name entry.
    1.65 +   *     See @TT_MAC_ID_XXX for corresponding `encoding_id' values.  Note that
    1.66 +   *     most TrueType fonts contain an Apple roman charmap to be usable on
    1.67 +   *     MacOS systems (even if they contain a Microsoft charmap as well).
    1.68 +   *
    1.69 +   *   TT_PLATFORM_ISO ::
    1.70 +   *     This value was used to specify ISO/IEC 10646 charmaps.  It is however
    1.71 +   *     now deprecated.  See @TT_ISO_ID_XXX for a list of corresponding
    1.72 +   *     `encoding_id' values.
    1.73 +   *
    1.74 +   *   TT_PLATFORM_MICROSOFT ::
    1.75 +   *     Used by Microsoft to indicate Windows-specific charmaps.  See
    1.76 +   *     @TT_MS_ID_XXX for a list of corresponding `encoding_id' values.
    1.77 +   *     Note that most fonts contain a Unicode charmap using
    1.78 +   *     (TT_PLATFORM_MICROSOFT, @TT_MS_ID_UNICODE_CS).
    1.79 +   *
    1.80 +   *   TT_PLATFORM_CUSTOM ::
    1.81 +   *     Used to indicate application-specific charmaps.
    1.82 +   *
    1.83 +   *   TT_PLATFORM_ADOBE ::
    1.84 +   *     This value isn't part of any font format specification, but is used
    1.85 +   *     by FreeType to report Adobe-specific charmaps in an @FT_CharMapRec
    1.86 +   *     structure.  See @TT_ADOBE_ID_XXX.
    1.87 +   */
    1.88 +
    1.89 +#define TT_PLATFORM_APPLE_UNICODE  0
    1.90 +#define TT_PLATFORM_MACINTOSH      1
    1.91 +#define TT_PLATFORM_ISO            2 /* deprecated */
    1.92 +#define TT_PLATFORM_MICROSOFT      3
    1.93 +#define TT_PLATFORM_CUSTOM         4
    1.94 +#define TT_PLATFORM_ADOBE          7 /* artificial */
    1.95 +
    1.96 +
    1.97 +  /***********************************************************************
    1.98 +   *
    1.99 +   * @enum:
   1.100 +   *   TT_APPLE_ID_XXX
   1.101 +   *
   1.102 +   * @description:
   1.103 +   *   A list of valid values for the `encoding_id' for
   1.104 +   *   @TT_PLATFORM_APPLE_UNICODE charmaps and name entries.
   1.105 +   *
   1.106 +   * @values:
   1.107 +   *   TT_APPLE_ID_DEFAULT ::
   1.108 +   *     Unicode version 1.0.
   1.109 +   *
   1.110 +   *   TT_APPLE_ID_UNICODE_1_1 ::
   1.111 +   *     Unicode 1.1; specifies Hangul characters starting at U+34xx.
   1.112 +   *
   1.113 +   *   TT_APPLE_ID_ISO_10646 ::
   1.114 +   *     Deprecated (identical to preceding).
   1.115 +   *
   1.116 +   *   TT_APPLE_ID_UNICODE_2_0 ::
   1.117 +   *     Unicode 2.0 and beyond (UTF-16 BMP only).
   1.118 +   *
   1.119 +   *   TT_APPLE_ID_UNICODE_32 ::
   1.120 +   *     Unicode 3.1 and beyond, using UTF-32.
   1.121 +   *
   1.122 +   *   TT_APPLE_ID_VARIANT_SELECTOR ::
   1.123 +   *     From Adobe, not Apple.  Not a normal cmap.  Specifies variations
   1.124 +   *     on a real cmap.
   1.125 +   */
   1.126 +
   1.127 +#define TT_APPLE_ID_DEFAULT           0 /* Unicode 1.0 */
   1.128 +#define TT_APPLE_ID_UNICODE_1_1       1 /* specify Hangul at U+34xx */
   1.129 +#define TT_APPLE_ID_ISO_10646         2 /* deprecated */
   1.130 +#define TT_APPLE_ID_UNICODE_2_0       3 /* or later */
   1.131 +#define TT_APPLE_ID_UNICODE_32        4 /* 2.0 or later, full repertoire */
   1.132 +#define TT_APPLE_ID_VARIANT_SELECTOR  5 /* variation selector data */
   1.133 +
   1.134 +
   1.135 +  /***********************************************************************
   1.136 +   *
   1.137 +   * @enum:
   1.138 +   *   TT_MAC_ID_XXX
   1.139 +   *
   1.140 +   * @description:
   1.141 +   *   A list of valid values for the `encoding_id' for
   1.142 +   *   @TT_PLATFORM_MACINTOSH charmaps and name entries.
   1.143 +   *
   1.144 +   * @values:
   1.145 +   *   TT_MAC_ID_ROMAN ::
   1.146 +   *   TT_MAC_ID_JAPANESE ::
   1.147 +   *   TT_MAC_ID_TRADITIONAL_CHINESE ::
   1.148 +   *   TT_MAC_ID_KOREAN ::
   1.149 +   *   TT_MAC_ID_ARABIC ::
   1.150 +   *   TT_MAC_ID_HEBREW ::
   1.151 +   *   TT_MAC_ID_GREEK ::
   1.152 +   *   TT_MAC_ID_RUSSIAN ::
   1.153 +   *   TT_MAC_ID_RSYMBOL ::
   1.154 +   *   TT_MAC_ID_DEVANAGARI ::
   1.155 +   *   TT_MAC_ID_GURMUKHI ::
   1.156 +   *   TT_MAC_ID_GUJARATI ::
   1.157 +   *   TT_MAC_ID_ORIYA ::
   1.158 +   *   TT_MAC_ID_BENGALI ::
   1.159 +   *   TT_MAC_ID_TAMIL ::
   1.160 +   *   TT_MAC_ID_TELUGU ::
   1.161 +   *   TT_MAC_ID_KANNADA ::
   1.162 +   *   TT_MAC_ID_MALAYALAM ::
   1.163 +   *   TT_MAC_ID_SINHALESE ::
   1.164 +   *   TT_MAC_ID_BURMESE ::
   1.165 +   *   TT_MAC_ID_KHMER ::
   1.166 +   *   TT_MAC_ID_THAI ::
   1.167 +   *   TT_MAC_ID_LAOTIAN ::
   1.168 +   *   TT_MAC_ID_GEORGIAN ::
   1.169 +   *   TT_MAC_ID_ARMENIAN ::
   1.170 +   *   TT_MAC_ID_MALDIVIAN ::
   1.171 +   *   TT_MAC_ID_SIMPLIFIED_CHINESE ::
   1.172 +   *   TT_MAC_ID_TIBETAN ::
   1.173 +   *   TT_MAC_ID_MONGOLIAN ::
   1.174 +   *   TT_MAC_ID_GEEZ ::
   1.175 +   *   TT_MAC_ID_SLAVIC ::
   1.176 +   *   TT_MAC_ID_VIETNAMESE ::
   1.177 +   *   TT_MAC_ID_SINDHI ::
   1.178 +   *   TT_MAC_ID_UNINTERP ::
   1.179 +   */
   1.180 +
   1.181 +#define TT_MAC_ID_ROMAN                 0
   1.182 +#define TT_MAC_ID_JAPANESE              1
   1.183 +#define TT_MAC_ID_TRADITIONAL_CHINESE   2
   1.184 +#define TT_MAC_ID_KOREAN                3
   1.185 +#define TT_MAC_ID_ARABIC                4
   1.186 +#define TT_MAC_ID_HEBREW                5
   1.187 +#define TT_MAC_ID_GREEK                 6
   1.188 +#define TT_MAC_ID_RUSSIAN               7
   1.189 +#define TT_MAC_ID_RSYMBOL               8
   1.190 +#define TT_MAC_ID_DEVANAGARI            9
   1.191 +#define TT_MAC_ID_GURMUKHI             10
   1.192 +#define TT_MAC_ID_GUJARATI             11
   1.193 +#define TT_MAC_ID_ORIYA                12
   1.194 +#define TT_MAC_ID_BENGALI              13
   1.195 +#define TT_MAC_ID_TAMIL                14
   1.196 +#define TT_MAC_ID_TELUGU               15
   1.197 +#define TT_MAC_ID_KANNADA              16
   1.198 +#define TT_MAC_ID_MALAYALAM            17
   1.199 +#define TT_MAC_ID_SINHALESE            18
   1.200 +#define TT_MAC_ID_BURMESE              19
   1.201 +#define TT_MAC_ID_KHMER                20
   1.202 +#define TT_MAC_ID_THAI                 21
   1.203 +#define TT_MAC_ID_LAOTIAN              22
   1.204 +#define TT_MAC_ID_GEORGIAN             23
   1.205 +#define TT_MAC_ID_ARMENIAN             24
   1.206 +#define TT_MAC_ID_MALDIVIAN            25
   1.207 +#define TT_MAC_ID_SIMPLIFIED_CHINESE   25
   1.208 +#define TT_MAC_ID_TIBETAN              26
   1.209 +#define TT_MAC_ID_MONGOLIAN            27
   1.210 +#define TT_MAC_ID_GEEZ                 28
   1.211 +#define TT_MAC_ID_SLAVIC               29
   1.212 +#define TT_MAC_ID_VIETNAMESE           30
   1.213 +#define TT_MAC_ID_SINDHI               31
   1.214 +#define TT_MAC_ID_UNINTERP             32
   1.215 +
   1.216 +
   1.217 +  /***********************************************************************
   1.218 +   *
   1.219 +   * @enum:
   1.220 +   *   TT_ISO_ID_XXX
   1.221 +   *
   1.222 +   * @description:
   1.223 +   *   A list of valid values for the `encoding_id' for
   1.224 +   *   @TT_PLATFORM_ISO charmaps and name entries.
   1.225 +   *
   1.226 +   *   Their use is now deprecated.
   1.227 +   *
   1.228 +   * @values:
   1.229 +   *   TT_ISO_ID_7BIT_ASCII ::
   1.230 +   *     ASCII.
   1.231 +   *   TT_ISO_ID_10646 ::
   1.232 +   *     ISO/10646.
   1.233 +   *   TT_ISO_ID_8859_1 ::
   1.234 +   *     Also known as Latin-1.
   1.235 +   */
   1.236 +
   1.237 +#define TT_ISO_ID_7BIT_ASCII  0
   1.238 +#define TT_ISO_ID_10646       1
   1.239 +#define TT_ISO_ID_8859_1      2
   1.240 +
   1.241 +
   1.242 +  /***********************************************************************
   1.243 +   *
   1.244 +   * @enum:
   1.245 +   *   TT_MS_ID_XXX
   1.246 +   *
   1.247 +   * @description:
   1.248 +   *   A list of valid values for the `encoding_id' for
   1.249 +   *   @TT_PLATFORM_MICROSOFT charmaps and name entries.
   1.250 +   *
   1.251 +   * @values:
   1.252 +   *   TT_MS_ID_SYMBOL_CS ::
   1.253 +   *     Corresponds to Microsoft symbol encoding. See
   1.254 +   *     @FT_ENCODING_MS_SYMBOL.
   1.255 +   *
   1.256 +   *   TT_MS_ID_UNICODE_CS ::
   1.257 +   *     Corresponds to a Microsoft WGL4 charmap, matching Unicode.  See
   1.258 +   *     @FT_ENCODING_UNICODE.
   1.259 +   *
   1.260 +   *   TT_MS_ID_SJIS ::
   1.261 +   *     Corresponds to SJIS Japanese encoding.  See @FT_ENCODING_SJIS.
   1.262 +   *
   1.263 +   *   TT_MS_ID_GB2312 ::
   1.264 +   *     Corresponds to Simplified Chinese as used in Mainland China.  See
   1.265 +   *     @FT_ENCODING_GB2312.
   1.266 +   *
   1.267 +   *   TT_MS_ID_BIG_5 ::
   1.268 +   *     Corresponds to Traditional Chinese as used in Taiwan and Hong Kong.
   1.269 +   *     See @FT_ENCODING_BIG5.
   1.270 +   *
   1.271 +   *   TT_MS_ID_WANSUNG ::
   1.272 +   *     Corresponds to Korean Wansung encoding.  See @FT_ENCODING_WANSUNG.
   1.273 +   *
   1.274 +   *   TT_MS_ID_JOHAB ::
   1.275 +   *     Corresponds to Johab encoding.  See @FT_ENCODING_JOHAB.
   1.276 +   *
   1.277 +   *   TT_MS_ID_UCS_4 ::
   1.278 +   *     Corresponds to UCS-4 or UTF-32 charmaps.  This has been added to
   1.279 +   *     the OpenType specification version 1.4 (mid-2001.)
   1.280 +   */
   1.281 +
   1.282 +#define TT_MS_ID_SYMBOL_CS    0
   1.283 +#define TT_MS_ID_UNICODE_CS   1
   1.284 +#define TT_MS_ID_SJIS         2
   1.285 +#define TT_MS_ID_GB2312       3
   1.286 +#define TT_MS_ID_BIG_5        4
   1.287 +#define TT_MS_ID_WANSUNG      5
   1.288 +#define TT_MS_ID_JOHAB        6
   1.289 +#define TT_MS_ID_UCS_4       10
   1.290 +
   1.291 +
   1.292 +  /***********************************************************************
   1.293 +   *
   1.294 +   * @enum:
   1.295 +   *   TT_ADOBE_ID_XXX
   1.296 +   *
   1.297 +   * @description:
   1.298 +   *   A list of valid values for the `encoding_id' for
   1.299 +   *   @TT_PLATFORM_ADOBE charmaps.  This is a FreeType-specific extension!
   1.300 +   *
   1.301 +   * @values:
   1.302 +   *   TT_ADOBE_ID_STANDARD ::
   1.303 +   *     Adobe standard encoding.
   1.304 +   *   TT_ADOBE_ID_EXPERT ::
   1.305 +   *     Adobe expert encoding.
   1.306 +   *   TT_ADOBE_ID_CUSTOM ::
   1.307 +   *     Adobe custom encoding.
   1.308 +   *   TT_ADOBE_ID_LATIN_1 ::
   1.309 +   *     Adobe Latin~1 encoding.
   1.310 +   */
   1.311 +
   1.312 +#define TT_ADOBE_ID_STANDARD  0
   1.313 +#define TT_ADOBE_ID_EXPERT    1
   1.314 +#define TT_ADOBE_ID_CUSTOM    2
   1.315 +#define TT_ADOBE_ID_LATIN_1   3
   1.316 +
   1.317 +
   1.318 +  /*************************************************************************/
   1.319 +  /*                                                                       */
   1.320 +  /* Possible values of the language identifier field in the name records  */
   1.321 +  /* of the TTF `name' table if the `platform' identifier code is          */
   1.322 +  /* TT_PLATFORM_MACINTOSH.                                                */
   1.323 +  /*                                                                       */
   1.324 +  /* The canonical source for the Apple assigned Language ID's is at       */
   1.325 +  /*                                                                       */
   1.326 +  /*   http://fonts.apple.com/TTRefMan/RM06/Chap6name.html                 */
   1.327 +  /*                                                                       */
   1.328 +#define TT_MAC_LANGID_ENGLISH                       0
   1.329 +#define TT_MAC_LANGID_FRENCH                        1
   1.330 +#define TT_MAC_LANGID_GERMAN                        2
   1.331 +#define TT_MAC_LANGID_ITALIAN                       3
   1.332 +#define TT_MAC_LANGID_DUTCH                         4
   1.333 +#define TT_MAC_LANGID_SWEDISH                       5
   1.334 +#define TT_MAC_LANGID_SPANISH                       6
   1.335 +#define TT_MAC_LANGID_DANISH                        7
   1.336 +#define TT_MAC_LANGID_PORTUGUESE                    8
   1.337 +#define TT_MAC_LANGID_NORWEGIAN                     9
   1.338 +#define TT_MAC_LANGID_HEBREW                       10
   1.339 +#define TT_MAC_LANGID_JAPANESE                     11
   1.340 +#define TT_MAC_LANGID_ARABIC                       12
   1.341 +#define TT_MAC_LANGID_FINNISH                      13
   1.342 +#define TT_MAC_LANGID_GREEK                        14
   1.343 +#define TT_MAC_LANGID_ICELANDIC                    15
   1.344 +#define TT_MAC_LANGID_MALTESE                      16
   1.345 +#define TT_MAC_LANGID_TURKISH                      17
   1.346 +#define TT_MAC_LANGID_CROATIAN                     18
   1.347 +#define TT_MAC_LANGID_CHINESE_TRADITIONAL          19
   1.348 +#define TT_MAC_LANGID_URDU                         20
   1.349 +#define TT_MAC_LANGID_HINDI                        21
   1.350 +#define TT_MAC_LANGID_THAI                         22
   1.351 +#define TT_MAC_LANGID_KOREAN                       23
   1.352 +#define TT_MAC_LANGID_LITHUANIAN                   24
   1.353 +#define TT_MAC_LANGID_POLISH                       25
   1.354 +#define TT_MAC_LANGID_HUNGARIAN                    26
   1.355 +#define TT_MAC_LANGID_ESTONIAN                     27
   1.356 +#define TT_MAC_LANGID_LETTISH                      28
   1.357 +#define TT_MAC_LANGID_SAAMISK                      29
   1.358 +#define TT_MAC_LANGID_FAEROESE                     30
   1.359 +#define TT_MAC_LANGID_FARSI                        31
   1.360 +#define TT_MAC_LANGID_RUSSIAN                      32
   1.361 +#define TT_MAC_LANGID_CHINESE_SIMPLIFIED           33
   1.362 +#define TT_MAC_LANGID_FLEMISH                      34
   1.363 +#define TT_MAC_LANGID_IRISH                        35
   1.364 +#define TT_MAC_LANGID_ALBANIAN                     36
   1.365 +#define TT_MAC_LANGID_ROMANIAN                     37
   1.366 +#define TT_MAC_LANGID_CZECH                        38
   1.367 +#define TT_MAC_LANGID_SLOVAK                       39
   1.368 +#define TT_MAC_LANGID_SLOVENIAN                    40
   1.369 +#define TT_MAC_LANGID_YIDDISH                      41
   1.370 +#define TT_MAC_LANGID_SERBIAN                      42
   1.371 +#define TT_MAC_LANGID_MACEDONIAN                   43
   1.372 +#define TT_MAC_LANGID_BULGARIAN                    44
   1.373 +#define TT_MAC_LANGID_UKRAINIAN                    45
   1.374 +#define TT_MAC_LANGID_BYELORUSSIAN                 46
   1.375 +#define TT_MAC_LANGID_UZBEK                        47
   1.376 +#define TT_MAC_LANGID_KAZAKH                       48
   1.377 +#define TT_MAC_LANGID_AZERBAIJANI                  49
   1.378 +#define TT_MAC_LANGID_AZERBAIJANI_CYRILLIC_SCRIPT  49
   1.379 +#define TT_MAC_LANGID_AZERBAIJANI_ARABIC_SCRIPT    50
   1.380 +#define TT_MAC_LANGID_ARMENIAN                     51
   1.381 +#define TT_MAC_LANGID_GEORGIAN                     52
   1.382 +#define TT_MAC_LANGID_MOLDAVIAN                    53
   1.383 +#define TT_MAC_LANGID_KIRGHIZ                      54
   1.384 +#define TT_MAC_LANGID_TAJIKI                       55
   1.385 +#define TT_MAC_LANGID_TURKMEN                      56
   1.386 +#define TT_MAC_LANGID_MONGOLIAN                    57
   1.387 +#define TT_MAC_LANGID_MONGOLIAN_MONGOLIAN_SCRIPT   57
   1.388 +#define TT_MAC_LANGID_MONGOLIAN_CYRILLIC_SCRIPT    58
   1.389 +#define TT_MAC_LANGID_PASHTO                       59
   1.390 +#define TT_MAC_LANGID_KURDISH                      60
   1.391 +#define TT_MAC_LANGID_KASHMIRI                     61
   1.392 +#define TT_MAC_LANGID_SINDHI                       62
   1.393 +#define TT_MAC_LANGID_TIBETAN                      63
   1.394 +#define TT_MAC_LANGID_NEPALI                       64
   1.395 +#define TT_MAC_LANGID_SANSKRIT                     65
   1.396 +#define TT_MAC_LANGID_MARATHI                      66
   1.397 +#define TT_MAC_LANGID_BENGALI                      67
   1.398 +#define TT_MAC_LANGID_ASSAMESE                     68
   1.399 +#define TT_MAC_LANGID_GUJARATI                     69
   1.400 +#define TT_MAC_LANGID_PUNJABI                      70
   1.401 +#define TT_MAC_LANGID_ORIYA                        71
   1.402 +#define TT_MAC_LANGID_MALAYALAM                    72
   1.403 +#define TT_MAC_LANGID_KANNADA                      73
   1.404 +#define TT_MAC_LANGID_TAMIL                        74
   1.405 +#define TT_MAC_LANGID_TELUGU                       75
   1.406 +#define TT_MAC_LANGID_SINHALESE                    76
   1.407 +#define TT_MAC_LANGID_BURMESE                      77
   1.408 +#define TT_MAC_LANGID_KHMER                        78
   1.409 +#define TT_MAC_LANGID_LAO                          79
   1.410 +#define TT_MAC_LANGID_VIETNAMESE                   80
   1.411 +#define TT_MAC_LANGID_INDONESIAN                   81
   1.412 +#define TT_MAC_LANGID_TAGALOG                      82
   1.413 +#define TT_MAC_LANGID_MALAY_ROMAN_SCRIPT           83
   1.414 +#define TT_MAC_LANGID_MALAY_ARABIC_SCRIPT          84
   1.415 +#define TT_MAC_LANGID_AMHARIC                      85
   1.416 +#define TT_MAC_LANGID_TIGRINYA                     86
   1.417 +#define TT_MAC_LANGID_GALLA                        87
   1.418 +#define TT_MAC_LANGID_SOMALI                       88
   1.419 +#define TT_MAC_LANGID_SWAHILI                      89
   1.420 +#define TT_MAC_LANGID_RUANDA                       90
   1.421 +#define TT_MAC_LANGID_RUNDI                        91
   1.422 +#define TT_MAC_LANGID_CHEWA                        92
   1.423 +#define TT_MAC_LANGID_MALAGASY                     93
   1.424 +#define TT_MAC_LANGID_ESPERANTO                    94
   1.425 +#define TT_MAC_LANGID_WELSH                       128
   1.426 +#define TT_MAC_LANGID_BASQUE                      129
   1.427 +#define TT_MAC_LANGID_CATALAN                     130
   1.428 +#define TT_MAC_LANGID_LATIN                       131
   1.429 +#define TT_MAC_LANGID_QUECHUA                     132
   1.430 +#define TT_MAC_LANGID_GUARANI                     133
   1.431 +#define TT_MAC_LANGID_AYMARA                      134
   1.432 +#define TT_MAC_LANGID_TATAR                       135
   1.433 +#define TT_MAC_LANGID_UIGHUR                      136
   1.434 +#define TT_MAC_LANGID_DZONGKHA                    137
   1.435 +#define TT_MAC_LANGID_JAVANESE                    138
   1.436 +#define TT_MAC_LANGID_SUNDANESE                   139
   1.437 +
   1.438 +
   1.439 +#if 0  /* these seem to be errors that have been dropped */
   1.440 +
   1.441 +#define TT_MAC_LANGID_SCOTTISH_GAELIC             140
   1.442 +#define TT_MAC_LANGID_IRISH_GAELIC                141
   1.443 +
   1.444 +#endif
   1.445 +
   1.446 +
   1.447 +  /* The following codes are new as of 2000-03-10 */
   1.448 +#define TT_MAC_LANGID_GALICIAN                    140
   1.449 +#define TT_MAC_LANGID_AFRIKAANS                   141
   1.450 +#define TT_MAC_LANGID_BRETON                      142
   1.451 +#define TT_MAC_LANGID_INUKTITUT                   143
   1.452 +#define TT_MAC_LANGID_SCOTTISH_GAELIC             144
   1.453 +#define TT_MAC_LANGID_MANX_GAELIC                 145
   1.454 +#define TT_MAC_LANGID_IRISH_GAELIC                146
   1.455 +#define TT_MAC_LANGID_TONGAN                      147
   1.456 +#define TT_MAC_LANGID_GREEK_POLYTONIC             148
   1.457 +#define TT_MAC_LANGID_GREELANDIC                  149
   1.458 +#define TT_MAC_LANGID_AZERBAIJANI_ROMAN_SCRIPT    150
   1.459 +
   1.460 +
   1.461 +  /*************************************************************************/
   1.462 +  /*                                                                       */
   1.463 +  /* Possible values of the language identifier field in the name records  */
   1.464 +  /* of the TTF `name' table if the `platform' identifier code is          */
   1.465 +  /* TT_PLATFORM_MICROSOFT.                                                */
   1.466 +  /*                                                                       */
   1.467 +  /* The canonical source for the MS assigned LCID's (seems to) be at      */
   1.468 +  /*                                                                       */
   1.469 +  /*   http://www.microsoft.com/globaldev/reference/lcid-all.mspx          */
   1.470 +  /*                                                                       */
   1.471 +  /* It used to be at various places, among them                           */
   1.472 +  /*                                                                       */
   1.473 +  /*   http://www.microsoft.com/typography/OTSPEC/lcid-cp.txt              */
   1.474 +  /*   http://www.microsoft.com/globaldev/reference/loclanghome.asp        */
   1.475 +  /*   http://support.microsoft.com/support/kb/articles/Q224/8/04.ASP      */
   1.476 +  /*   http://msdn.microsoft.com/library/en-us/passport25/                 */
   1.477 +  /*           NET_Passport_VBScript_Documentation/Single_Sign_In/         */
   1.478 +  /*           Advanced_Single_Sign_In/Localization_and_LCIDs.asp          */
   1.479 +  /*                                                                       */
   1.480 +  /* Hopefully, it seems now that the Globaldev site prevails...           */
   1.481 +  /*                                   (updated by Antoine, 2004-02-17)    */
   1.482 +
   1.483 +#define TT_MS_LANGID_ARABIC_GENERAL                    0x0001
   1.484 +#define TT_MS_LANGID_ARABIC_SAUDI_ARABIA               0x0401
   1.485 +#define TT_MS_LANGID_ARABIC_IRAQ                       0x0801
   1.486 +#define TT_MS_LANGID_ARABIC_EGYPT                      0x0c01
   1.487 +#define TT_MS_LANGID_ARABIC_LIBYA                      0x1001
   1.488 +#define TT_MS_LANGID_ARABIC_ALGERIA                    0x1401
   1.489 +#define TT_MS_LANGID_ARABIC_MOROCCO                    0x1801
   1.490 +#define TT_MS_LANGID_ARABIC_TUNISIA                    0x1c01
   1.491 +#define TT_MS_LANGID_ARABIC_OMAN                       0x2001
   1.492 +#define TT_MS_LANGID_ARABIC_YEMEN                      0x2401
   1.493 +#define TT_MS_LANGID_ARABIC_SYRIA                      0x2801
   1.494 +#define TT_MS_LANGID_ARABIC_JORDAN                     0x2c01
   1.495 +#define TT_MS_LANGID_ARABIC_LEBANON                    0x3001
   1.496 +#define TT_MS_LANGID_ARABIC_KUWAIT                     0x3401
   1.497 +#define TT_MS_LANGID_ARABIC_UAE                        0x3801
   1.498 +#define TT_MS_LANGID_ARABIC_BAHRAIN                    0x3c01
   1.499 +#define TT_MS_LANGID_ARABIC_QATAR                      0x4001
   1.500 +#define TT_MS_LANGID_BULGARIAN_BULGARIA                0x0402
   1.501 +#define TT_MS_LANGID_CATALAN_SPAIN                     0x0403
   1.502 +#define TT_MS_LANGID_CHINESE_GENERAL                   0x0004
   1.503 +#define TT_MS_LANGID_CHINESE_TAIWAN                    0x0404
   1.504 +#define TT_MS_LANGID_CHINESE_PRC                       0x0804
   1.505 +#define TT_MS_LANGID_CHINESE_HONG_KONG                 0x0c04
   1.506 +#define TT_MS_LANGID_CHINESE_SINGAPORE                 0x1004
   1.507 +
   1.508 +#if 1  /* this looks like the correct value */
   1.509 +#define TT_MS_LANGID_CHINESE_MACAU                     0x1404
   1.510 +#else  /* but beware, Microsoft may change its mind...
   1.511 +          the most recent Word reference has the following: */
   1.512 +#define TT_MS_LANGID_CHINESE_MACAU  TT_MS_LANGID_CHINESE_HONG_KONG
   1.513 +#endif
   1.514 +
   1.515 +#if 0  /* used only with .NET `cultures'; commented out */
   1.516 +#define TT_MS_LANGID_CHINESE_TRADITIONAL               0x7C04
   1.517 +#endif
   1.518 +
   1.519 +#define TT_MS_LANGID_CZECH_CZECH_REPUBLIC              0x0405
   1.520 +#define TT_MS_LANGID_DANISH_DENMARK                    0x0406
   1.521 +#define TT_MS_LANGID_GERMAN_GERMANY                    0x0407
   1.522 +#define TT_MS_LANGID_GERMAN_SWITZERLAND                0x0807
   1.523 +#define TT_MS_LANGID_GERMAN_AUSTRIA                    0x0c07
   1.524 +#define TT_MS_LANGID_GERMAN_LUXEMBOURG                 0x1007
   1.525 +#define TT_MS_LANGID_GERMAN_LIECHTENSTEI               0x1407
   1.526 +#define TT_MS_LANGID_GREEK_GREECE                      0x0408
   1.527 +
   1.528 +  /* don't ask what this one means... It is commented out currently. */
   1.529 +#if 0
   1.530 +#define TT_MS_LANGID_GREEK_GREECE2                     0x2008
   1.531 +#endif
   1.532 +
   1.533 +#define TT_MS_LANGID_ENGLISH_GENERAL                   0x0009
   1.534 +#define TT_MS_LANGID_ENGLISH_UNITED_STATES             0x0409
   1.535 +#define TT_MS_LANGID_ENGLISH_UNITED_KINGDOM            0x0809
   1.536 +#define TT_MS_LANGID_ENGLISH_AUSTRALIA                 0x0c09
   1.537 +#define TT_MS_LANGID_ENGLISH_CANADA                    0x1009
   1.538 +#define TT_MS_LANGID_ENGLISH_NEW_ZEALAND               0x1409
   1.539 +#define TT_MS_LANGID_ENGLISH_IRELAND                   0x1809
   1.540 +#define TT_MS_LANGID_ENGLISH_SOUTH_AFRICA              0x1c09
   1.541 +#define TT_MS_LANGID_ENGLISH_JAMAICA                   0x2009
   1.542 +#define TT_MS_LANGID_ENGLISH_CARIBBEAN                 0x2409
   1.543 +#define TT_MS_LANGID_ENGLISH_BELIZE                    0x2809
   1.544 +#define TT_MS_LANGID_ENGLISH_TRINIDAD                  0x2c09
   1.545 +#define TT_MS_LANGID_ENGLISH_ZIMBABWE                  0x3009
   1.546 +#define TT_MS_LANGID_ENGLISH_PHILIPPINES               0x3409
   1.547 +#define TT_MS_LANGID_ENGLISH_INDONESIA                 0x3809
   1.548 +#define TT_MS_LANGID_ENGLISH_HONG_KONG                 0x3c09
   1.549 +#define TT_MS_LANGID_ENGLISH_INDIA                     0x4009
   1.550 +#define TT_MS_LANGID_ENGLISH_MALAYSIA                  0x4409
   1.551 +#define TT_MS_LANGID_ENGLISH_SINGAPORE                 0x4809
   1.552 +#define TT_MS_LANGID_SPANISH_SPAIN_TRADITIONAL_SORT    0x040a
   1.553 +#define TT_MS_LANGID_SPANISH_MEXICO                    0x080a
   1.554 +#define TT_MS_LANGID_SPANISH_SPAIN_INTERNATIONAL_SORT  0x0c0a
   1.555 +#define TT_MS_LANGID_SPANISH_GUATEMALA                 0x100a
   1.556 +#define TT_MS_LANGID_SPANISH_COSTA_RICA                0x140a
   1.557 +#define TT_MS_LANGID_SPANISH_PANAMA                    0x180a
   1.558 +#define TT_MS_LANGID_SPANISH_DOMINICAN_REPUBLIC        0x1c0a
   1.559 +#define TT_MS_LANGID_SPANISH_VENEZUELA                 0x200a
   1.560 +#define TT_MS_LANGID_SPANISH_COLOMBIA                  0x240a
   1.561 +#define TT_MS_LANGID_SPANISH_PERU                      0x280a
   1.562 +#define TT_MS_LANGID_SPANISH_ARGENTINA                 0x2c0a
   1.563 +#define TT_MS_LANGID_SPANISH_ECUADOR                   0x300a
   1.564 +#define TT_MS_LANGID_SPANISH_CHILE                     0x340a
   1.565 +#define TT_MS_LANGID_SPANISH_URUGUAY                   0x380a
   1.566 +#define TT_MS_LANGID_SPANISH_PARAGUAY                  0x3c0a
   1.567 +#define TT_MS_LANGID_SPANISH_BOLIVIA                   0x400a
   1.568 +#define TT_MS_LANGID_SPANISH_EL_SALVADOR               0x440a
   1.569 +#define TT_MS_LANGID_SPANISH_HONDURAS                  0x480a
   1.570 +#define TT_MS_LANGID_SPANISH_NICARAGUA                 0x4c0a
   1.571 +#define TT_MS_LANGID_SPANISH_PUERTO_RICO               0x500a
   1.572 +#define TT_MS_LANGID_SPANISH_UNITED_STATES             0x540a
   1.573 +  /* The following ID blatantly violate MS specs by using a */
   1.574 +  /* sublanguage > 0x1F.                                    */
   1.575 +#define TT_MS_LANGID_SPANISH_LATIN_AMERICA             0xE40aU
   1.576 +#define TT_MS_LANGID_FINNISH_FINLAND                   0x040b
   1.577 +#define TT_MS_LANGID_FRENCH_FRANCE                     0x040c
   1.578 +#define TT_MS_LANGID_FRENCH_BELGIUM                    0x080c
   1.579 +#define TT_MS_LANGID_FRENCH_CANADA                     0x0c0c
   1.580 +#define TT_MS_LANGID_FRENCH_SWITZERLAND                0x100c
   1.581 +#define TT_MS_LANGID_FRENCH_LUXEMBOURG                 0x140c
   1.582 +#define TT_MS_LANGID_FRENCH_MONACO                     0x180c
   1.583 +#define TT_MS_LANGID_FRENCH_WEST_INDIES                0x1c0c
   1.584 +#define TT_MS_LANGID_FRENCH_REUNION                    0x200c
   1.585 +#define TT_MS_LANGID_FRENCH_CONGO                      0x240c
   1.586 +  /* which was formerly: */
   1.587 +#define TT_MS_LANGID_FRENCH_ZAIRE  TT_MS_LANGID_FRENCH_CONGO
   1.588 +#define TT_MS_LANGID_FRENCH_SENEGAL                    0x280c
   1.589 +#define TT_MS_LANGID_FRENCH_CAMEROON                   0x2c0c
   1.590 +#define TT_MS_LANGID_FRENCH_COTE_D_IVOIRE              0x300c
   1.591 +#define TT_MS_LANGID_FRENCH_MALI                       0x340c
   1.592 +#define TT_MS_LANGID_FRENCH_MOROCCO                    0x380c
   1.593 +#define TT_MS_LANGID_FRENCH_HAITI                      0x3c0c
   1.594 +  /* and another violation of the spec (see 0xE40aU) */
   1.595 +#define TT_MS_LANGID_FRENCH_NORTH_AFRICA               0xE40cU
   1.596 +#define TT_MS_LANGID_HEBREW_ISRAEL                     0x040d
   1.597 +#define TT_MS_LANGID_HUNGARIAN_HUNGARY                 0x040e
   1.598 +#define TT_MS_LANGID_ICELANDIC_ICELAND                 0x040f
   1.599 +#define TT_MS_LANGID_ITALIAN_ITALY                     0x0410
   1.600 +#define TT_MS_LANGID_ITALIAN_SWITZERLAND               0x0810
   1.601 +#define TT_MS_LANGID_JAPANESE_JAPAN                    0x0411
   1.602 +#define TT_MS_LANGID_KOREAN_EXTENDED_WANSUNG_KOREA     0x0412
   1.603 +#define TT_MS_LANGID_KOREAN_JOHAB_KOREA                0x0812
   1.604 +#define TT_MS_LANGID_DUTCH_NETHERLANDS                 0x0413
   1.605 +#define TT_MS_LANGID_DUTCH_BELGIUM                     0x0813
   1.606 +#define TT_MS_LANGID_NORWEGIAN_NORWAY_BOKMAL           0x0414
   1.607 +#define TT_MS_LANGID_NORWEGIAN_NORWAY_NYNORSK          0x0814
   1.608 +#define TT_MS_LANGID_POLISH_POLAND                     0x0415
   1.609 +#define TT_MS_LANGID_PORTUGUESE_BRAZIL                 0x0416
   1.610 +#define TT_MS_LANGID_PORTUGUESE_PORTUGAL               0x0816
   1.611 +#define TT_MS_LANGID_RHAETO_ROMANIC_SWITZERLAND        0x0417
   1.612 +#define TT_MS_LANGID_ROMANIAN_ROMANIA                  0x0418
   1.613 +#define TT_MS_LANGID_MOLDAVIAN_MOLDAVIA                0x0818
   1.614 +#define TT_MS_LANGID_RUSSIAN_RUSSIA                    0x0419
   1.615 +#define TT_MS_LANGID_RUSSIAN_MOLDAVIA                  0x0819
   1.616 +#define TT_MS_LANGID_CROATIAN_CROATIA                  0x041a
   1.617 +#define TT_MS_LANGID_SERBIAN_SERBIA_LATIN              0x081a
   1.618 +#define TT_MS_LANGID_SERBIAN_SERBIA_CYRILLIC           0x0c1a
   1.619 +
   1.620 +#if 0  /* this used to be this value, but it looks like we were wrong */
   1.621 +#define TT_MS_LANGID_BOSNIAN_BOSNIA_HERZEGOVINA        0x101a
   1.622 +#else  /* current sources say */
   1.623 +#define TT_MS_LANGID_CROATIAN_BOSNIA_HERZEGOVINA       0x101a
   1.624 +#define TT_MS_LANGID_BOSNIAN_BOSNIA_HERZEGOVINA        0x141a
   1.625 +       /* and XPsp2 Platform SDK added (2004-07-26) */
   1.626 +       /* Names are shortened to be significant within 40 chars. */
   1.627 +#define TT_MS_LANGID_SERBIAN_BOSNIA_HERZ_LATIN         0x181a
   1.628 +#define TT_MS_LANGID_SERBIAN_BOSNIA_HERZ_CYRILLIC      0x181a
   1.629 +#endif
   1.630 +
   1.631 +#define TT_MS_LANGID_SLOVAK_SLOVAKIA                   0x041b
   1.632 +#define TT_MS_LANGID_ALBANIAN_ALBANIA                  0x041c
   1.633 +#define TT_MS_LANGID_SWEDISH_SWEDEN                    0x041d
   1.634 +#define TT_MS_LANGID_SWEDISH_FINLAND                   0x081d
   1.635 +#define TT_MS_LANGID_THAI_THAILAND                     0x041e
   1.636 +#define TT_MS_LANGID_TURKISH_TURKEY                    0x041f
   1.637 +#define TT_MS_LANGID_URDU_PAKISTAN                     0x0420
   1.638 +#define TT_MS_LANGID_URDU_INDIA                        0x0820
   1.639 +#define TT_MS_LANGID_INDONESIAN_INDONESIA              0x0421
   1.640 +#define TT_MS_LANGID_UKRAINIAN_UKRAINE                 0x0422
   1.641 +#define TT_MS_LANGID_BELARUSIAN_BELARUS                0x0423
   1.642 +#define TT_MS_LANGID_SLOVENE_SLOVENIA                  0x0424
   1.643 +#define TT_MS_LANGID_ESTONIAN_ESTONIA                  0x0425
   1.644 +#define TT_MS_LANGID_LATVIAN_LATVIA                    0x0426
   1.645 +#define TT_MS_LANGID_LITHUANIAN_LITHUANIA              0x0427
   1.646 +#define TT_MS_LANGID_CLASSIC_LITHUANIAN_LITHUANIA      0x0827
   1.647 +#define TT_MS_LANGID_TAJIK_TAJIKISTAN                  0x0428
   1.648 +#define TT_MS_LANGID_FARSI_IRAN                        0x0429
   1.649 +#define TT_MS_LANGID_VIETNAMESE_VIET_NAM               0x042a
   1.650 +#define TT_MS_LANGID_ARMENIAN_ARMENIA                  0x042b
   1.651 +#define TT_MS_LANGID_AZERI_AZERBAIJAN_LATIN            0x042c
   1.652 +#define TT_MS_LANGID_AZERI_AZERBAIJAN_CYRILLIC         0x082c
   1.653 +#define TT_MS_LANGID_BASQUE_SPAIN                      0x042d
   1.654 +#define TT_MS_LANGID_SORBIAN_GERMANY                   0x042e
   1.655 +#define TT_MS_LANGID_MACEDONIAN_MACEDONIA              0x042f
   1.656 +#define TT_MS_LANGID_SUTU_SOUTH_AFRICA                 0x0430
   1.657 +#define TT_MS_LANGID_TSONGA_SOUTH_AFRICA               0x0431
   1.658 +#define TT_MS_LANGID_TSWANA_SOUTH_AFRICA               0x0432
   1.659 +#define TT_MS_LANGID_VENDA_SOUTH_AFRICA                0x0433
   1.660 +#define TT_MS_LANGID_XHOSA_SOUTH_AFRICA                0x0434
   1.661 +#define TT_MS_LANGID_ZULU_SOUTH_AFRICA                 0x0435
   1.662 +#define TT_MS_LANGID_AFRIKAANS_SOUTH_AFRICA            0x0436
   1.663 +#define TT_MS_LANGID_GEORGIAN_GEORGIA                  0x0437
   1.664 +#define TT_MS_LANGID_FAEROESE_FAEROE_ISLANDS           0x0438
   1.665 +#define TT_MS_LANGID_HINDI_INDIA                       0x0439
   1.666 +#define TT_MS_LANGID_MALTESE_MALTA                     0x043a
   1.667 +  /* Added by XPsp2 Platform SDK (2004-07-26) */
   1.668 +#define TT_MS_LANGID_SAMI_NORTHERN_NORWAY              0x043b
   1.669 +#define TT_MS_LANGID_SAMI_NORTHERN_SWEDEN              0x083b
   1.670 +#define TT_MS_LANGID_SAMI_NORTHERN_FINLAND             0x0C3b
   1.671 +#define TT_MS_LANGID_SAMI_LULE_NORWAY                  0x103b
   1.672 +#define TT_MS_LANGID_SAMI_LULE_SWEDEN                  0x143b
   1.673 +#define TT_MS_LANGID_SAMI_SOUTHERN_NORWAY              0x183b
   1.674 +#define TT_MS_LANGID_SAMI_SOUTHERN_SWEDEN              0x1C3b
   1.675 +#define TT_MS_LANGID_SAMI_SKOLT_FINLAND                0x203b
   1.676 +#define TT_MS_LANGID_SAMI_INARI_FINLAND                0x243b
   1.677 +  /* ... and we also keep our old identifier... */
   1.678 +#define TT_MS_LANGID_SAAMI_LAPONIA                     0x043b
   1.679 +
   1.680 +#if 0 /* this seems to be a previous inversion */
   1.681 +#define TT_MS_LANGID_IRISH_GAELIC_IRELAND              0x043c
   1.682 +#define TT_MS_LANGID_SCOTTISH_GAELIC_UNITED_KINGDOM    0x083c
   1.683 +#else
   1.684 +#define TT_MS_LANGID_SCOTTISH_GAELIC_UNITED_KINGDOM    0x083c
   1.685 +#define TT_MS_LANGID_IRISH_GAELIC_IRELAND              0x043c
   1.686 +#endif
   1.687 +
   1.688 +#define TT_MS_LANGID_YIDDISH_GERMANY                   0x043d
   1.689 +#define TT_MS_LANGID_MALAY_MALAYSIA                    0x043e
   1.690 +#define TT_MS_LANGID_MALAY_BRUNEI_DARUSSALAM           0x083e
   1.691 +#define TT_MS_LANGID_KAZAK_KAZAKSTAN                   0x043f
   1.692 +#define TT_MS_LANGID_KIRGHIZ_KIRGHIZSTAN /* Cyrillic*/ 0x0440
   1.693 +  /* alias declared in Windows 2000 */
   1.694 +#define TT_MS_LANGID_KIRGHIZ_KIRGHIZ_REPUBLIC \
   1.695 +          TT_MS_LANGID_KIRGHIZ_KIRGHIZSTAN
   1.696 +
   1.697 +#define TT_MS_LANGID_SWAHILI_KENYA                     0x0441
   1.698 +#define TT_MS_LANGID_TURKMEN_TURKMENISTAN              0x0442
   1.699 +#define TT_MS_LANGID_UZBEK_UZBEKISTAN_LATIN            0x0443
   1.700 +#define TT_MS_LANGID_UZBEK_UZBEKISTAN_CYRILLIC         0x0843
   1.701 +#define TT_MS_LANGID_TATAR_TATARSTAN                   0x0444
   1.702 +#define TT_MS_LANGID_BENGALI_INDIA                     0x0445
   1.703 +#define TT_MS_LANGID_BENGALI_BANGLADESH                0x0845
   1.704 +#define TT_MS_LANGID_PUNJABI_INDIA                     0x0446
   1.705 +#define TT_MS_LANGID_PUNJABI_ARABIC_PAKISTAN           0x0846
   1.706 +#define TT_MS_LANGID_GUJARATI_INDIA                    0x0447
   1.707 +#define TT_MS_LANGID_ORIYA_INDIA                       0x0448
   1.708 +#define TT_MS_LANGID_TAMIL_INDIA                       0x0449
   1.709 +#define TT_MS_LANGID_TELUGU_INDIA                      0x044a
   1.710 +#define TT_MS_LANGID_KANNADA_INDIA                     0x044b
   1.711 +#define TT_MS_LANGID_MALAYALAM_INDIA                   0x044c
   1.712 +#define TT_MS_LANGID_ASSAMESE_INDIA                    0x044d
   1.713 +#define TT_MS_LANGID_MARATHI_INDIA                     0x044e
   1.714 +#define TT_MS_LANGID_SANSKRIT_INDIA                    0x044f
   1.715 +#define TT_MS_LANGID_MONGOLIAN_MONGOLIA /* Cyrillic */ 0x0450
   1.716 +#define TT_MS_LANGID_MONGOLIAN_MONGOLIA_MONGOLIAN      0x0850
   1.717 +#define TT_MS_LANGID_TIBETAN_CHINA                     0x0451
   1.718 +  /* Don't use the next constant!  It has            */
   1.719 +  /*   (1) the wrong spelling (Dzonghka)             */
   1.720 +  /*   (2) Microsoft doesn't officially define it -- */
   1.721 +  /*       at least it is not in the List of Local   */
   1.722 +  /*       ID Values.                                */
   1.723 +  /*   (3) Dzongkha is not the same language as      */
   1.724 +  /*       Tibetan, so merging it is wrong anyway.   */
   1.725 +  /*                                                 */
   1.726 +  /* TT_MS_LANGID_TIBETAN_BHUTAN is correct, BTW.    */
   1.727 +#define TT_MS_LANGID_DZONGHKA_BHUTAN                   0x0851
   1.728 +
   1.729 +#if 0
   1.730 +  /* the following used to be defined */
   1.731 +#define TT_MS_LANGID_TIBETAN_BHUTAN                    0x0451
   1.732 +  /* ... but it was changed; */
   1.733 +#else
   1.734 +  /* So we will continue to #define it, but with the correct value */
   1.735 +#define TT_MS_LANGID_TIBETAN_BHUTAN   TT_MS_LANGID_DZONGHKA_BHUTAN
   1.736 +#endif
   1.737 +
   1.738 +#define TT_MS_LANGID_WELSH_WALES                       0x0452
   1.739 +#define TT_MS_LANGID_KHMER_CAMBODIA                    0x0453
   1.740 +#define TT_MS_LANGID_LAO_LAOS                          0x0454
   1.741 +#define TT_MS_LANGID_BURMESE_MYANMAR                   0x0455
   1.742 +#define TT_MS_LANGID_GALICIAN_SPAIN                    0x0456
   1.743 +#define TT_MS_LANGID_KONKANI_INDIA                     0x0457
   1.744 +#define TT_MS_LANGID_MANIPURI_INDIA  /* Bengali */     0x0458
   1.745 +#define TT_MS_LANGID_SINDHI_INDIA /* Arabic */         0x0459
   1.746 +#define TT_MS_LANGID_SINDHI_PAKISTAN                   0x0859
   1.747 +  /* Missing a LCID for Sindhi in Devanagari script */
   1.748 +#define TT_MS_LANGID_SYRIAC_SYRIA                      0x045a
   1.749 +#define TT_MS_LANGID_SINHALESE_SRI_LANKA               0x045b
   1.750 +#define TT_MS_LANGID_CHEROKEE_UNITED_STATES            0x045c
   1.751 +#define TT_MS_LANGID_INUKTITUT_CANADA                  0x045d
   1.752 +#define TT_MS_LANGID_AMHARIC_ETHIOPIA                  0x045e
   1.753 +#define TT_MS_LANGID_TAMAZIGHT_MOROCCO /* Arabic */    0x045f
   1.754 +#define TT_MS_LANGID_TAMAZIGHT_MOROCCO_LATIN           0x085f
   1.755 +  /* Missing a LCID for Tifinagh script */
   1.756 +#define TT_MS_LANGID_KASHMIRI_PAKISTAN /* Arabic */    0x0460
   1.757 +  /* Spelled this way by XPsp2 Platform SDK (2004-07-26) */
   1.758 +  /* script is yet unclear... might be Arabic, Nagari or Sharada */
   1.759 +#define TT_MS_LANGID_KASHMIRI_SASIA                    0x0860
   1.760 +  /* ... and aliased (by MS) for compatibility reasons. */
   1.761 +#define TT_MS_LANGID_KASHMIRI_INDIA TT_MS_LANGID_KASHMIRI_SASIA
   1.762 +#define TT_MS_LANGID_NEPALI_NEPAL                      0x0461
   1.763 +#define TT_MS_LANGID_NEPALI_INDIA                      0x0861
   1.764 +#define TT_MS_LANGID_FRISIAN_NETHERLANDS               0x0462
   1.765 +#define TT_MS_LANGID_PASHTO_AFGHANISTAN                0x0463
   1.766 +#define TT_MS_LANGID_FILIPINO_PHILIPPINES              0x0464
   1.767 +#define TT_MS_LANGID_DHIVEHI_MALDIVES                  0x0465
   1.768 +  /* alias declared in Windows 2000 */
   1.769 +#define TT_MS_LANGID_DIVEHI_MALDIVES  TT_MS_LANGID_DHIVEHI_MALDIVES
   1.770 +#define TT_MS_LANGID_EDO_NIGERIA                       0x0466
   1.771 +#define TT_MS_LANGID_FULFULDE_NIGERIA                  0x0467
   1.772 +#define TT_MS_LANGID_HAUSA_NIGERIA                     0x0468
   1.773 +#define TT_MS_LANGID_IBIBIO_NIGERIA                    0x0469
   1.774 +#define TT_MS_LANGID_YORUBA_NIGERIA                    0x046a
   1.775 +#define TT_MS_LANGID_QUECHUA_BOLIVIA                   0x046b
   1.776 +#define TT_MS_LANGID_QUECHUA_ECUADOR                   0x086b
   1.777 +#define TT_MS_LANGID_QUECHUA_PERU                      0x0c6b
   1.778 +#define TT_MS_LANGID_SEPEDI_SOUTH_AFRICA               0x046c
   1.779 +  /* Also spelled by XPsp2 Platform SDK (2004-07-26) */
   1.780 +#define TT_MS_LANGID_SOTHO_SOUTHERN_SOUTH_AFRICA \
   1.781 +          TT_MS_LANGID_SEPEDI_SOUTH_AFRICA
   1.782 +  /* language codes 0x046d, 0x046e and 0x046f are (still) unknown. */
   1.783 +#define TT_MS_LANGID_IGBO_NIGERIA                      0x0470
   1.784 +#define TT_MS_LANGID_KANURI_NIGERIA                    0x0471
   1.785 +#define TT_MS_LANGID_OROMO_ETHIOPIA                    0x0472
   1.786 +#define TT_MS_LANGID_TIGRIGNA_ETHIOPIA                 0x0473
   1.787 +#define TT_MS_LANGID_TIGRIGNA_ERYTHREA                 0x0873
   1.788 +  /* also spelled in the `Passport SDK' list as: */
   1.789 +#define TT_MS_LANGID_TIGRIGNA_ERYTREA  TT_MS_LANGID_TIGRIGNA_ERYTHREA
   1.790 +#define TT_MS_LANGID_GUARANI_PARAGUAY                  0x0474
   1.791 +#define TT_MS_LANGID_HAWAIIAN_UNITED_STATES            0x0475
   1.792 +#define TT_MS_LANGID_LATIN                             0x0476
   1.793 +#define TT_MS_LANGID_SOMALI_SOMALIA                    0x0477
   1.794 +  /* Note: Yi does not have a (proper) ISO 639-2 code, since it is mostly */
   1.795 +  /*       not written (but OTOH the peculiar writing system is worth     */
   1.796 +  /*       studying).                                                     */
   1.797 +#define TT_MS_LANGID_YI_CHINA                          0x0478
   1.798 +#define TT_MS_LANGID_PAPIAMENTU_NETHERLANDS_ANTILLES   0x0479
   1.799 +  /* language codes from 0x047a to 0x047f are (still) unknown. */
   1.800 +#define TT_MS_LANGID_UIGHUR_CHINA                      0x0480
   1.801 +#define TT_MS_LANGID_MAORI_NEW_ZEALAND                 0x0481
   1.802 +
   1.803 +#if 0  /* not deemed useful for fonts */
   1.804 +#define TT_MS_LANGID_HUMAN_INTERFACE_DEVICE            0x04ff
   1.805 +#endif
   1.806 +
   1.807 +
   1.808 +  /*************************************************************************/
   1.809 +  /*                                                                       */
   1.810 +  /* Possible values of the `name' identifier field in the name records of */
   1.811 +  /* the TTF `name' table.  These values are platform independent.         */
   1.812 +  /*                                                                       */
   1.813 +#define TT_NAME_ID_COPYRIGHT            0
   1.814 +#define TT_NAME_ID_FONT_FAMILY          1
   1.815 +#define TT_NAME_ID_FONT_SUBFAMILY       2
   1.816 +#define TT_NAME_ID_UNIQUE_ID            3
   1.817 +#define TT_NAME_ID_FULL_NAME            4
   1.818 +#define TT_NAME_ID_VERSION_STRING       5
   1.819 +#define TT_NAME_ID_PS_NAME              6
   1.820 +#define TT_NAME_ID_TRADEMARK            7
   1.821 +
   1.822 +  /* the following values are from the OpenType spec */
   1.823 +#define TT_NAME_ID_MANUFACTURER         8
   1.824 +#define TT_NAME_ID_DESIGNER             9
   1.825 +#define TT_NAME_ID_DESCRIPTION          10
   1.826 +#define TT_NAME_ID_VENDOR_URL           11
   1.827 +#define TT_NAME_ID_DESIGNER_URL         12
   1.828 +#define TT_NAME_ID_LICENSE              13
   1.829 +#define TT_NAME_ID_LICENSE_URL          14
   1.830 +  /* number 15 is reserved */
   1.831 +#define TT_NAME_ID_PREFERRED_FAMILY     16
   1.832 +#define TT_NAME_ID_PREFERRED_SUBFAMILY  17
   1.833 +#define TT_NAME_ID_MAC_FULL_NAME        18
   1.834 +
   1.835 +  /* The following code is new as of 2000-01-21 */
   1.836 +#define TT_NAME_ID_SAMPLE_TEXT          19
   1.837 +
   1.838 +  /* This is new in OpenType 1.3 */
   1.839 +#define TT_NAME_ID_CID_FINDFONT_NAME    20
   1.840 +
   1.841 +  /* This is new in OpenType 1.5 */
   1.842 +#define TT_NAME_ID_WWS_FAMILY           21
   1.843 +#define TT_NAME_ID_WWS_SUBFAMILY        22
   1.844 +
   1.845 +
   1.846 +  /*************************************************************************/
   1.847 +  /*                                                                       */
   1.848 +  /* Bit mask values for the Unicode Ranges from the TTF `OS2 ' table.     */
   1.849 +  /*                                                                       */
   1.850 +  /* Updated 08-Nov-2008.                                                  */
   1.851 +  /*                                                                       */
   1.852 +
   1.853 +  /* Bit  0   Basic Latin */
   1.854 +#define TT_UCR_BASIC_LATIN                     (1L <<  0) /* U+0020-U+007E */
   1.855 +  /* Bit  1   C1 Controls and Latin-1 Supplement */
   1.856 +#define TT_UCR_LATIN1_SUPPLEMENT               (1L <<  1) /* U+0080-U+00FF */
   1.857 +  /* Bit  2   Latin Extended-A */
   1.858 +#define TT_UCR_LATIN_EXTENDED_A                (1L <<  2) /* U+0100-U+017F */
   1.859 +  /* Bit  3   Latin Extended-B */
   1.860 +#define TT_UCR_LATIN_EXTENDED_B                (1L <<  3) /* U+0180-U+024F */
   1.861 +  /* Bit  4   IPA Extensions                 */
   1.862 +  /*          Phonetic Extensions            */
   1.863 +  /*          Phonetic Extensions Supplement */
   1.864 +#define TT_UCR_IPA_EXTENSIONS                  (1L <<  4) /* U+0250-U+02AF */
   1.865 +                                                          /* U+1D00-U+1D7F */
   1.866 +                                                          /* U+1D80-U+1DBF */
   1.867 +  /* Bit  5   Spacing Modifier Letters */
   1.868 +  /*          Modifier Tone Letters    */
   1.869 +#define TT_UCR_SPACING_MODIFIER                (1L <<  5) /* U+02B0-U+02FF */
   1.870 +                                                          /* U+A700-U+A71F */
   1.871 +  /* Bit  6   Combining Diacritical Marks            */
   1.872 +  /*          Combining Diacritical Marks Supplement */
   1.873 +#define TT_UCR_COMBINING_DIACRITICS            (1L <<  6) /* U+0300-U+036F */
   1.874 +                                                          /* U+1DC0-U+1DFF */
   1.875 +  /* Bit  7   Greek and Coptic */
   1.876 +#define TT_UCR_GREEK                           (1L <<  7) /* U+0370-U+03FF */
   1.877 +  /* Bit  8   Coptic */
   1.878 +#define TT_UCR_COPTIC                          (1L <<  8) /* U+2C80-U+2CFF */
   1.879 +  /* Bit  9   Cyrillic            */
   1.880 +  /*          Cyrillic Supplement */
   1.881 +  /*          Cyrillic Extended-A */
   1.882 +  /*          Cyrillic Extended-B */
   1.883 +#define TT_UCR_CYRILLIC                        (1L <<  9) /* U+0400-U+04FF */
   1.884 +                                                          /* U+0500-U+052F */
   1.885 +                                                          /* U+2DE0-U+2DFF */
   1.886 +                                                          /* U+A640-U+A69F */
   1.887 +  /* Bit 10   Armenian */
   1.888 +#define TT_UCR_ARMENIAN                        (1L << 10) /* U+0530-U+058F */
   1.889 +  /* Bit 11   Hebrew */
   1.890 +#define TT_UCR_HEBREW                          (1L << 11) /* U+0590-U+05FF */
   1.891 +  /* Bit 12   Vai */
   1.892 +#define TT_UCR_VAI                             (1L << 12) /* U+A500-U+A63F */
   1.893 +  /* Bit 13   Arabic            */
   1.894 +  /*          Arabic Supplement */
   1.895 +#define TT_UCR_ARABIC                          (1L << 13) /* U+0600-U+06FF */
   1.896 +                                                          /* U+0750-U+077F */
   1.897 +  /* Bit 14   NKo */
   1.898 +#define TT_UCR_NKO                             (1L << 14) /* U+07C0-U+07FF */
   1.899 +  /* Bit 15   Devanagari */
   1.900 +#define TT_UCR_DEVANAGARI                      (1L << 15) /* U+0900-U+097F */
   1.901 +  /* Bit 16   Bengali */
   1.902 +#define TT_UCR_BENGALI                         (1L << 16) /* U+0980-U+09FF */
   1.903 +  /* Bit 17   Gurmukhi */
   1.904 +#define TT_UCR_GURMUKHI                        (1L << 17) /* U+0A00-U+0A7F */
   1.905 +  /* Bit 18   Gujarati */
   1.906 +#define TT_UCR_GUJARATI                        (1L << 18) /* U+0A80-U+0AFF */
   1.907 +  /* Bit 19   Oriya */
   1.908 +#define TT_UCR_ORIYA                           (1L << 19) /* U+0B00-U+0B7F */
   1.909 +  /* Bit 20   Tamil */
   1.910 +#define TT_UCR_TAMIL                           (1L << 20) /* U+0B80-U+0BFF */
   1.911 +  /* Bit 21   Telugu */
   1.912 +#define TT_UCR_TELUGU                          (1L << 21) /* U+0C00-U+0C7F */
   1.913 +  /* Bit 22   Kannada */
   1.914 +#define TT_UCR_KANNADA                         (1L << 22) /* U+0C80-U+0CFF */
   1.915 +  /* Bit 23   Malayalam */
   1.916 +#define TT_UCR_MALAYALAM                       (1L << 23) /* U+0D00-U+0D7F */
   1.917 +  /* Bit 24   Thai */
   1.918 +#define TT_UCR_THAI                            (1L << 24) /* U+0E00-U+0E7F */
   1.919 +  /* Bit 25   Lao */
   1.920 +#define TT_UCR_LAO                             (1L << 25) /* U+0E80-U+0EFF */
   1.921 +  /* Bit 26   Georgian            */
   1.922 +  /*          Georgian Supplement */
   1.923 +#define TT_UCR_GEORGIAN                        (1L << 26) /* U+10A0-U+10FF */
   1.924 +                                                          /* U+2D00-U+2D2F */
   1.925 +  /* Bit 27   Balinese */
   1.926 +#define TT_UCR_BALINESE                        (1L << 27) /* U+1B00-U+1B7F */
   1.927 +  /* Bit 28   Hangul Jamo */
   1.928 +#define TT_UCR_HANGUL_JAMO                     (1L << 28) /* U+1100-U+11FF */
   1.929 +  /* Bit 29   Latin Extended Additional */
   1.930 +  /*          Latin Extended-C          */
   1.931 +  /*          Latin Extended-D          */
   1.932 +#define TT_UCR_LATIN_EXTENDED_ADDITIONAL       (1L << 29) /* U+1E00-U+1EFF */
   1.933 +                                                          /* U+2C60-U+2C7F */
   1.934 +                                                          /* U+A720-U+A7FF */
   1.935 +  /* Bit 30   Greek Extended */
   1.936 +#define TT_UCR_GREEK_EXTENDED                  (1L << 30) /* U+1F00-U+1FFF */
   1.937 +  /* Bit 31   General Punctuation      */
   1.938 +  /*          Supplemental Punctuation */
   1.939 +#define TT_UCR_GENERAL_PUNCTUATION             (1L << 31) /* U+2000-U+206F */
   1.940 +                                                          /* U+2E00-U+2E7F */
   1.941 +  /* Bit 32   Superscripts And Subscripts */
   1.942 +#define TT_UCR_SUPERSCRIPTS_SUBSCRIPTS         (1L <<  0) /* U+2070-U+209F */
   1.943 +  /* Bit 33   Currency Symbols */
   1.944 +#define TT_UCR_CURRENCY_SYMBOLS                (1L <<  1) /* U+20A0-U+20CF */
   1.945 +  /* Bit 34   Combining Diacritical Marks For Symbols */
   1.946 +#define TT_UCR_COMBINING_DIACRITICS_SYMB       (1L <<  2) /* U+20D0-U+20FF */
   1.947 +  /* Bit 35   Letterlike Symbols */
   1.948 +#define TT_UCR_LETTERLIKE_SYMBOLS              (1L <<  3) /* U+2100-U+214F */
   1.949 +  /* Bit 36   Number Forms */
   1.950 +#define TT_UCR_NUMBER_FORMS                    (1L <<  4) /* U+2150-U+218F */
   1.951 +  /* Bit 37   Arrows                           */
   1.952 +  /*          Supplemental Arrows-A            */
   1.953 +  /*          Supplemental Arrows-B            */
   1.954 +  /*          Miscellaneous Symbols and Arrows */
   1.955 +#define TT_UCR_ARROWS                          (1L <<  5) /* U+2190-U+21FF */
   1.956 +                                                          /* U+27F0-U+27FF */
   1.957 +                                                          /* U+2900-U+297F */
   1.958 +                                                          /* U+2B00-U+2BFF */
   1.959 +  /* Bit 38   Mathematical Operators               */
   1.960 +  /*          Supplemental Mathematical Operators  */
   1.961 +  /*          Miscellaneous Mathematical Symbols-A */
   1.962 +  /*          Miscellaneous Mathematical Symbols-B */
   1.963 +#define TT_UCR_MATHEMATICAL_OPERATORS          (1L <<  6) /* U+2200-U+22FF */
   1.964 +                                                          /* U+2A00-U+2AFF */
   1.965 +                                                          /* U+27C0-U+27EF */
   1.966 +                                                          /* U+2980-U+29FF */
   1.967 +  /* Bit 39 Miscellaneous Technical */
   1.968 +#define TT_UCR_MISCELLANEOUS_TECHNICAL         (1L <<  7) /* U+2300-U+23FF */
   1.969 +  /* Bit 40   Control Pictures */
   1.970 +#define TT_UCR_CONTROL_PICTURES                (1L <<  8) /* U+2400-U+243F */
   1.971 +  /* Bit 41   Optical Character Recognition */
   1.972 +#define TT_UCR_OCR                             (1L <<  9) /* U+2440-U+245F */
   1.973 +  /* Bit 42   Enclosed Alphanumerics */
   1.974 +#define TT_UCR_ENCLOSED_ALPHANUMERICS          (1L << 10) /* U+2460-U+24FF */
   1.975 +  /* Bit 43   Box Drawing */
   1.976 +#define TT_UCR_BOX_DRAWING                     (1L << 11) /* U+2500-U+257F */
   1.977 +  /* Bit 44   Block Elements */
   1.978 +#define TT_UCR_BLOCK_ELEMENTS                  (1L << 12) /* U+2580-U+259F */
   1.979 +  /* Bit 45   Geometric Shapes */
   1.980 +#define TT_UCR_GEOMETRIC_SHAPES                (1L << 13) /* U+25A0-U+25FF */
   1.981 +  /* Bit 46   Miscellaneous Symbols */
   1.982 +#define TT_UCR_MISCELLANEOUS_SYMBOLS           (1L << 14) /* U+2600-U+26FF */
   1.983 +  /* Bit 47   Dingbats */
   1.984 +#define TT_UCR_DINGBATS                        (1L << 15) /* U+2700-U+27BF */
   1.985 +  /* Bit 48   CJK Symbols and Punctuation */
   1.986 +#define TT_UCR_CJK_SYMBOLS                     (1L << 16) /* U+3000-U+303F */
   1.987 +  /* Bit 49   Hiragana */
   1.988 +#define TT_UCR_HIRAGANA                        (1L << 17) /* U+3040-U+309F */
   1.989 +  /* Bit 50   Katakana                     */
   1.990 +  /*          Katakana Phonetic Extensions */
   1.991 +#define TT_UCR_KATAKANA                        (1L << 18) /* U+30A0-U+30FF */
   1.992 +                                                          /* U+31F0-U+31FF */
   1.993 +  /* Bit 51   Bopomofo          */
   1.994 +  /*          Bopomofo Extended */
   1.995 +#define TT_UCR_BOPOMOFO                        (1L << 19) /* U+3100-U+312F */
   1.996 +                                                          /* U+31A0-U+31BF */
   1.997 +  /* Bit 52   Hangul Compatibility Jamo */
   1.998 +#define TT_UCR_HANGUL_COMPATIBILITY_JAMO       (1L << 20) /* U+3130-U+318F */
   1.999 +  /* Bit 53   Phags-Pa */
  1.1000 +#define TT_UCR_CJK_MISC                        (1L << 21) /* U+A840-U+A87F */
  1.1001 +#define TT_UCR_KANBUN  TT_UCR_CJK_MISC /* deprecated */
  1.1002 +#define TT_UCR_PHAGSPA
  1.1003 +  /* Bit 54   Enclosed CJK Letters and Months */
  1.1004 +#define TT_UCR_ENCLOSED_CJK_LETTERS_MONTHS     (1L << 22) /* U+3200-U+32FF */
  1.1005 +  /* Bit 55   CJK Compatibility */
  1.1006 +#define TT_UCR_CJK_COMPATIBILITY               (1L << 23) /* U+3300-U+33FF */
  1.1007 +  /* Bit 56   Hangul Syllables */
  1.1008 +#define TT_UCR_HANGUL                          (1L << 24) /* U+AC00-U+D7A3 */
  1.1009 +  /* Bit 57   High Surrogates              */
  1.1010 +  /*          High Private Use Surrogates  */
  1.1011 +  /*          Low Surrogates               */
  1.1012 +  /*                                       */
  1.1013 +  /* According to OpenType specs v.1.3+,   */
  1.1014 +  /* setting bit 57 implies that there is  */
  1.1015 +  /* at least one codepoint beyond the     */
  1.1016 +  /* Basic Multilingual Plane that is      */
  1.1017 +  /* supported by this font.  So it really */
  1.1018 +  /* means >= U+10000                      */
  1.1019 +#define TT_UCR_SURROGATES                      (1L << 25) /* U+D800-U+DB7F */
  1.1020 +                                                          /* U+DB80-U+DBFF */
  1.1021 +                                                          /* U+DC00-U+DFFF */
  1.1022 +#define TT_UCR_NON_PLANE_0  TT_UCR_SURROGATES
  1.1023 +  /* Bit 58  Phoenician */
  1.1024 +#define TT_UCR_PHOENICIAN                      (1L << 26) /*U+10900-U+1091F*/
  1.1025 +  /* Bit 59   CJK Unified Ideographs             */
  1.1026 +  /*          CJK Radicals Supplement            */
  1.1027 +  /*          Kangxi Radicals                    */
  1.1028 +  /*          Ideographic Description Characters */
  1.1029 +  /*          CJK Unified Ideographs Extension A */
  1.1030 +  /*          CJK Unified Ideographs Extension B */
  1.1031 +  /*          Kanbun                             */
  1.1032 +#define TT_UCR_CJK_UNIFIED_IDEOGRAPHS          (1L << 27) /* U+4E00-U+9FFF */
  1.1033 +                                                          /* U+2E80-U+2EFF */
  1.1034 +                                                          /* U+2F00-U+2FDF */
  1.1035 +                                                          /* U+2FF0-U+2FFF */
  1.1036 +                                                          /* U+3400-U+4DB5 */
  1.1037 +                                                          /*U+20000-U+2A6DF*/
  1.1038 +                                                          /* U+3190-U+319F */
  1.1039 +  /* Bit 60   Private Use */
  1.1040 +#define TT_UCR_PRIVATE_USE                     (1L << 28) /* U+E000-U+F8FF */
  1.1041 +  /* Bit 61   CJK Strokes                             */
  1.1042 +  /*          CJK Compatibility Ideographs            */
  1.1043 +  /*          CJK Compatibility Ideographs Supplement */
  1.1044 +#define TT_UCR_CJK_COMPATIBILITY_IDEOGRAPHS    (1L << 29) /* U+31C0-U+31EF */
  1.1045 +                                                          /* U+F900-U+FAFF */
  1.1046 +                                                          /*U+2F800-U+2FA1F*/
  1.1047 +  /* Bit 62   Alphabetic Presentation Forms */
  1.1048 +#define TT_UCR_ALPHABETIC_PRESENTATION_FORMS   (1L << 30) /* U+FB00-U+FB4F */
  1.1049 +  /* Bit 63   Arabic Presentation Forms-A */
  1.1050 +#define TT_UCR_ARABIC_PRESENTATIONS_A          (1L << 31) /* U+FB50-U+FDFF */
  1.1051 +  /* Bit 64   Combining Half Marks */
  1.1052 +#define TT_UCR_COMBINING_HALF_MARKS            (1L <<  0) /* U+FE20-U+FE2F */
  1.1053 +  /* Bit 65   Vertical forms          */
  1.1054 +  /*          CJK Compatibility Forms */
  1.1055 +#define TT_UCR_CJK_COMPATIBILITY_FORMS         (1L <<  1) /* U+FE10-U+FE1F */
  1.1056 +                                                          /* U+FE30-U+FE4F */
  1.1057 +  /* Bit 66   Small Form Variants */
  1.1058 +#define TT_UCR_SMALL_FORM_VARIANTS             (1L <<  2) /* U+FE50-U+FE6F */
  1.1059 +  /* Bit 67   Arabic Presentation Forms-B */
  1.1060 +#define TT_UCR_ARABIC_PRESENTATIONS_B          (1L <<  3) /* U+FE70-U+FEFE */
  1.1061 +  /* Bit 68   Halfwidth and Fullwidth Forms */
  1.1062 +#define TT_UCR_HALFWIDTH_FULLWIDTH_FORMS       (1L <<  4) /* U+FF00-U+FFEF */
  1.1063 +  /* Bit 69   Specials */
  1.1064 +#define TT_UCR_SPECIALS                        (1L <<  5) /* U+FFF0-U+FFFD */
  1.1065 +  /* Bit 70   Tibetan */
  1.1066 +#define TT_UCR_TIBETAN                         (1L <<  6) /* U+0F00-U+0FFF */
  1.1067 +  /* Bit 71   Syriac */
  1.1068 +#define TT_UCR_SYRIAC                          (1L <<  7) /* U+0700-U+074F */
  1.1069 +  /* Bit 72   Thaana */
  1.1070 +#define TT_UCR_THAANA                          (1L <<  8) /* U+0780-U+07BF */
  1.1071 +  /* Bit 73   Sinhala */
  1.1072 +#define TT_UCR_SINHALA                         (1L <<  9) /* U+0D80-U+0DFF */
  1.1073 +  /* Bit 74   Myanmar */
  1.1074 +#define TT_UCR_MYANMAR                         (1L << 10) /* U+1000-U+109F */
  1.1075 +  /* Bit 75   Ethiopic            */
  1.1076 +  /*          Ethiopic Supplement */
  1.1077 +  /*          Ethiopic Extended   */
  1.1078 +#define TT_UCR_ETHIOPIC                        (1L << 11) /* U+1200-U+137F */
  1.1079 +                                                          /* U+1380-U+139F */
  1.1080 +                                                          /* U+2D80-U+2DDF */
  1.1081 +  /* Bit 76   Cherokee */
  1.1082 +#define TT_UCR_CHEROKEE                        (1L << 12) /* U+13A0-U+13FF */
  1.1083 +  /* Bit 77   Unified Canadian Aboriginal Syllabics */
  1.1084 +#define TT_UCR_CANADIAN_ABORIGINAL_SYLLABICS   (1L << 13) /* U+1400-U+167F */
  1.1085 +  /* Bit 78   Ogham */
  1.1086 +#define TT_UCR_OGHAM                           (1L << 14) /* U+1680-U+169F */
  1.1087 +  /* Bit 79   Runic */
  1.1088 +#define TT_UCR_RUNIC                           (1L << 15) /* U+16A0-U+16FF */
  1.1089 +  /* Bit 80   Khmer         */
  1.1090 +  /*          Khmer Symbols */
  1.1091 +#define TT_UCR_KHMER                           (1L << 16) /* U+1780-U+17FF */
  1.1092 +                                                          /* U+19E0-U+19FF */
  1.1093 +  /* Bit 81   Mongolian */
  1.1094 +#define TT_UCR_MONGOLIAN                       (1L << 17) /* U+1800-U+18AF */
  1.1095 +  /* Bit 82   Braille Patterns */
  1.1096 +#define TT_UCR_BRAILLE                         (1L << 18) /* U+2800-U+28FF */
  1.1097 +  /* Bit 83   Yi Syllables */
  1.1098 +  /*          Yi Radicals  */
  1.1099 +#define TT_UCR_YI                              (1L << 19) /* U+A000-U+A48F */
  1.1100 +                                                          /* U+A490-U+A4CF */
  1.1101 +  /* Bit 84   Tagalog  */
  1.1102 +  /*          Hanunoo  */
  1.1103 +  /*          Buhid    */
  1.1104 +  /*          Tagbanwa */
  1.1105 +#define TT_UCR_PHILIPPINE                      (1L << 20) /* U+1700-U+171F */
  1.1106 +                                                          /* U+1720-U+173F */
  1.1107 +                                                          /* U+1740-U+175F */
  1.1108 +                                                          /* U+1760-U+177F */
  1.1109 +  /* Bit 85   Old Italic */
  1.1110 +#define TT_UCR_OLD_ITALIC                      (1L << 21) /*U+10300-U+1032F*/
  1.1111 +  /* Bit 86   Gothic */
  1.1112 +#define TT_UCR_GOTHIC                          (1L << 22) /*U+10330-U+1034F*/
  1.1113 +  /* Bit 87   Deseret */
  1.1114 +#define TT_UCR_DESERET                         (1L << 23) /*U+10400-U+1044F*/
  1.1115 +  /* Bit 88   Byzantine Musical Symbols      */
  1.1116 +  /*          Musical Symbols                */
  1.1117 +  /*          Ancient Greek Musical Notation */
  1.1118 +#define TT_UCR_MUSICAL_SYMBOLS                 (1L << 24) /*U+1D000-U+1D0FF*/
  1.1119 +                                                          /*U+1D100-U+1D1FF*/
  1.1120 +                                                          /*U+1D200-U+1D24F*/
  1.1121 +  /* Bit 89   Mathematical Alphanumeric Symbols */
  1.1122 +#define TT_UCR_MATH_ALPHANUMERIC_SYMBOLS       (1L << 25) /*U+1D400-U+1D7FF*/
  1.1123 +  /* Bit 90   Private Use (plane 15) */
  1.1124 +  /*          Private Use (plane 16) */
  1.1125 +#define TT_UCR_PRIVATE_USE_SUPPLEMENTARY       (1L << 26) /*U+F0000-U+FFFFD*/
  1.1126 +                                                        /*U+100000-U+10FFFD*/
  1.1127 +  /* Bit 91   Variation Selectors            */
  1.1128 +  /*          Variation Selectors Supplement */
  1.1129 +#define TT_UCR_VARIATION_SELECTORS             (1L << 27) /* U+FE00-U+FE0F */
  1.1130 +                                                          /*U+E0100-U+E01EF*/
  1.1131 +  /* Bit 92   Tags */
  1.1132 +#define TT_UCR_TAGS                            (1L << 28) /*U+E0000-U+E007F*/
  1.1133 +  /* Bit 93   Limbu */
  1.1134 +#define TT_UCR_LIMBU                           (1L << 29) /* U+1900-U+194F */
  1.1135 +  /* Bit 94   Tai Le */
  1.1136 +#define TT_UCR_TAI_LE                          (1L << 30) /* U+1950-U+197F */
  1.1137 +  /* Bit 95   New Tai Lue */
  1.1138 +#define TT_UCR_NEW_TAI_LUE                     (1L << 31) /* U+1980-U+19DF */
  1.1139 +  /* Bit 96   Buginese */
  1.1140 +#define TT_UCR_BUGINESE                        (1L <<  0) /* U+1A00-U+1A1F */
  1.1141 +  /* Bit 97   Glagolitic */
  1.1142 +#define TT_UCR_GLAGOLITIC                      (1L <<  1) /* U+2C00-U+2C5F */
  1.1143 +  /* Bit 98   Tifinagh */
  1.1144 +#define TT_UCR_TIFINAGH                        (1L <<  2) /* U+2D30-U+2D7F */
  1.1145 +  /* Bit 99   Yijing Hexagram Symbols */
  1.1146 +#define TT_UCR_YIJING                          (1L <<  3) /* U+4DC0-U+4DFF */
  1.1147 +  /* Bit 100  Syloti Nagri */
  1.1148 +#define TT_UCR_SYLOTI_NAGRI                    (1L <<  4) /* U+A800-U+A82F */
  1.1149 +  /* Bit 101  Linear B Syllabary */
  1.1150 +  /*          Linear B Ideograms */
  1.1151 +  /*          Aegean Numbers     */
  1.1152 +#define TT_UCR_LINEAR_B                        (1L <<  5) /*U+10000-U+1007F*/
  1.1153 +                                                          /*U+10080-U+100FF*/
  1.1154 +                                                          /*U+10100-U+1013F*/
  1.1155 +  /* Bit 102  Ancient Greek Numbers */
  1.1156 +#define TT_UCR_ANCIENT_GREEK_NUMBERS           (1L <<  6) /*U+10140-U+1018F*/
  1.1157 +  /* Bit 103  Ugaritic */
  1.1158 +#define TT_UCR_UGARITIC                        (1L <<  7) /*U+10380-U+1039F*/
  1.1159 +  /* Bit 104  Old Persian */
  1.1160 +#define TT_UCR_OLD_PERSIAN                     (1L <<  8) /*U+103A0-U+103DF*/
  1.1161 +  /* Bit 105  Shavian */
  1.1162 +#define TT_UCR_SHAVIAN                         (1L <<  9) /*U+10450-U+1047F*/
  1.1163 +  /* Bit 106  Osmanya */
  1.1164 +#define TT_UCR_OSMANYA                         (1L << 10) /*U+10480-U+104AF*/
  1.1165 +  /* Bit 107  Cypriot Syllabary */
  1.1166 +#define TT_UCR_CYPRIOT_SYLLABARY               (1L << 11) /*U+10800-U+1083F*/
  1.1167 +  /* Bit 108  Kharoshthi */
  1.1168 +#define TT_UCR_KHAROSHTHI                      (1L << 12) /*U+10A00-U+10A5F*/
  1.1169 +  /* Bit 109  Tai Xuan Jing Symbols */
  1.1170 +#define TT_UCR_TAI_XUAN_JING                   (1L << 13) /*U+1D300-U+1D35F*/
  1.1171 +  /* Bit 110  Cuneiform                         */
  1.1172 +  /*          Cuneiform Numbers and Punctuation */
  1.1173 +#define TT_UCR_CUNEIFORM                       (1L << 14) /*U+12000-U+123FF*/
  1.1174 +                                                          /*U+12400-U+1247F*/
  1.1175 +  /* Bit 111  Counting Rod Numerals */
  1.1176 +#define TT_UCR_COUNTING_ROD_NUMERALS           (1L << 15) /*U+1D360-U+1D37F*/
  1.1177 +  /* Bit 112  Sundanese */
  1.1178 +#define TT_UCR_SUNDANESE                       (1L << 16) /* U+1B80-U+1BBF */
  1.1179 +  /* Bit 113  Lepcha */
  1.1180 +#define TT_UCR_LEPCHA                          (1L << 17) /* U+1C00-U+1C4F */
  1.1181 +  /* Bit 114  Ol Chiki */
  1.1182 +#define TT_UCR_OL_CHIKI                        (1L << 18) /* U+1C50-U+1C7F */
  1.1183 +  /* Bit 115  Saurashtra */
  1.1184 +#define TT_UCR_SAURASHTRA                      (1L << 19) /* U+A880-U+A8DF */
  1.1185 +  /* Bit 116  Kayah Li */
  1.1186 +#define TT_UCR_KAYAH_LI                        (1L << 20) /* U+A900-U+A92F */
  1.1187 +  /* Bit 117  Rejang */
  1.1188 +#define TT_UCR_REJANG                          (1L << 21) /* U+A930-U+A95F */
  1.1189 +  /* Bit 118  Cham */
  1.1190 +#define TT_UCR_CHAM                            (1L << 22) /* U+AA00-U+AA5F */
  1.1191 +  /* Bit 119  Ancient Symbols */
  1.1192 +#define TT_UCR_ANCIENT_SYMBOLS                 (1L << 23) /*U+10190-U+101CF*/
  1.1193 +  /* Bit 120  Phaistos Disc */
  1.1194 +#define TT_UCR_PHAISTOS_DISC                   (1L << 24) /*U+101D0-U+101FF*/
  1.1195 +  /* Bit 121  Carian */
  1.1196 +  /*          Lycian */
  1.1197 +  /*          Lydian */
  1.1198 +#define TT_UCR_OLD_ANATOLIAN                   (1L << 25) /*U+102A0-U+102DF*/
  1.1199 +                                                          /*U+10280-U+1029F*/
  1.1200 +                                                          /*U+10920-U+1093F*/
  1.1201 +  /* Bit 122  Domino Tiles  */
  1.1202 +  /*          Mahjong Tiles */
  1.1203 +#define TT_UCR_GAME_TILES                      (1L << 26) /*U+1F030-U+1F09F*/
  1.1204 +                                                          /*U+1F000-U+1F02F*/
  1.1205 +  /* Bit 123-127 Reserved for process-internal usage */
  1.1206 +
  1.1207 +
  1.1208 +  /*************************************************************************/
  1.1209 +  /*                                                                       */
  1.1210 +  /* Some compilers have a very limited length of identifiers.             */
  1.1211 +  /*                                                                       */
  1.1212 +#if defined( __TURBOC__ ) && __TURBOC__ < 0x0410 || defined( __PACIFIC__ )
  1.1213 +#define HAVE_LIMIT_ON_IDENTS
  1.1214 +#endif
  1.1215 +
  1.1216 +
  1.1217 +#ifndef HAVE_LIMIT_ON_IDENTS
  1.1218 +
  1.1219 +
  1.1220 +  /*************************************************************************/
  1.1221 +  /*                                                                       */
  1.1222 +  /* Here some alias #defines in order to be clearer.                      */
  1.1223 +  /*                                                                       */
  1.1224 +  /* These are not always #defined to stay within the 31~character limit   */
  1.1225 +  /* which some compilers have.                                            */
  1.1226 +  /*                                                                       */
  1.1227 +  /* Credits go to Dave Hoo <dhoo@flash.net> for pointing out that modern  */
  1.1228 +  /* Borland compilers (read: from BC++ 3.1 on) can increase this limit.   */
  1.1229 +  /* If you get a warning with such a compiler, use the -i40 switch.       */
  1.1230 +  /*                                                                       */
  1.1231 +#define TT_UCR_ARABIC_PRESENTATION_FORMS_A      \
  1.1232 +         TT_UCR_ARABIC_PRESENTATIONS_A
  1.1233 +#define TT_UCR_ARABIC_PRESENTATION_FORMS_B      \
  1.1234 +         TT_UCR_ARABIC_PRESENTATIONS_B
  1.1235 +
  1.1236 +#define TT_UCR_COMBINING_DIACRITICAL_MARKS      \
  1.1237 +         TT_UCR_COMBINING_DIACRITICS
  1.1238 +#define TT_UCR_COMBINING_DIACRITICAL_MARKS_SYMB \
  1.1239 +         TT_UCR_COMBINING_DIACRITICS_SYMB
  1.1240 +
  1.1241 +
  1.1242 +#endif /* !HAVE_LIMIT_ON_IDENTS */
  1.1243 +
  1.1244 +
  1.1245 +FT_END_HEADER
  1.1246 +
  1.1247 +#endif /* __TTNAMEID_H__ */
  1.1248 +
  1.1249 +
  1.1250 +/* END */