blob: 54e71cb31da20d074c297601946a57ff9c8c4e66 [file] [log] [blame]
/*
* @(#)loengine.cpp 1.0 00/12/07
*
* (C) Copyright IBM Corp. 1998, 1999, 2000 - All Rights Reserved
*
*/
#include "unicode/loengine.h"
#include "layout/LEScripts.h"
//
// This table maps ICU's EUnicodeScript values,
// which are really Unicode blocks and not scripts,
// into the LayoutEngines script codes, as defined
// in LEScripts.h.
//
// NOTE: it's important to keep this list in synch
// both with EUnicodeScripts and LEScripts...
//
int32_t ICULayoutEngine::le_scriptCodes[] = {
latnScriptCode, // kBasicLatin
latnScriptCode, // kLatin1Supplement
latnScriptCode, // kLatinExtendedA
latnScriptCode, // kLatinExtendedB
latnScriptCode, // kIPAExtension
neutScriptCode, // kSpacingModifier
neutScriptCode, // kCombiningDiacritical
grekScriptCode, // kGreek
cyrlScriptCode, // kCyrillic
armnScriptCode, // kArmenian
hebrScriptCode, // kHebrew
arabScriptCode, // kArabic
neutScriptCode, // kSyriac **** FIXME: need LEScriptCode ****
neutScriptCode, // kThaana **** FIXME: need LEScriptCode ****
devaScriptCode, // kDevanagari
bengScriptCode, // kBengali
punjScriptCode, // kGurmukhi
gujrScriptCode, // kGujarati
oryaScriptCode, // kOriya
tamlScriptCode, // kTamil
teluScriptCode, // kTelugu
kndaScriptCode, // kKannada
mlymScriptCode, // kMalayalam
neutScriptCode, // kSinhala **** FIXME: need LEScriptCode ****
thaiScriptCode, // kThai
laoScriptCode, // kLao
tibtScriptCode, // kTibetan
neutScriptCode, // kMyanmar **** FIXME: need LEScriptCode ****
grgnScriptCode, // kGeorgian
hangScriptCode, // kHangulJamo
neutScriptCode, // kEthiopic **** FIXME: need LEScriptCode ****
neutScriptCode, // kCherokee **** FIXME: need LEScriptCode ****
neutScriptCode, // kUnifiedCanadianAboriginalSyllabics **** FIXME: need LEScriptCode ****
neutScriptCode, // kogham **** FIXME: need LEScriptCode ****
neutScriptCode, // kRunic **** FIXME: need LEScriptCode ****
neutScriptCode, // kKhmer **** FIXME: need LEScriptCode ****
neutScriptCode, // kMongolian **** FIXME: need LEScriptCode ****
latnScriptCode, // kLatinExtendedAdditional
grekScriptCode, // kGreekExtended
neutScriptCode, // kGeneralPunctuation
neutScriptCode, // kSuperSubScript
neutScriptCode, // kCurrencySymbolScript
neutScriptCode, // kSymbolCombiningMark
neutScriptCode, // kLetterlikeSymbol
neutScriptCode, // kNumberForm
neutScriptCode, // kArrow
neutScriptCode, // kMathOperator
neutScriptCode, // kMiscTechnical
neutScriptCode, // kControlPicture
neutScriptCode, // kOpticalCharacter
neutScriptCode, // kEnclosedAlphanumeric
neutScriptCode, // kBoxDrawing
neutScriptCode, // kBlockElement
neutScriptCode, // kGeometricShape
neutScriptCode, // kMiscSymbol
neutScriptCode, // kDingbat
neutScriptCode, // kBraillePatterns **** FIXME: need LEScriptCode ****
neutScriptCode, // kCJKRadicalsSupplement **** FIXME: need LEScriptCode ****
neutScriptCode, // kKangxiRadicals **** FIXME: need LEScriptCode ****
neutScriptCode, // kIdeographicDescriptionCharacters **** FIXME: need LEScriptCode ****
neutScriptCode, // kCJKSymbolPunctuation
kanaScriptCode, // kHiragana
kanaScriptCode, // kKatakana
bpmfScriptCode, // kBopomofo
hangScriptCode, // kHangulCompatibilityJamo
knbnScriptCode, // kKanbun
bpmfScriptCode, // kBopomofoExtended
haniScriptCode, // kEnclosedCJKLetterMonth
haniScriptCode, // kCJKCompatibility
haniScriptCode, // kCJKUnifiedIdeographExtensionA
haniScriptCode, // kCJKUnifiedIdeograph
neutScriptCode, // kYiSyllables **** FIXME: need LEScriptCode ****
neutScriptCode, // kYiRadicals **** FIXME: need LEScriptCode ****
hangScriptCode, // kHangulSyllable
surrScriptCode, // kHighSurrogate
surrScriptCode, // kHighPrivateUseSurrogate
surrScriptCode, // kLowSurrogate
puseScriptCode, // kPrivateUse
haniScriptCode, // kCJKCompatibilityIdeograph
neutScriptCode, // kAlphabeticPresentation
arabScriptCode, // kArabicPresentationA
neutScriptCode, // kCombiningHalfMark
haniScriptCode, // kCJKCompatibilityForm
neutScriptCode, // kSmallFormVariant
arabScriptCode, // kArabicPresentationB
neutScriptCode, // kNoScript
neutScriptCode // kHalfwidthFullwidthForm **** FIXME: should be ASCII, CJK, KANA, HANGUL ****
};