110 lines
4.9 KiB
C++
110 lines
4.9 KiB
C++
|
/*
|
||
|
* @(#)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 ****
|
||
|
};
|
||
|
|