Mac OS 9
Script.h File Reference

Merged in to "Script.h". Please update your source code to directly #include <Script.h> More...

#include <MacTypes.h>
#include <IntlResources.h>

Go to the source code of this file.

Data Structures

struct  TokenRec
 
struct  TokenBlock
 

Typedefs

typedef SInt8 TokenResults
 
typedef char CharByteTable[256]
 
typedef short ScriptTokenType
 
typedef ScriptTokenType DelimType[2]
 
typedef ScriptTokenType CommentType[4]
 
typedef struct TokenRec TokenRec
 
typedef TokenRecTokenRecPtr
 
typedef struct TokenBlock TokenBlock
 
typedef TokenBlockTokenBlockPtr
 

Enumerations

enum  { smSystemScript = -1 , smCurrentScript = -2 , smAllScripts = -3 }
 
enum  {
  smRoman = 0 , smJapanese = 1 , smTradChinese = 2 , smKorean = 3 ,
  smArabic = 4 , smHebrew = 5 , smGreek = 6 , smCyrillic = 7 ,
  smRSymbol = 8 , smDevanagari = 9 , smGurmukhi = 10 , smGujarati = 11 ,
  smOriya = 12 , smBengali = 13 , smTamil = 14 , smTelugu = 15 ,
  smKannada = 16 , smMalayalam = 17 , smSinhalese = 18 , smBurmese = 19 ,
  smKhmer = 20 , smThai = 21 , smLao = 22 , smGeorgian = 23 ,
  smArmenian = 24 , smSimpChinese = 25 , smTibetan = 26 , smMongolian = 27 ,
  smEthiopic = 28 , smGeez = 28 , smCentralEuroRoman , smVietnamese = 30 ,
  smExtArabic = 31 , smUninterp = 32
}
 
enum  { smUnicodeScript = 0x7E }
 
enum  {
  smChinese = 2 , smRussian = 7 , smLaotian = 22 , smAmharic = 28 ,
  smSlavic = 29 , smEastEurRoman = 29 , smSindhi = 31 , smKlingon = 32
}
 
enum  {
  langEnglish = 0 , langFrench = 1 , langGerman = 2 , langItalian = 3 ,
  langDutch = 4 , langSwedish = 5 , langSpanish = 6 , langDanish = 7 ,
  langPortuguese = 8 , langNorwegian = 9 , langHebrew = 10 , langJapanese = 11 ,
  langArabic = 12 , langFinnish = 13 , langGreek = 14 , langIcelandic = 15 ,
  langMaltese = 16 , langTurkish = 17 , langCroatian = 18 , langTradChinese = 19 ,
  langUrdu = 20 , langHindi = 21 , langThai = 22 , langKorean = 23
}
 
enum  {
  langLithuanian = 24 , langPolish = 25 , langHungarian = 26 , langEstonian = 27 ,
  langLatvian = 28 , langSami = 29 , langFaroese = 30 , langFarsi = 31 ,
  langPersian = 31 , langRussian = 32 , langSimpChinese = 33 , langFlemish = 34 ,
  langIrishGaelic , langAlbanian = 36 , langRomanian = 37 , langCzech = 38 ,
  langSlovak = 39 , langSlovenian = 40 , langYiddish = 41 , langSerbian = 42 ,
  langMacedonian = 43 , langBulgarian = 44 , langUkrainian = 45 , langByelorussian = 46 ,
  langBelorussian = 46
}
 
enum  {
  langUzbek = 47 , langKazakh = 48 , langAzerbaijani = 49 , langAzerbaijanAr = 50 ,
  langArmenian = 51 , langGeorgian = 52 , langMoldavian = 53 , langKirghiz = 54 ,
  langTajiki = 55 , langTurkmen = 56 , langMongolian = 57 , langMongolianCyr = 58 ,
  langPashto = 59 , langKurdish = 60 , langKashmiri = 61 , langSindhi = 62 ,
  langTibetan = 63 , langNepali = 64 , langSanskrit = 65 , langMarathi = 66 ,
  langBengali = 67 , langAssamese = 68 , langGujarati = 69 , langPunjabi = 70
}
 
enum  {
  langOriya = 71 , langMalayalam = 72 , langKannada = 73 , langTamil = 74 ,
  langTelugu = 75 , langSinhalese = 76 , langBurmese = 77 , langKhmer = 78 ,
  langLao = 79 , langVietnamese = 80 , langIndonesian = 81 , langTagalog = 82 ,
  langMalayRoman = 83 , langMalayArabic = 84 , langAmharic = 85 , langTigrinya = 86 ,
  langOromo = 87 , langSomali = 88 , langSwahili = 89 , langKinyarwanda = 90 ,
  langRuanda = 90 , langRundi = 91 , langNyanja = 92 , langChewa = 92 ,
  langMalagasy = 93 , langEsperanto = 94
}
 
enum  {
  langWelsh = 128 , langBasque = 129 , langCatalan = 130 , langLatin = 131 ,
  langQuechua = 132 , langGuarani = 133 , langAymara = 134 , langTatar = 135 ,
  langUighur = 136 , langDzongkha = 137 , langJavaneseRom = 138 , langSundaneseRom = 139 ,
  langGalician = 140 , langAfrikaans = 141
}
 
enum  {
  langBreton = 142 , langInuktitut = 143 , langScottishGaelic = 144 , langManxGaelic = 145 ,
  langIrishGaelicScript , langTongan = 147 , langGreekPoly = 148 , langGreenlandic = 149 ,
  langAzerbaijanRoman = 150
}
 
enum  { langUnspecified }
 
enum  {
  langPortugese = 8 , langMalta = 16 , langYugoslavian = 18 , langChinese = 19 ,
  langLettish = 28 , langLapponian = 29 , langLappish = 29 , langSaamisk = 29 ,
  langFaeroese = 30 , langIrish = 35 , langGalla = 87 , langAfricaans = 141
}
 
enum  {
  verUS = 0 , verFrance = 1 , verBritain = 2 , verGermany = 3 ,
  verItaly = 4 , verNetherlands = 5 , verFlemish = 6 , verSweden = 7 ,
  verSpain = 8 , verDenmark = 9 , verPortugal = 10 , verFrCanada = 11 ,
  verNorway = 12 , verIsrael = 13 , verJapan = 14 , verAustralia = 15 ,
  verArabic , verFinland = 17 , verFrSwiss = 18 , verGrSwiss = 19 ,
  verGreece = 20 , verIceland = 21 , verMalta = 22 , verCyprus = 23 ,
  verTurkey = 24 , verYugoCroatian
}
 
enum  {
  verNetherlandsComma = 26 , verBelgiumLuxPoint = 27 , verCanadaComma = 28 , verCanadaPoint ,
  vervariantPortugal = 30 , vervariantNorway = 31 , vervariantDenmark
}
 
enum  {
  verIndiaHindi = 33 , verPakistanUrdu = 34 , verTurkishModified = 35 , verItalianSwiss = 36 ,
  verInternational = 37 , verRomania = 39 , verGreecePoly = 40 , verLithuania = 41 ,
  verPoland = 42 , verHungary = 43 , verEstonia = 44 , verLatvia = 45 ,
  verSami = 46 , verFaroeIsl = 47 , verIran = 48 , verRussia = 49 ,
  verIreland , verKorea = 51 , verChina = 52 , verTaiwan = 53 ,
  verThailand = 54 , verScriptGeneric , verCzech = 56 , verSlovak = 57 ,
  verFarEastGeneric , verMagyar = 59 , verBengali = 60 , verByeloRussian = 61
}
 
enum  {
  verUkraine = 62 , verGreeceAlt = 64 , verSerbian = 65 , verSlovenian = 66 ,
  verMacedonian = 67 , verCroatia = 68 , verGermanReformed = 70 , verBrazil = 71 ,
  verBulgaria = 72 , verCatalonia = 73 , verMultilingual = 74 , verScottishGaelic = 75 ,
  verManxGaelic = 76 , verBreton = 77 , verNunavut = 78 , verWelsh = 79 ,
  verIrishGaelicScript , verEngCanada = 82 , verBhutan = 83 , verArmenian = 84 ,
  verGeorgian = 85 , verSpLatinAmerica = 86 , verTonga = 88 , verFrenchUniversal = 91 ,
  verAustria = 92 , verGujarati = 94 , verPunjabi = 95 , verIndiaUrdu = 96 ,
  verVietnam = 97
}
 
enum  {
  verFrBelgium = 98 , verUzbek = 99 , verSingapore = 100 , verNynorsk = 101 ,
  verAfrikaans = 102 , verEsperanto = 103 , verMarathi = 104 , verTibetan = 105 ,
  verNepal = 106 , verGreenland = 107 , verIrelandEnglish
}
 
enum  {
  verFrBelgiumLux , verBelgiumLux = 6 , verArabia = 16 , verYugoslavia = 25 ,
  verIndia = 33 , verPakistan = 34 , verRumania = 39 , verGreekAncient = 40 ,
  verLapland = 46 , verFaeroeIsl = 47 , verGenericFE = 58 , verBelarus = 61 ,
  verUkrania = 62 , verAlternateGr = 64 , verSerbia = 65 , verSlovenia = 66 ,
  verMacedonia = 67 , verBrittany = 77 , verWales = 79 , verArmenia = 84 ,
  verGeorgia = 85 , verAustriaGerman = 92 , verTibet = 105
}
 
enum  { minCountry = verUS , maxCountry = verGreenland }
 
enum  {
  calGregorian = 0 , calArabicCivil = 1 , calArabicLunar = 2 , calJapanese = 3 ,
  calJewish = 4 , calCoptic = 5 , calPersian = 6
}
 
enum  {
  intWestern = 0 , intArabic = 1 , intRoman = 2 , intJapanese = 3 ,
  intEuropean = 4 , intOutputMask = 0x8000
}
 
enum  { smSingleByte = 0 , smFirstByte = -1 , smLastByte = 1 , smMiddleByte = 2 }
 
enum  {
  smcTypeMask = 0x000F , smcReserved = 0x00F0 , smcClassMask = 0x0F00 , smcOrientationMask = 0x1000 ,
  smcRightMask = 0x2000 , smcUpperMask = 0x4000 , smcDoubleMask = 0x8000
}
 
enum  {
  smCharPunct = 0x0000 , smCharAscii = 0x0001 , smCharEuro = 0x0007 , smCharExtAscii = 0x0007 ,
  smCharKatakana = 0x0002 , smCharHiragana = 0x0003 , smCharIdeographic = 0x0004 , smCharTwoByteGreek = 0x0005 ,
  smCharTwoByteRussian = 0x0006 , smCharBidirect = 0x0008 , smCharContextualLR = 0x0009 , smCharNonContextualLR ,
  smCharHangul = 0x000C , smCharJamo = 0x000D , smCharBopomofo = 0x000E , smCharGanaKana = 0x000F ,
  smCharFISKana = 0x0002 , smCharFISGana = 0x0003 , smCharFISIdeo = 0x0004
}
 
enum  {
  smCharFISGreek = 0x0005 , smCharFISRussian = 0x0006 , smPunctNormal = 0x0000 , smPunctNumber = 0x0100 ,
  smPunctSymbol = 0x0200 , smPunctBlank = 0x0300 , smPunctRepeat = 0x0400 , smPunctGraphic = 0x0500 ,
  smKanaSmall = 0x0100 , smKanaHardOK = 0x0200 , smKanaSoftOK = 0x0300 , smIdeographicLevel1 = 0x0000 ,
  smIdeographicLevel2 = 0x0100 , smIdeographicUser = 0x0200 , smFISClassLvl1 = 0x0000 , smFISClassLvl2 = 0x0100 ,
  smFISClassUser = 0x0200 , smJamoJaeum = 0x0000 , smJamoBogJaeum = 0x0100 , smJamoMoeum = 0x0200 ,
  smJamoBogMoeum = 0x0300
}
 
enum  {
  smCharHorizontal = 0x0000 , smCharVertical = 0x1000 , smCharLeft = 0x0000 , smCharRight = 0x2000 ,
  smCharLower = 0x0000 , smCharUpper , smChar1byte = 0x0000 , smChar2byte = 0x8000
}
 
enum  {
  smTransAscii = 0 , smTransNative = 1 , smTransCase = 0xFE , smTransSystem = 0xFF ,
  smTransAscii1 = 2 , smTransAscii2 = 3 , smTransKana1 = 4 , smTransKana2 = 5
}
 
enum  {
  smTransGana2 = 7 , smTransHangul2 = 8 , smTransJamo2 = 9 , smTransBopomofo2 = 10 ,
  smTransLower = 0x4000 , smTransUpper = 0x8000 , smTransRuleBaseFormat = 1 , smTransHangulFormat = 2 ,
  smTransPreDoubleByting , smTransPreLowerCasing
}
 
enum  {
  smMaskAll = (long)0xFFFFFFFF , smMaskAscii = 0x00000001 , smMaskNative = 0x00000002 , smMaskAscii1 = 0x00000004 ,
  smMaskAscii2 = 0x00000008 , smMaskKana1 = 0x00000010 , smMaskKana2 = 0x00000020 , smMaskGana2 = 0x00000080 ,
  smMaskHangul2 = 0x00000100 , smMaskJamo2 = 0x00000200 , smMaskBopomofo2 = 0x00000400
}
 
enum  { smNotInstalled = 0 , smBadVerb = -1 , smBadScript = -2 }
 
enum  { smRedrawChar = 0 , smRedrawWord = 1 , smRedrawLine = -1 }
 
enum  {
  smVersion = 0 , smMunged = 2 , smEnabled = 4 , smBidirect = 6 ,
  smFontForce = 8 , smIntlForce = 10 , smForced = 12 , smDefault = 14 ,
  smPrint = 16 , smSysScript = 18 , smLastScript = 20 , smKeyScript = 22 ,
  smSysRef = 24 , smKeyCache = 26 , smKeySwap = 28 , smGenFlags = 30 ,
  smOverride = 32 , smCharPortion = 34 , smDoubleByte = 36 , smKCHRCache = 38 ,
  smRegionCode = 40 , smKeyDisableState = 42
}
 
enum  {
  smScriptVersion = 0 , smScriptMunged = 2 , smScriptEnabled = 4 , smScriptRight = 6 ,
  smScriptJust = 8 , smScriptRedraw = 10 , smScriptSysFond = 12 , smScriptAppFond = 14 ,
  smScriptBundle = 16 , smScriptNumber = 16 , smScriptDate = 18 , smScriptSort = 20 ,
  smScriptFlags = 22 , smScriptToken = 24 , smScriptEncoding = 26 , smScriptLang = 28
}
 
enum  {
  smScriptNumDate = 30 , smScriptKeys = 32 , smScriptIcon = 34 , smScriptPrint = 36 ,
  smScriptTrap = 38 , smScriptCreator = 40 , smScriptFile = 42 , smScriptName = 44 ,
  smScriptMonoFondSize = 78 , smScriptPrefFondSize = 80 , smScriptSmallFondSize = 82 , smScriptSysFondSize = 84 ,
  smScriptAppFondSize = 86 , smScriptHelpFondSize = 88 , smScriptValidStyles = 90 , smScriptAliasStyle = 92
}
 
enum  {
  smLayoutCache , smOldVerbSupport = -311 , smSetKashidas = -291 , smSetKashProp = -287 ,
  smScriptSysBase = -281 , smScriptAppBase , smScriptFntBase = -285 , smScriptLigatures = -263 ,
  smScriptNumbers = -267
}
 
enum  { iuSystemScript = -1 , iuCurrentScript = -2 }
 
enum  {
  smKeyNextScript = -1 , smKeySysScript = -2 , smKeySwapScript = -3 , smKeyNextKybd = -4 ,
  smKeySwapKybd , smKeyDisableKybds = -6 , smKeyEnableKybds = -7 , smKeyToggleInline = -8 ,
  smKeyToggleDirection = -9 , smKeyNextInputMethod , smKeySwapInputMethod , smKeyDisableKybdSwitch ,
  smKeySetDirLeftRight , smKeySetDirRightLeft , smKeyRoman = -17
}
 
enum  { smfDisableKeyScriptSync }
 
enum  { smfDisableKeyScriptSyncMask }
 
enum  { smKeyForceKeyScriptBit = 7 , smKeyForceKeyScriptMask = 1 << smKeyForceKeyScriptBit }
 
enum  {
  smsfIntellCP = 0 , smsfSingByte = 1 , smsfNatCase = 2 , smsfContext = 3 ,
  smsfNoForceFont = 4 , smsfB0Digits = 5 , smsfAutoInit = 6 , smsfUnivExt = 7 ,
  smsfSynchUnstyledTE = 8 , smsfForms = 13 , smsfLigatures = 14 , smsfReverse = 15 ,
  smfShowIcon = 31 , smfDualCaret = 30 , smfNameTagEnab = 29 , smfUseAssocFontInfo
}
 
enum  {
  romanSysFond = 0x3FFF , romanAppFond = 3 , romanFlags = 0x0007 , smFondStart = 0x4000 ,
  smFondEnd = 0xC000 , smUprHalfCharSet = 0x80
}
 
enum  {
  diaeresisUprY = 0xD9 , fraction = 0xDA , intlCurrency = 0xDB , leftSingGuillemet = 0xDC ,
  rightSingGuillemet = 0xDD , fiLigature = 0xDE , flLigature = 0xDF , dblDagger = 0xE0 ,
  centeredDot = 0xE1 , baseSingQuote = 0xE2 , baseDblQuote = 0xE3 , perThousand = 0xE4 ,
  circumflexUprA = 0xE5 , circumflexUprE = 0xE6 , acuteUprA = 0xE7 , diaeresisUprE = 0xE8 ,
  graveUprE = 0xE9 , acuteUprI = 0xEA , circumflexUprI = 0xEB , diaeresisUprI = 0xEC ,
  graveUprI = 0xED , acuteUprO = 0xEE , circumflexUprO = 0xEF , appleLogo = 0xF0 ,
  graveUprO = 0xF1 , acuteUprU = 0xF2 , circumflexUprU = 0xF3 , graveUprU = 0xF4 ,
  dotlessLwrI = 0xF5 , circumflex = 0xF6 , tilde = 0xF7 , macron = 0xF8 ,
  breveMark = 0xF9 , overDot = 0xFA , ringMark = 0xFB , cedilla = 0xFC ,
  doubleAcute = 0xFD , ogonek = 0xFE , hachek = 0xFF
}
 
enum  { tokenIntl = 4 , tokenEmpty = -1 }
 
enum  {
  tokenUnknown = 0 , tokenWhite = 1 , tokenLeftLit = 2 , tokenRightLit = 3 ,
  tokenAlpha = 4 , tokenNumeric = 5 , tokenNewLine = 6 , tokenLeftComment = 7 ,
  tokenRightComment = 8 , tokenLiteral = 9 , tokenEscape = 10 , tokenAltNum = 11 ,
  tokenRealNum = 12 , tokenAltReal = 13 , tokenReserve1 = 14 , tokenReserve2 = 15 ,
  tokenLeftParen = 16 , tokenRightParen = 17 , tokenLeftBracket = 18 , tokenRightBracket = 19
}
 
enum  {
  tokenLeftCurly = 20 , tokenRightCurly = 21 , tokenLeftEnclose = 22 , tokenRightEnclose = 23 ,
  tokenPlus = 24 , tokenMinus = 25 , tokenAsterisk = 26 , tokenDivide = 27 ,
  tokenPlusMinus = 28 , tokenSlash = 29 , tokenBackSlash = 30 , tokenLess = 31 ,
  tokenGreat = 32 , tokenEqual = 33 , tokenLessEqual2 = 34 , tokenLessEqual1 = 35 ,
  tokenGreatEqual2 = 36 , tokenGreatEqual1 = 37 , token2Equal = 38 , tokenColonEqual = 39
}
 
enum  {
  tokenNotEqual = 40 , tokenLessGreat = 41 , tokenExclamEqual = 42 , tokenExclam = 43 ,
  tokenTilde = 44 , tokenComma = 45 , tokenPeriod = 46 , tokenLeft2Quote = 47 ,
  tokenRight2Quote = 48 , tokenLeft1Quote = 49 , tokenRight1Quote = 50 , token2Quote = 51 ,
  token1Quote = 52 , tokenSemicolon = 53 , tokenPercent = 54 , tokenCaret = 55 ,
  tokenUnderline = 56 , tokenAmpersand = 57 , tokenAtSign = 58 , tokenBar = 59
}
 
enum  {
  tokenQuestion = 60 , tokenPi = 61 , tokenRoot = 62 , tokenSigma = 63 ,
  tokenIntegral = 64 , tokenMicro = 65 , tokenCapPi = 66 , tokenInfinity = 67 ,
  tokenColon = 68 , tokenHash = 69 , tokenDollar = 70 , tokenNoBreakSpace = 71 ,
  tokenFraction = 72 , tokenIntlCurrency = 73 , tokenLeftSingGuillemet = 74 , tokenRightSingGuillemet = 75 ,
  tokenPerThousand = 76 , tokenEllipsis = 77 , tokenCenterDot = 78 , tokenNil = 127
}
 
enum  { delimPad = -2 , tokenTilda = 44 , tokenCarat = 55 }
 
enum  {
  smWordSelectTable = 0 , smWordWrapTable = 1 , smNumberPartsTable = 2 , smUnTokenTable = 3 ,
  smWhiteSpaceList = 4 , iuWordSelectTable , iuWordWrapTable = 1 , iuNumberPartsTable ,
  iuUnTokenTable = 3 , iuWhiteSpaceList = 4
}
 
enum  {
  tokenOK = 0 , tokenOverflow = 1 , stringOverflow = 2 , badDelim = 3 ,
  badEnding = 4 , crash = 5
}
 

Functions

short GetSysDirection (void)
 
void SetSysDirection (short value)
 
short FontScript (void)
 
short IntlScript (void)
 
short FontToScript (short fontNumber)
 
long GetScriptManagerVariable (short selector)
 
OSErr SetScriptManagerVariable (short selector, long param)
 
long GetScriptVariable (short script, short selector)
 
OSErr SetScriptVariable (short script, short selector, long param)
 
short CharacterByteType (Ptr textBuf, short textOffset, ScriptCode script)
 
short CharacterType (Ptr textBuf, short textOffset, ScriptCode script)
 
OSErr TransliterateText (Handle srcHandle, Handle dstHandle, short target, long srcMask, ScriptCode script)
 
Boolean FillParseTable (CharByteTable table, ScriptCode script)
 
Handle GetIntlResource (short theID)
 
void ClearIntlResourceCache (void)
 
void GetIntlResourceTable (ScriptCode script, short tableCode, Handle *itlHandle, long *offset, long *length)
 
UniversalProcPtr GetScriptUtilityAddress (short selector, Boolean Before, ScriptCode script)
 
void SetScriptUtilityAddress (short selector, Boolean Before, UniversalProcPtr routineAddr, ScriptCode script)
 
UniversalProcPtr GetScriptQDPatchAddress (short trapNum, Boolean Before, Boolean forPrinting, ScriptCode script)
 
void SetScriptQDPatchAddress (short trapNum, Boolean Before, Boolean forPrinting, UniversalProcPtr routineAddr, ScriptCode script)
 
void SetIntlResource (short refNum, short theID, Handle intlHandle)
 
short CharByte (Ptr textBuf, short textOffset)
 Check character type of byte at given offset. More...
 
short CharType (Ptr textBuf, short textOffset)
 Check character type of byte at given offset. More...
 
OSErr Transliterate (Handle srcHandle, Handle dstHandle, short target, long srcMask)
 
Boolean ParseTable (CharByteTable table)
 Check for additional byte in character. More...
 
TokenResults IntlTokenize (TokenBlockPtr tokenParam)
 

Variables

ndle
 
 offset
 

Detailed Description

Merged in to "Script.h". Please update your source code to directly #include <Script.h>

Script Manager interfaces.

Introduced In: Mac OS 9 / Carbon
Avaliable From: Universal Interfaces 3.4.1
Copyright: © 1986-2001 by Apple Computer, Inc., all rights reserved

For bug reports, consult the following page on the World Wide Web:

http://developer.apple.com/bugreporter/

Typedef Documentation

◆ DelimType

typedef ScriptTokenType DelimType[2]

TARGET_OS_MAC

◆ ScriptTokenType

typedef short ScriptTokenType

"TokenType" was renamed to "ScriptTokenType" because of a name collisions

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Meta script codes:

Enumerator
smCurrentScript 

designates system script.

smAllScripts 

designates current font script.

◆ anonymous enum

anonymous enum

Script codes: These specify a Mac OS encoding that is related to a FOND ID range. Some of the encodings have several variants (e.g. for different localized systems) which all share the same script code. Not all of these script codes are currently supported by Apple software. Notes:

  • Script code 0 (smRoman) is also used (instead of smGreek) for the Greek encoding in the Greek localized system.
  • Script code 28 (smEthiopic) is also used for the Inuit encoding in the Inuktitut system.
Enumerator
smKorean 

Traditional Chinese

smDevanagari 

Right-left symbol

smMalayalam 

Kannada/Kanarese

smThai 

Khmer/Cambodian

smTibetan 

Simplified Chinese

smCentralEuroRoman 

Synonym for smEthiopic

smVietnamese 

For Czech, Slovak, Polish, Hungarian, Baltic langs

smUninterp 

extended Arabic

◆ anonymous enum

anonymous enum

Extended script code for full Unicode input

◆ anonymous enum

anonymous enum

Obsolete script code names (kept for backward compatibility):

Enumerator
smRussian 

(Use smTradChinese or smSimpChinese)

smLaotian 

Use smCyrillic smMaldivian = 25: deleted, no code for Maldivian

smAmharic 

Use smLao

smSlavic 

Use smEthiopic or smGeez

smEastEurRoman 

Use smCentralEuroRoman

smSindhi 

Use smCentralEuroRoman

smKlingon 

Use smExtArabic

◆ anonymous enum

anonymous enum

Language codes: These specify a language implemented using a particular Mac OS encoding. Not all of these language codes are currently supported by Apple software.

Enumerator
langFrench 

smRoman script

langGerman 

smRoman script

langItalian 

smRoman script

langDutch 

smRoman script

langSwedish 

smRoman script

langSpanish 

smRoman script

langDanish 

smRoman script

langPortuguese 

smRoman script

langNorwegian 

smRoman script

langHebrew 

smRoman script

langJapanese 

smHebrew script

langArabic 

smJapanese script

langFinnish 

smArabic script

langGreek 

smRoman script

langIcelandic 

Greek script using smRoman script code

langMaltese 

modified smRoman/Icelandic script

langTurkish 

Roman script

langCroatian 

modified smRoman/Turkish script

langTradChinese 

modified smRoman/Croatian script

langUrdu 

Chinese (Mandarin) in traditional characters

langHindi 

smArabic script

langThai 

smDevanagari script

langKorean 

smThai script

◆ anonymous enum

anonymous enum
Enumerator
langPolish 

smCentralEuroRoman script

langHungarian 

smCentralEuroRoman script

langEstonian 

smCentralEuroRoman script

langLatvian 

smCentralEuroRoman script

langSami 

smCentralEuroRoman script

langFaroese 

language of the Sami people of N. Scandinavia

langFarsi 

modified smRoman/Icelandic script

langPersian 

modified smArabic/Farsi script

langRussian 

Synonym for langFarsi

langSimpChinese 

smCyrillic script

langFlemish 

Chinese (Mandarin) in simplified characters

langIrishGaelic 

smRoman script

langAlbanian 

smRoman or modified smRoman/Celtic script (without dot above)

langRomanian 

smRoman script

langCzech 

modified smRoman/Romanian script

langSlovak 

smCentralEuroRoman script

langSlovenian 

smCentralEuroRoman script

langYiddish 

modified smRoman/Croatian script

langSerbian 

smHebrew script

langMacedonian 

smCyrillic script

langBulgarian 

smCyrillic script

langUkrainian 

smCyrillic script

langByelorussian 

modified smCyrillic/Ukrainian script

langBelorussian 

smCyrillic script

◆ anonymous enum

anonymous enum
Enumerator
langKazakh 

Cyrillic script

langAzerbaijani 

Cyrillic script

langAzerbaijanAr 

Azerbaijani in Cyrillic script

langArmenian 

Azerbaijani in Arabic script

langGeorgian 

smArmenian script

langMoldavian 

smGeorgian script

langKirghiz 

smCyrillic script

langTajiki 

Cyrillic script

langTurkmen 

Cyrillic script

langMongolian 

Cyrillic script

langMongolianCyr 

Mongolian in smMongolian script

langPashto 

Mongolian in Cyrillic script

langKurdish 

Arabic script

langKashmiri 

smArabic script

langSindhi 

Arabic script

langTibetan 

Arabic script

langNepali 

smTibetan script

langSanskrit 

smDevanagari script

langMarathi 

smDevanagari script

langBengali 

smDevanagari script

langAssamese 

smBengali script

langGujarati 

smBengali script

langPunjabi 

smGujarati script

◆ anonymous enum

anonymous enum
Enumerator
langMalayalam 

smOriya script

langKannada 

smMalayalam script

langTamil 

smKannada script

langTelugu 

smTamil script

langSinhalese 

smTelugu script

langBurmese 

smSinhalese script

langKhmer 

smBurmese script

langLao 

smKhmer script

langVietnamese 

smLao script

langIndonesian 

smVietnamese script

langTagalog 

smRoman script

langMalayRoman 

Roman script

langMalayArabic 

Malay in smRoman script

langAmharic 

Malay in Arabic script

langTigrinya 

smEthiopic script

langOromo 

smEthiopic script

langSomali 

smEthiopic script

langSwahili 

smRoman script

langKinyarwanda 

smRoman script

langRuanda 

smRoman script

langRundi 

synonym for langKinyarwanda

langNyanja 

smRoman script

langChewa 

smRoman script

langMalagasy 

synonym for langNyanja

langEsperanto 

smRoman script

◆ anonymous enum

anonymous enum
Enumerator
langBasque 

modified smRoman/Celtic script

langCatalan 

smRoman script

langLatin 

smRoman script

langQuechua 

smRoman script

langGuarani 

smRoman script

langAymara 

smRoman script

langTatar 

smRoman script

langUighur 

Cyrillic script

langDzongkha 

Arabic script

langJavaneseRom 

(lang of Bhutan) smTibetan script

langSundaneseRom 

Javanese in smRoman script

langGalician 

Sundanese in smRoman script

langAfrikaans 

smRoman script

◆ anonymous enum

anonymous enum
Enumerator
langInuktitut 

smRoman or modified smRoman/Celtic script

langScottishGaelic 

Inuit script using smEthiopic script code

langManxGaelic 

smRoman or modified smRoman/Celtic script

langIrishGaelicScript 

smRoman or modified smRoman/Celtic script

langTongan 

modified smRoman/Gaelic script (using dot above)

langGreekPoly 

smRoman script

langGreenlandic 

smGreek script

langAzerbaijanRoman 

smRoman script

◆ anonymous enum

anonymous enum

Obsolete language code names (kept for backward compatibility): Misspelled, ambiguous, misleading, considered pejorative, archaic, etc.

Enumerator
langMalta 

Use langPortuguese

langYugoslavian 

Use langMaltese

langChinese 

(use langCroatian, langSerbian, etc.)

langLettish 

(use langTradChinese or langSimpChinese)

langLapponian 

Use langLatvian

langLappish 

Use langSami

langSaamisk 

Use langSami

langFaeroese 

Use langSami

langIrish 

Use langFaroese

langGalla 

Use langIrishGaelic

langAfricaans 

Use langOromo

◆ anonymous enum

anonymous enum

Region codes: These typically specify a combination of a language code and a particular region. Some of these numeric values are reserved just for extra resource IDs associated with certain regions; these are not actual region codes, and are noted in the comments. Not all of the region codes are currently supported by Apple software. When relevant, the following list also provides:

  • The Apple part number (P/N) code for software localized for the specified region.
  • The two-letter ISO language and country codes (from ISO 639 and ISO 3166). The language code (lowercase) is first, then '_', then the country code (uppercase).
Enumerator
verUS 

P/N ISO codes comments

verFrance 

en_US

verBritain 

F fr_FR

verGermany 

B en_GB

verItaly 

D de_DE

verNetherlands 

T it_IT

verFlemish 

N nl_NL

verSweden 

FN nl_BE Flemish (Dutch) for Belgium

verSpain 

S sv_SE

verDenmark 

E es_ES Spanish for Spain

verPortugal 

DK da_DK

verFrCanada 

PO pt_PT Portuguese for Portugal

verNorway 

C fr_CA French for Canada

verIsrael 

H no_NO,nb_NO Bokm©l

verJapan 

HB he_IL,iw_IL Hebrew

verAustralia 

J ja_JP

verArabic 

X en_AU English for Australia

verFinland 

AB ar Arabic for N Africa, Arabian peninsula, Levant

verFrSwiss 

K fi_FI

verGrSwiss 

SF fr_CH French Swiss

verGreece 

SD de_CH German Swiss

verIceland 

GR el_GR Monotonic Greek (modern)

verMalta 

IS is_IS

verCyprus 

MA mt_MT

verTurkey 

CY _CY Greek or Turkish language? Checking...

verYugoCroatian 

TU tr_TR

◆ anonymous enum

anonymous enum
Enumerator
verBelgiumLuxPoint 

ID for KCHR resource - Dutch

verCanadaComma 

ID for KCHR resource - Belgium

verCanadaPoint 

ID for KCHR resource - Canadian ISO

vervariantPortugal 

ID for KCHR resource - Canadian; now unused

vervariantNorway 

ID for resource; now unused

vervariantDenmark 

ID for resource; now unused

◆ anonymous enum

anonymous enum
Enumerator
verPakistanUrdu 

hi_IN Hindi for India

verTurkishModified 

UR ur_PK Urdu for Pakistan

verInternational 

ST it_CH Italian Swiss

verRomania 

Z en English for international use 38 is unassigned

verGreecePoly 

RO ro_RO

verLithuania 

grc Polytonic Greek (classical)

verPoland 

LT lt_LT

verHungary 

PL pl_PL

verEstonia 

MG hu_HU

verLatvia 

EE et_EE

verSami 

LV lv_LV

verFaroeIsl 

se

verIran 

FA fo_FO

verRussia 

PS fa_IR Persian/Farsi

verIreland 

RS ru_RU Russian

verKorea 

GA ga_IE Irish Gaelic for Ireland (without dot above)

verChina 

KH ko_KR

verTaiwan 

CH zh_CN Simplified Chinese

verThailand 

TA zh_TW Traditional Chinese

verScriptGeneric 

TH th_TH

verCzech 

SS Generic script system (no language or script)

verSlovak 

CZ cs_CZ

verFarEastGeneric 

SL sk_SK

verMagyar 

FE Generic Far East system (no language or script)

verBengali 

Unused; see verHungary

verByeloRussian 

bn Bangladesh or India

◆ anonymous enum

anonymous enum
Enumerator
verGreeceAlt 

UA uk_UA 63 is unassigned

verSerbian 

unused

verSlovenian 

SR sr_YU,sh_YU

verMacedonian 

SV sl_SI

verCroatia 

MD mk_MK

verGermanReformed 

CR hr_HR,sh_HR 69 is unassigned

verBrazil 

de_DE Reformed orthography (used formerly unassigned 70)

verBulgaria 

BR pt_BR Portuguese for Brazil

verCatalonia 

BG bg_BG

verMultilingual 

CA ca_ES Catalan for Spain

verScottishGaelic 

ZM mul (no language or script)

verManxGaelic 

GD gd

verBreton 

GV gv Isle of Man

verNunavut 

BZ br

verWelsh 

IU iu_CA Inuktitut for Canada

verIrishGaelicScript 

CU cy 80 is ID for KCHR resource - Canadian CSA

verEngCanada 

GS ga_IE Irish Gaelic for Ireland (using dot above)

verBhutan 

V en_CA English for Canada

verArmenian 

BH dz_BT Dzongkha for Bhutan

verGeorgian 

HY hy_AM

verSpLatinAmerica 

KR ka_GE

verTonga 

LA es Spanish for Latin America 87 is ID for KCHR resource - Spanish ISO

verFrenchUniversal 

TS to_TO 89 is ID for KCHR resource - Polish Modified 90 is ID for KCHR resource - Catalan ISO

verAustria 

fr French generic

verGujarati 

AU de_AT German for Austria Y 93 is unused alternate for verSpLatinAmerica

verPunjabi 

gu_IN

verIndiaUrdu 

pa Pakistan or India

verVietnam 

ur_IN Urdu for India

◆ anonymous enum

anonymous enum
Enumerator
verUzbek 

BF fr_BE French for Belgium

verSingapore 

BD uz_UZ

verNynorsk 

SG

verAfrikaans 

NY nn_NO Norwegian Nynorsk

verEsperanto 

AK af_ZA

verMarathi 

eo

verTibetan 

mr_IN

verNepal 

bo

verGreenland 

ne_NP

verIrelandEnglish 

kl

◆ anonymous enum

anonymous enum

Other extra resource IDs assigned in the same number space: 179 is ID for KCHR & itl_ resources - Cornish 581 is ID for KCHR resource - Irish Gaelic script alternate 582 is ID for KCHR resource - Ogham 779 is ID for KCHR resource - Welsh alternate 1111 is ID for KCHR resource - French numeric Obsolete region code names (kept for backward compatibility): Misspelled or alternate form, ambiguous, misleading, considered pejorative, archaic, etc.

Enumerator
verBelgiumLux 

Incorrect; 6 is Flemish, not French, for Belgium; use verFlemish

verArabia 

Use verFlemish

verYugoslavia 

Use verArabic

verIndia 

Use verYugoCroatian (same number, now unused), or newer verCroatia

verPakistan 

Use verIndiaHindi

verRumania 

Use verPakistanUrdu

verGreekAncient 

Alternate for verRomania

verLapland 

Use verGreecePoly

verFaeroeIsl 

Use verSami

verGenericFE 

Use verFaroeIsl

verBelarus 

Use verFarEastGeneric

verUkrania 

Alternate for verByelorussian

verAlternateGr 

Use verUkraine

verSerbia 

Use verGreeceAlt

verSlovenia 

Alternate for verSerbian

verMacedonia 

Alternate for verSlovenian

verBrittany 

Alternate for verMacedonian

verWales 

Alternate for verBreton

verArmenia 

Alternate for verWelsh

verGeorgia 

Alternate for verArmenian

verAustriaGerman 

Alternate for verGeorgian

verTibet 

Use verAustria

◆ anonymous enum

anonymous enum
Enumerator
calGregorian 

Calendar Codes

◆ anonymous enum

anonymous enum
Enumerator
intWestern 

Integer Format Codes

◆ anonymous enum

anonymous enum
Enumerator
smSingleByte 

CharByte byte types

◆ anonymous enum

anonymous enum
Enumerator
smcTypeMask 

CharType field masks

smcRightMask 

two-byte script glyph orientation

◆ anonymous enum

anonymous enum
Enumerator
smCharPunct 

Basic CharType character types

smCharKatakana 

More correct synonym for smCharEuro Additional CharType character types for script systems

smCharHiragana 

Japanese Katakana

smCharIdeographic 

Japanese Hiragana

smCharTwoByteGreek 

Hanzi, Kanji, Hanja

smCharTwoByteRussian 

2-byte Greek in Far East systems

smCharBidirect 

2-byte Cyrillic in Far East systems

smCharContextualLR 

Arabic/Hebrew

smCharNonContextualLR 

Contextual left-right: Thai, Indic scripts

smCharHangul 

Non-contextual left-right: Cyrillic, Greek

smCharJamo 

Korean Hangul

smCharBopomofo 

Korean Jamo

smCharGanaKana 

Chinese Bopomofo

smCharFISKana 

Shared for Japanese Hiragana & Katakana old names for some of above, for backward compatibility

smCharFISGana 

Katakana

smCharFISIdeo 

Hiragana

◆ anonymous enum

anonymous enum
Enumerator
smCharFISRussian 

2-byte Greek in Far East systems

smPunctNormal 

2-byte Cyrillic in Far East systems CharType classes for punctuation (smCharPunct)

smPunctRepeat 

Additional CharType classes for punctuation in two-byte systems

smPunctGraphic 

repeat marker

smKanaSmall 

line graphics CharType Katakana and Hiragana classes for two-byte systems

smKanaHardOK 

small kana character

smKanaSoftOK 

can have dakuten

smIdeographicLevel1 

can have dakuten or han-dakuten CharType Ideographic classes for two-byte systems

smIdeographicLevel2 

level 1 char

smIdeographicUser 

level 2 char

smFISClassLvl1 

user char old names for above, for backward compatibility

smFISClassLvl2 

level 1 char

smFISClassUser 

level 2 char

smJamoJaeum 

user char CharType Jamo classes for Korean systems

smJamoBogJaeum 

simple consonant char

smJamoMoeum 

complex consonant char

smJamoBogMoeum 

simple vowel char

◆ anonymous enum

anonymous enum
Enumerator
smCharHorizontal 

CharType glyph orientation for two-byte systems

smCharVertical 

horizontal character form, or for both

smCharLeft 

vertical character form CharType directions

smCharLower 

CharType case modifers

smChar1byte 

CharType character size modifiers (1 or multiple bytes).

◆ anonymous enum

anonymous enum
Enumerator
smTransAscii 

TransliterateText target types for Roman

smTransNative 

convert to ASCII

smTransCase 

convert to font script

smTransSystem 

convert case for all text

smTransAscii1 

convert to system script TransliterateText target types for two-byte scripts

smTransAscii2 

1-byte Roman

smTransKana1 

2-byte Roman

smTransKana2 

1-byte Japanese Katakana

◆ anonymous enum

anonymous enum
Enumerator
smTransHangul2 

2-byte Japanese Hiragana (no 1-byte Hiragana)

smTransJamo2 

2-byte Korean Hangul

smTransBopomofo2 

2-byte Korean Jamo

smTransLower 

2-byte Chinese Bopomofo TransliterateText target modifiers

smTransUpper 

target becomes lowercase

smTransRuleBaseFormat 

target becomes uppercase TransliterateText resource format numbers

smTransHangulFormat 

Rule based trsl resource format

smTransPreDoubleByting 

Table based Hangul trsl resource format TransliterateText property flags

smTransPreLowerCasing 

Convert all text to double byte before transliteration

◆ anonymous enum

anonymous enum
Enumerator
smMaskAll 

TransliterateText source mask - general

smMaskAscii 

Convert all text TransliterateText source masks

smMaskNative 

2^smTransAscii

smMaskAscii1 

2^smTransNative TransliterateText source masks for two-byte scripts

smMaskAscii2 

2^smTransAscii1

smMaskKana1 

2^smTransAscii2

smMaskKana2 

2^smTransKana1

smMaskGana2 

2^smTransKana2

smMaskHangul2 

2^smTransGana2

smMaskJamo2 

2^smTransHangul2

smMaskBopomofo2 

2^smTransJamo2

◆ anonymous enum

anonymous enum
Enumerator
smNotInstalled 

Result values from GetScriptManagerVariable and SetScriptManagerVariable calls.

smBadVerb 

routine not available in script

smBadScript 

Bad verb passed to a routine

◆ anonymous enum

anonymous enum
Enumerator
smRedrawChar 

Values for script redraw flag.

smRedrawWord 

Redraw character only

smRedrawLine 

Redraw entire word (2-byte systems)

◆ anonymous enum

anonymous enum
Enumerator
smVersion 

GetScriptManagerVariable and SetScriptManagerVariable verbs

smMunged 

Script Manager version number

smEnabled 

Globals change count

smBidirect 

Count of enabled scripts, incl Roman

smFontForce 

At least one bidirectional script

smIntlForce 

Force font flag

smForced 

Force intl flag

smDefault 

Script was forced to system script

smPrint 

Script was defaulted to Roman script

smSysScript 

Printer action routine

smLastScript 

System script

smKeyScript 

Last keyboard script

smSysRef 

Keyboard script

smKeyCache 

System folder refNum

smKeySwap 

obsolete

smGenFlags 

Swapping table handle

smOverride 

General flags long

smCharPortion 

Script override flags

smDoubleByte 

Ch vs SpExtra proportion New for System 7.0:

smKCHRCache 

Flag for double-byte script installed

smRegionCode 

Returns pointer to KCHR cache

smKeyDisableState 

Returns current region code (verXxx)

◆ anonymous enum

anonymous enum
Enumerator
smScriptVersion 

GetScriptVariable and SetScriptVariable verbs. Note: Verbs private to script systems are negative, while those general across script systems are non-negative.

smScriptMunged 

Script software version

smScriptEnabled 

Script entry changed count

smScriptRight 

Script enabled flag

smScriptJust 

Right to left flag

smScriptRedraw 

Justification flag

smScriptSysFond 

Word redraw flag

smScriptAppFond 

Preferred system font

smScriptBundle 

Preferred Application font

smScriptNumber 

Beginning of itlb verbs

smScriptDate 

Script itl0 id

smScriptSort 

Script itl1 id

smScriptFlags 

Script itl2 id

smScriptToken 

flags word

smScriptEncoding 

Script itl4 id

smScriptLang 

id of optional itl5, if present

◆ anonymous enum

anonymous enum
Enumerator
smScriptKeys 

Script Number/Date formats.

smScriptIcon 

Script KCHR id

smScriptPrint 

ID # of SICN or kcs#/kcs4/kcs8 suite

smScriptTrap 

Script printer action routine

smScriptCreator 

Trap entry pointer

smScriptFile 

Script file creator

smScriptName 

Script file name

smScriptMonoFondSize 

Script name There is a hole here for old Kanji private verbs 46-76 New for System 7.0:

smScriptPrefFondSize 

default monospace FOND (hi) & size (lo)

smScriptSmallFondSize 

preferred FOND (hi) & size (lo)

smScriptSysFondSize 

default small FOND (hi) & size (lo)

smScriptAppFondSize 

default system FOND (hi) & size (lo)

smScriptHelpFondSize 

default app FOND (hi) & size (lo)

smScriptValidStyles 

default Help Mgr FOND (hi) & size (lo)

smScriptAliasStyle 

mask of valid styles for script

◆ anonymous enum

anonymous enum

special negative verbs for Get/SetScriptVariable that were associated with WorldScriptI move them here to be public

Enumerator
smLayoutCache 

WorldScript private verbs

smOldVerbSupport 

HiWrd(param) is # entries, LoWrd is max input length

smSetKashidas 

param is added to old verbs to map to WSI verb

smSetKashProp 

param is ON or OFF, old verb = -36

smScriptSysBase 

param is kashida proportion, old verb = -32

smScriptAppBase 

param is associated font to use w/ system font (old verb = -26)

smScriptFntBase 

param is associated font to use w/ app font (old verb = -28)

smScriptLigatures 

param is associated font to use w/ all other fonts (old verb = -30)

smScriptNumbers 

old verb = -8

◆ anonymous enum

anonymous enum
Enumerator
iuSystemScript 

Special script code values for International Utilities

iuCurrentScript 

<obsolete> system script

◆ anonymous enum

anonymous enum
Enumerator
smKeyNextScript 

Negative verbs for KeyScript

smKeySysScript 

Switch to next available script

smKeySwapScript 

Switch to the system script

smKeyNextKybd 

Switch to previously-used script New for System 7.0:

smKeySwapKybd 

Switch to next keyboard in current keyscript

smKeyDisableKybds 

Switch to previously-used keyboard in current keyscript

smKeyEnableKybds 

Disable keyboards not in system or Roman script

smKeyToggleInline 

Re-enable keyboards for all enabled scripts

smKeyToggleDirection 

Toggle inline input for current keyscript

smKeyNextInputMethod 

Toggle default line direction (TESysJust)

smKeySwapInputMethod 

Switch to next input method in current keyscript

smKeyDisableKybdSwitch 

Switch to last-used input method in current keyscript

smKeySetDirLeftRight 

Disable switching from the current keyboard

smKeySetDirRightLeft 

Set default line dir to left-right, align left

smKeyRoman 

Set default line dir to right-left, align right

◆ anonymous enum

anonymous enum

Optional font and keyboard script synchronization

Enumerator
smfDisableKeyScriptSync 

One more flag in the smGenFlags long.

◆ anonymous enum

anonymous enum
Enumerator
smfDisableKeyScriptSyncMask 

We should define masks, too.

◆ anonymous enum

anonymous enum
Enumerator
smKeyForceKeyScriptBit 

Force keyboard script switching flag and mask for zero and positive KeyScript verbs

smKeyForceKeyScriptMask 

Force keyboard script switching flag

◆ anonymous enum

anonymous enum
Enumerator
smsfIntellCP 

Bits in the smScriptFlags word (bits above 8 are non-static)

smsfSingByte 

Script has intelligent cut & paste

smsfNatCase 

Script has only single bytes

smsfContext 

Native chars have upper & lower case

smsfNoForceFont 

Script is contextual

smsfB0Digits 

Script will not force characters

smsfAutoInit 

Script has alternate digits at B0-B9

smsfUnivExt 

Auto initialize the script

smsfSynchUnstyledTE 

Script is handled by universal extension

smsfForms 

Script synchronizes for unstyled TE

smsfLigatures 

Uses contextual forms for letters

smsfReverse 

Uses contextual ligatures

smfShowIcon 

Reverses native text, right-left Bits in the smGenFlags long. First (high-order) byte is set from itlc flags byte.

smfDualCaret 

Show icon even if only one script

smfNameTagEnab 

Use dual caret for mixed direction text

smfUseAssocFontInfo 

Reserved for internal use

◆ anonymous enum

anonymous enum
Enumerator
romanSysFond 

Roman script constants The following are here for backward compatibility, but should not be used. This information should be obtained using GetScript.

romanAppFond 

system font id number

romanFlags 

application font id number

smFondStart 

roman settings Script Manager font equates.

smFondEnd 

start from 16K

smUprHalfCharSet 

past end of range at 48K Miscellaneous font equates.

◆ anonymous enum

anonymous enum
Enumerator
diaeresisUprY 

Character Set Extensions

◆ anonymous enum

anonymous enum
Enumerator
tokenIntl 

ScriptTokenType values

tokenEmpty 

the itl resource number of the tokenizer

◆ anonymous enum

anonymous enum
Enumerator
tokenWhite 

chars that do not match a defined token type

tokenLeftLit 

white space

tokenRightLit 

literal begin

tokenAlpha 

literal end

tokenNumeric 

alphabetic

tokenNewLine 

numeric

tokenLeftComment 

new line

tokenRightComment 

open comment

tokenLiteral 

close comment

tokenEscape 

literal

tokenAltNum 

character escape (e.g. '\' in "\n", "\t")

tokenRealNum 

alternate number (e.g. $B0-B9 in Arabic,Hebrew)

tokenAltReal 

real number

tokenReserve1 

alternate real number

tokenReserve2 

reserved

tokenLeftParen 

reserved

tokenRightParen 

open parenthesis

tokenLeftBracket 

close parenthesis

tokenRightBracket 

open square bracket

◆ anonymous enum

anonymous enum
Enumerator
tokenRightCurly 

open curly bracket

tokenLeftEnclose 

close curly bracket

tokenRightEnclose 

open guillemet

tokenPlus 

close guillemet

tokenDivide 

times/multiply

tokenSlash 

plus or minus symbol

tokenGreat 

less than symbol

tokenEqual 

greater than symbol

tokenLessEqual1 

less than or equal, 2 characters (e.g. <=)

tokenGreatEqual2 

less than or equal, 1 character

tokenGreatEqual1 

greater than or equal, 2 characters (e.g. >=)

token2Equal 

greater than or equal, 1 character

tokenColonEqual 

double equal (e.g. ==)

◆ anonymous enum

anonymous enum
Enumerator
tokenLessGreat 

not equal, 1 character

tokenExclamEqual 

less/greater, Pascal not equal (e.g. <>)

tokenExclam 

exclamation equal, C not equal (e.g. !=)

tokenTilde 

exclamation point

tokenComma 

centered tilde

tokenRight2Quote 

open double quote

tokenLeft1Quote 

close double quote

tokenRight1Quote 

open single quote

token2Quote 

close single quote

token1Quote 

double quote

tokenSemicolon 

single quote

◆ anonymous enum

anonymous enum
Enumerator
tokenRoot 

lower-case pi

tokenSigma 

square root symbol

tokenIntegral 

capital sigma

tokenMicro 

integral sign

tokenInfinity 

capital pi

tokenDollar 

e.g. #

tokenFraction 

non-breaking space

◆ anonymous enum

anonymous enum
Enumerator
tokenTilda 

obsolete, misspelled token names kept for backward compatibility

◆ anonymous enum

anonymous enum
Enumerator
smWordSelectTable 

Table selectors for GetItlTable

smWordWrapTable 

get word select break table from 'itl2'

smNumberPartsTable 

get word wrap break table from 'itl2'

smUnTokenTable 

get default number parts table from 'itl4'

smWhiteSpaceList 

get unToken table from 'itl4'

iuWordSelectTable 

get white space list from 'itl4'

iuWordWrapTable 

<obsolete> get word select break table from 'itl2'

iuNumberPartsTable 

<obsolete> get word wrap break table from 'itl2'

iuUnTokenTable 

<obsolete> get default number parts table from 'itl4'

iuWhiteSpaceList 

<obsolete> get unToken table from 'itl4'

◆ anonymous enum

anonymous enum

end of stuff moved from Packages.h

Enumerator
tokenOverflow 

TokenResults

stringOverflow 

TokenResults

badDelim 

TokenResults

badEnding 

TokenResults

crash 

TokenResults

Function Documentation

◆ CharacterByteType()

short CharacterByteType ( Ptr  textBuf,
short  textOffset,
ScriptCode  script 
)

CharacterByteType()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ CharacterType()

short CharacterType ( Ptr  textBuf,
short  textOffset,
ScriptCode  script 
)

CharacterType()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ CharByte()

short CharByte ( Ptr  textBuf,
short  textOffset 
)

Check character type of byte at given offset.

CharByte checks the character type of the specified byte at the given offset
textBufis the address of a text buffer where the character is stored.
textOffset is the location of the specified byte.
Returns
a short, indicating:
-1First byte of a multibyte character
0Single byte character
1Last byte of a multibyte character
2Middle byte of a multibyte character
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ CharType()

short CharType ( Ptr  textBuf,
short  textOffset 
)

Check character type of byte at given offset.

CharType is an extension of CharByte, giving more information.
textBufis the address of a text buffer where the character is stored.
textOffset is the location of the specified byte.
Returns
a short, whose bits indicate:
0-3Character type
4-7Reserved
8-11Character class (subset of type)
12Reserved
13Direction
14Character case
15Character size
Note
 Each Script Interface System defines constants for the different types of
characters. These are the predefined constants for the Roman script:
smCharPunct =0
smCharAscii =1
smCharEuro =7
(CharType character classes)
smPunctNormal =0x00000
smPunctNumber =0x00100
smPunctSymbol =0x00200
smPunctBlank =0x00300
(CharType directions)
smCharLeft =0x00000
smCharRight =0x02000
(CharType character case)
smCharLower =0x00000
smCharUpper =0x04000
(CharType character size (1 or 2 bytes))
smChar1byte =0x00000
smChar2byte =0x08000
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ ClearIntlResourceCache()

void ClearIntlResourceCache ( void  )

ClearIntlResourceCache()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ FillParseTable()

Boolean FillParseTable ( CharByteTable  table,
ScriptCode  script 
)

FillParseTable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ FontScript()

short FontScript ( void  )

FontScript()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ FontToScript()

short FontToScript ( short  fontNumber)

FontToScript()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ GetIntlResource()

Handle GetIntlResource ( short  theID)

GetIntlResource()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ GetIntlResourceTable()

void GetIntlResourceTable ( ScriptCode  script,
short  tableCode,
Handle *  itlHandle,
long *  offset,
long *  length 
)

GetIntlResourceTable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ GetScriptManagerVariable()

long GetScriptManagerVariable ( short  selector)

GetScriptManagerVariable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ GetScriptQDPatchAddress()

UniversalProcPtr GetScriptQDPatchAddress ( short  trapNum,
Boolean  Before,
Boolean  forPrinting,
ScriptCode  script 
)

GetScriptQDPatchAddress()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ GetScriptUtilityAddress()

UniversalProcPtr GetScriptUtilityAddress ( short  selector,
Boolean  Before,
ScriptCode  script 
)

GetScriptUtilityAddress()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ GetScriptVariable()

long GetScriptVariable ( short  script,
short  selector 
)

GetScriptVariable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ GetSysDirection()

short GetSysDirection ( void  )

GetSysDirection()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ IntlScript()

short IntlScript ( void  )

IntlScript()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ IntlTokenize()

TokenResults IntlTokenize ( TokenBlockPtr  tokenParam)

CALL_NOT_IN_CARBON IntlTokenize()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ ParseTable()

Boolean ParseTable ( CharByteTable  table)

Check for additional byte in character.

ParseTable Returns a 256-byte table that indicates for each byte value,
when it appears as the first byte of a character, whether there is an additional
byte in the character (in the script of thePort->txFont)
tableis the address of a text buffer where the character is stored.
Returns
a Boolean value indicating whether or not there is an additional byte
in the character.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SetIntlResource()

void SetIntlResource ( short  refNum,
short  theID,
Handle  intlHandle 
)

SetIntlResource()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SetScriptManagerVariable()

OSErr SetScriptManagerVariable ( short  selector,
long  param 
)

SetScriptManagerVariable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ SetScriptQDPatchAddress()

void SetScriptQDPatchAddress ( short  trapNum,
Boolean  Before,
Boolean  forPrinting,
UniversalProcPtr  routineAddr,
ScriptCode  script 
)

SetScriptQDPatchAddress()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SetScriptUtilityAddress()

void SetScriptUtilityAddress ( short  selector,
Boolean  Before,
UniversalProcPtr  routineAddr,
ScriptCode  script 
)

SetScriptUtilityAddress()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SetScriptVariable()

OSErr SetScriptVariable ( short  script,
short  selector,
long  param 
)

SetScriptVariable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ SetSysDirection()

void SetSysDirection ( short  value)

SetSysDirection()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ Transliterate()

OSErr Transliterate ( Handle  srcHandle,
Handle  dstHandle,
short  target,
long  srcMask 
)

Transliterate()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ TransliterateText()

OSErr TransliterateText ( Handle  srcHandle,
Handle  dstHandle,
short  target,
long  srcMask,
ScriptCode  script 
)

TransliterateText()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

Variable Documentation

◆ ndle

* ndle

OLDROUTINENAMES SCRIPT