Use encoding number values from Apple

This commit is contained in:
Levin Li 2021-12-25 18:01:42 +08:00
parent ca6145efdd
commit fe2f41c7f1
16 changed files with 589 additions and 332 deletions

View file

@ -156,13 +156,13 @@ typedef NSUInteger NSStringCompareOptions;
*
* <p>Additional encodings available under GNUstep are:
* <code>NSKOI8RStringEncoding, NSISOLatin3StringEncoding,
* NSISOLatin4StringEncoding, NSISOCyrillicStringEncoding,
* NSISOArabicStringEncoding, NSISOGreekStringEncoding,
* NSISOHebrewStringEncoding, NSISOLatin5StringEncoding,
* NSISOLatin6StringEncoding, NSISOThaiStringEncoding,
* NSISOLatin4StringEncoding, NSISOLatinCyrillicStringEncoding,
* NSISOLatinArabicStringEncoding, NSISOLatinGreekStringEncoding,
* NSISOLatinHebrewStringEncoding, NSISOLatin5StringEncoding,
* NSISOLatin6StringEncoding, NSISOLatinThaiStringEncoding,
* NSISOLatin7StringEncoding, NSISOLatin8StringEncoding,
* NSISOLatin9StringEncoding, NSGB2312StringEncoding, NSUTF7StringEncoding,
* NSGSM0338StringEncoding, NSBIG5StringEncoding,
* NSISOLatin9StringEncoding, NSChineseEUCStringEncoding, NSUTF7StringEncoding,
* NSGSM0338StringEncoding, NSBig5StringEncoding,
* NSKoreanEUCStringEncoding, NSDOSLatinUSStringEncoding,
* NSDOSGreekStringEncoding, NSDOSBalticRimStringEncoding,
* NSDOSLatin1StringEncoding, NSDOSGreek1StringEncoding,
@ -184,88 +184,229 @@ typedef enum _NSStringEncoding
tell that a variable that should contain an encoding has not yet been
initialised */
GSUndefinedEncoding = 0,
NSASCIIStringEncoding = 1,
NSASCIIStringEncoding = 1, /* 0..127 only */
NSNEXTSTEPStringEncoding = 2,
NSJapaneseEUCStringEncoding = 3,
NSUTF8StringEncoding = 4,
NSISOLatin1StringEncoding = 5, // ISO-8859-1; West European
NSISOLatin1StringEncoding = 5,
NSSymbolStringEncoding = 6,
NSNonLossyASCIIStringEncoding = 7,
NSShiftJISStringEncoding = 8,
NSISOLatin2StringEncoding = 9, // ISO-8859-2; East European
NSShiftJISStringEncoding = 8, /* kCFStringEncodingDOSJapanese */
NSISOLatin2StringEncoding = 9,
NSUnicodeStringEncoding = 10,
NSUTF16StringEncoding = NSUnicodeStringEncoding, // An alias
NSWindowsCP1251StringEncoding = 11,
NSWindowsCP1252StringEncoding = 12, // WinLatin1
NSWindowsCP1253StringEncoding = 13, // Greek
NSWindowsCP1254StringEncoding = 14, // Turkish
NSWindowsCP1250StringEncoding = 15, // WinLatin2
NSISO2022JPStringEncoding = 21,
NSWindowsCP1251StringEncoding = 11, /* Cyrillic; same as AdobeStandardCyrillic */
NSWindowsCP1252StringEncoding = 12, /* WinLatin1 */
NSWindowsCP1253StringEncoding = 13, /* Greek */
NSWindowsCP1254StringEncoding = 14, /* Turkish */
NSWindowsCP1250StringEncoding = 15, /* WinLatin2 */
NSISO2022JPStringEncoding = 21, /* ISO 2022 Japanese encoding for e-mail */
NSMacOSRomanStringEncoding = 30,
NSProprietaryStringEncoding = 31,
NSKOI8RStringEncoding = 50, // Russian/Cyrillic
NSISOLatin3StringEncoding = 51, // ISO-8859-3; South European
NSISOLatin4StringEncoding = 52, // ISO-8859-4; North European
NSISOCyrillicStringEncoding = 22, // ISO-8859-5
NSISOArabicStringEncoding = 53, // ISO-8859-6
NSISOGreekStringEncoding = 54, // ISO-8859-7
NSISOHebrewStringEncoding = 55, // ISO-8859-8
NSISOLatin5StringEncoding = 57, // ISO-8859-9; Turkish
NSISOLatin6StringEncoding = 58, // ISO-8859-10; Nordic
NSISOThaiStringEncoding = 59, // ISO-8859-11
/* Possible future ISO-8859 additions
// ISO-8859-12
*/
NSISOLatin7StringEncoding = 61, // ISO-8859-13
NSISOLatin8StringEncoding = 62, // ISO-8859-14
NSISOLatin9StringEncoding = 63, // ISO-8859-15; Replaces ISOLatin1
NSGB2312StringEncoding = 56,
NSUTF7StringEncoding = 64, // RFC 2152
NSGSM0338StringEncoding = 65, // GSM (mobile phone) default alphabet
NSBIG5StringEncoding = 66, // Traditional chinese
NSKoreanEUCStringEncoding = 67, // Korean
NSUTF16StringEncoding = NSUnicodeStringEncoding, /* An alias for NSUnicodeStringEncoding */
NSDOSLatinUSStringEncoding = 68, // code page 437
NSDOSGreekStringEncoding, // code page 737 (formerly code page 437G) */
NSDOSBalticRimStringEncoding, // code page 775
NSDOSLatin1StringEncoding, // code page 850, "Multilingual"
NSDOSGreek1StringEncoding, // code page 851
NSDOSLatin2StringEncoding, // code page 852, Slavic
NSDOSCyrillicStringEncoding, // code page 855, IBM Cyrillic
NSDOSTurkishStringEncoding, // code page 857, IBM Turkish
NSDOICortugueseStringEncoding, // code page 860
NSDOSIcelandicStringEncoding, // code page 861
NSDOSHebrewStringEncoding, // code page 862
NSDOSCanadianFrenchStringEncoding, // code page 863
NSDOSArabicStringEncoding, // code page 864
NSDOSNordicStringEncoding, // code page 865
NSDOSRussianStringEncoding, // code page 866
NSDOSGreek2StringEncoding, // code page 869, IBM Modern Greek
NSDOSThaiStringEncoding, // code page 874, also for Windows
NSDOSJapaneseStringEncoding, // code page 932, also for Windows
NSDOSChineseSimplifStringEncoding, // code page 936, also for Windows
NSDOSKoreanStringEncoding, // code page 949, also for Windows; Unified Hangul Code
NSDOSChineseTradStringEncoding, // code page 950, also for Windows
// NSWindowsLatin1StringEncoding, // code page 1252, NSWindowsCP1252StringEncoding
// NSWindowsLatin2StringEncoding, // code page 1250, Central Europe, NSWindowsCP1250StringEncoding
// NSWindowsCyrillicStringEncoding, // code page 1251, Slavic Cyrillic. NSWindowsCP1251StringEncoding
// NSWindowsGreekStringEncoding, // code page 1253, NSWindowsCP1253StringEncoding
// NSWindowsLatin5StringEncoding, // code page 1254, Turkish, NSWindowsCP1254StringEncoding
NSWindowsHebrewStringEncoding, // code page 1255
NSWindowsArabicStringEncoding, // code page 1256
NSWindowsBalticRimStringEncoding, // code page 1257
NSWindowsVietnameseStringEncoding, // code page 1258
NSWindowsKoreanJohabStringEncoding // code page 1361, for Windows NT
NSUTF16BigEndianStringEncoding = 0x90000100, /* NSUTF16StringEncoding encoding with explicit endianness specified */
NSUTF16LittleEndianStringEncoding = 0x94000100, /* NSUTF16StringEncoding encoding with explicit endianness specified */
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
,
NSUTF16BigEndianStringEncoding = 0x90000100,
NSUTF16LittleEndianStringEncoding = 0x94000100,
NSUTF32StringEncoding = 0x8c000100,
NSUTF32BigEndianStringEncoding = 0x98000100,
NSUTF32LittleEndianStringEncoding = 0x9c000100
NSUTF32BigEndianStringEncoding = 0x98000100, /* NSUTF32StringEncoding encoding with explicit endianness specified */
NSUTF32LittleEndianStringEncoding = 0x9c000100, /* NSUTF32StringEncoding encoding with explicit endianness specified */
NSProprietaryStringEncoding = 0x00010000,
/* Exclusive to GNUstep */
NSGSM0338StringEncoding = 65, // GSM (mobile phone) default alphabet
/* NSStringEncoding Appendix */
// NSMacOSRomanStringEncoding = 0x80000000, // defined as 30
NSMacOSJapaneseStringEncoding = 0x80000001,
NSMacOSTraditionalChineseStringEncoding = 0x80000002,
NSMacOSKoreanStringEncoding = 0x80000003,
NSMacOSArabicStringEncoding = 0x80000004,
NSMacOSHebrewStringEncoding = 0x80000005,
NSMacOSGreekStringEncoding = 0x80000006,
NSMacOSCyrillicStringEncoding = 0x80000007,
// missing 08
NSMacOSDevanagariStringEncoding = 0x80000009,
NSMacOSGurmukhiStringEncoding = 0x8000000a,
NSMacOSGujaratiStringEncoding = 0x8000000b,
NSMacOSOriyaStringEncoding = 0x8000000c,
NSMacOSBengaliStringEncoding = 0x8000000d,
NSMacOSTamilStringEncoding = 0x8000000e,
NSMacOSTeluguStringEncoding = 0x8000000f,
NSMacOSKannadaStringEncoding = 0x80000010,
NSMacOSMalayalamStringEncoding = 0x80000011,
NSMacOSSinhaleseStringEncoding = 0x80000012,
NSMacOSBurmeseStringEncoding = 0x80000013,
NSMacOSKhmerStringEncoding = 0x80000014,
NSMacOSThaiStringEncoding = 0x80000015,
NSMacOSLaotianStringEncoding = 0x80000016,
NSMacOSGeorgianStringEncoding = 0x80000017,
NSMacOSArmenianStringEncoding = 0x80000018,
NSMacOSSimplifiedChineseStringEncoding = 0x80000019,
NSMacOSTibetanStringEncoding = 0x8000001a,
NSMacOSMongolianStringEncoding = 0x8000001b,
NSMacOSEthiopicStringEncoding = 0x8000001c,
NSMacOSCentralEuropeanRomanStringEncoding = 0x8000001d,
NSMacOSVietnameseStringEncoding = 0x8000001e,
NSMacOSExtendedArabicStringEncoding = 0x8000001f,
// missing 20
/* The following use script code 0, smRoman */
NSMacOSSymbolStringEncoding = 0x80000021,
NSMacOSDingbatsStringEncoding = 0x80000022,
NSMacOSTurkishStringEncoding = 0x80000023,
NSMacOSCroatianStringEncoding = 0x80000024,
NSMacOSIcelandicStringEncoding = 0x80000025,
NSMacOSRomanianStringEncoding = 0x80000026,
NSMacOSCelticStringEncoding = 0x80000027,
NSMacOSGaelicStringEncoding = 0x80000028,
NSMacOSKeyboardSymbolsStringEncoding = 0x80000029,
/* The following use script code 4, smArabic */
NSMacOSFarsiStringEncoding = 0x8000008c,
/* The following use script code 7, smCyrillic */
NSMacOSUkrainianStringEncoding = 0x80000098,
/* The following use script code 32, smUnimplemented */
NSMacOSInuitStringEncoding = 0x800000ec,
NSMacVT100StringEncoding = 0x800000fc, /* VT100/102 font from Comm Toolbox: Latin-1 repertoire + box drawing etc */
/* ICecial Mac OS encodings*/
NSMacHFSStringEncoding = 0x800000ff,
/* Unicode & ISO UCS encodings begin at 0x100 */
// NSUnicodeStringEncoding = 0x80000100,
// NSUTF8StringEncoding = 0x88000100, // defined as 4
// NSUTF16StringEncoding = 0x90000100,
// NSUTF16BigEndianStringEncoding = 0x90000100,
// NSUTF16LittleEndianStringEncoding = 0x94000100,
// NSUTF32StringEncoding = 0x8c000100,
// NSUTF32BigEndianStringEncoding = 0x98000100,
// NSUTF32LittleEndianStringEncoding = 0x9c000100,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6,GS_API_LATEST)
NSUTF7StringEncoding = 0x84000100, /* kTextEncodingUnicodeDefault + kUnicodeUTF7Format RFC2152 */
NSUTF7IMAPStringEncoding = 0x80000A10, /* UTF-7 (IMAP folder variant) RFC3501 */
#endif
/* ISO 8-bit and 7-bit encodings begin at 0x200 */
// NSISOLatin1StringEncoding = 0x80000201, /* ISO 8859-1, defined as 5 */
// NSISOLatin2StringEncoding = 0x80000202, /* ISO 8859-2, defined as 9 */
NSISOLatin3StringEncoding = 0x80000203, /* ISO 8859-3 */
NSISOLatin4StringEncoding = 0x80000204, /* ISO 8859-4 */
NSISOLatinCyrillicStringEncoding = 0x80000205, /* ISO 8859-5 */
NSISOLatinArabicStringEncoding = 0x80000206, /* ISO 8859-6, StringEncoding=ASMO 708, StringEncoding=DOS CP 708 */
NSISOLatinGreekStringEncoding = 0x80000207, /* ISO 8859-7 */
NSISOLatinHebrewStringEncoding = 0x80000208, /* ISO 8859-8 */
NSISOLatin5StringEncoding = 0x80000209, /* ISO 8859-9 */
NSISOLatin6StringEncoding = 0x8000020a, /* ISO 8859-10 */
NSISOLatinThaiStringEncoding = 0x8000020b, /* ISO 8859-11 */
// missing 0c
NSISOLatin7StringEncoding = 0x8000020d, /* ISO 8859-13 */
NSISOLatin8StringEncoding = 0x8000020e, /* ISO 8859-14 */
NSISOLatin9StringEncoding = 0x8000020f, /* ISO 8859-15 */
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSISOLatin10StringEncoding = 0x80000210, /* ISO 8859-16 */
#endif
NSISOLatinTurkishStringEncoding = NSISOLatin5StringEncoding,
NSISOLatinNordicStringEncoding = NSISOLatin6StringEncoding,
NSISOLatinBalticRimStringEncoding = NSISOLatin7StringEncoding,
NSISOLatinCelticStringEncoding = NSISOLatin8StringEncoding,
/* MS-DOS & Windows encodings begin at 0x400 */
NSDOSLatinUSStringEncoding = 0x80000400, /* code page 437 */
NSDOSGreekStringEncoding = 0x80000405, /* code page 737 (formerly code page 437G) */
NSDOSBalticRimStringEncoding = 0x80000406, /* code page 775 */
NSDOSLatin1StringEncoding = 0x80000410, /* code page 850, "Multilingual" */
NSDOSGreek1StringEncoding = 0x80000411, /* code page 851 */
NSDOSLatin2StringEncoding = 0x80000412, /* code page 852, Slavic */
NSDOSCyrillicStringEncoding = 0x80000413, /* code page 855, IBM Cyrillic */
NSDOSTurkishStringEncoding = 0x80000414, /* code page 857, IBM Turkish */
NSDOICortugueseStringEncoding = 0x80000415, /* code page 860 */
NSDOSIcelandicStringEncoding = 0x80000416, /* code page 861 */
NSDOSHebrewStringEncoding = 0x80000417, /* code page 862 */
NSDOSCanadianFrenchStringEncoding = 0x80000418, /* code page 863 */
NSDOSArabicStringEncoding = 0x80000419, /* code page 864 */
NSDOSNordicStringEncoding = 0x8000041A, /* code page 865 */
NSDOSRussianStringEncoding = 0x8000041B, /* code page 866 */
NSDOSGreek2StringEncoding = 0x8000041C, /* code page 869, IBM Modern Greek */
NSDOSThaiStringEncoding = 0x8000041D, /* code page 874, also for Windows */
NSDOSJapaneseStringEncoding = 0x80000420, /* code page 932, also for Windows */
NSDOSChineseSimplifStringEncoding = 0x80000421, /* code page 936, also for Windows */
NSDOSKoreanStringEncoding = 0x80000422, /* code page 949, also for Windows; Unified Hangul Code */
NSDOSChineseTradStringEncoding = 0x80000423, /* code page 950, also for Windows */
NSWindowsLatin1StringEncoding = 0x80000500, /* code page 1252 */
NSWindowsLatin2StringEncoding = 0x80000501, /* code page 1250, Central Europe */
NSWindowsCyrillicStringEncoding = 0x80000502, /* code page 1251, Slavic Cyrillic */
NSWindowsGreekStringEncoding = 0x80000503, /* code page 1253 */
NSWindowsLatin5StringEncoding = 0x80000504, /* code page 1254, Turkish */
NSWindowsHebrewStringEncoding = 0x80000505, /* code page 1255 */
NSWindowsArabicStringEncoding = 0x80000506, /* code page 1256 */
NSWindowsBalticRimStringEncoding = 0x80000507, /* code page 1257 */
NSWindowsVietnameseStringEncoding = 0x80000508, /* code page 1258 */
NSWindowsKoreanJohabStringEncoding = 0x80000510, /* code page 1361, for Windows NT */
// NSASCIIStringEncoding = 0x80000600, /* 0..127 defined as 1 */
NSJIS_X0201_76StringEncoding = 0x80000620,
NSJIS_X0208_83StringEncoding = 0x80000621,
NSJIS_X0208_90StringEncoding = 0x80000622,
NSJIS_X0212_90StringEncoding = 0x80000623,
NSJIS_C6226_78StringEncoding = 0x80000624,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_5,GS_API_LATEST)
NSShiftJIS_X0213StringEncoding = 0x80000628, /* Shift-JIS format encoding of JIS X0213 planes 1 and 2*/
#endif
#if OS_API_VERSION(MAC_OS_X_VERSION_10_5,GS_API_LATEST)
NSShiftJIS_X0213_MenKuTenStringEncoding = 0x80000629, /* JIS X0213 in plane-row-column notation */
NSShiftJIS_X0213_00StringEncoding = 0x80000629, /* Shift-JIS format encoding of JIS X0213 planes 1 and 2 (DEPRECATED) */
#endif
NSGB_2312_80StringEncoding = 0x80000630,
NSGBK_95StringEncoding = 0x80000631, /* annex to GB 13000-93; for Windows 95 */
NSGB_18030_2000StringEncoding = 0x80000632,
NSKSC_5601_87StringEncoding = 0x80000640, /* same as KSC 5601-92 without Johab annex */
NSKSC_5601_92_JohabStringEncoding = 0x80000641, /* KSC 5601-92 Johab annex */
NSCNS_11643_92_P1StringEncoding = 0x80000651, /* CNS 11643-1992 plane 1 */
NSCNS_11643_92_P2StringEncoding = 0x80000652, /* CNS 11643-1992 plane 2 */
NSCNS_11643_92_P3StringEncoding = 0x80000653, /* CNS 11643-1992 plane 3 (was plane 14 in 1986 version) */
/* ISO 2022 collections begin at 0x800 */
NSISO2022JapaneseStringEncoding = 0x80000820,
NSISO2022Japanese2StringEncoding = 0x80000821,
NSISO2022Japanese1StringEncoding = 0x80000822, /* RFC 2237*/
NSISO2022Japanese3StringEncoding = 0x80000823, /* JIS X0213*/
NSISO2022ChineseStringEncoding = 0x80000830,
NSISO2022ExtendedChineseStringEncoding = 0x80000831,
NSISO2022KoreanStringEncoding = 0x80000840,
/* EUC collections begin at 0x900 */
NSEUCJapaneseStringEncoding = 0x80000920, /* ISO 646, 1-byte katakana, JIS 208, JIS 212 */
NSEUCChineseStringEncoding = 0x80000930, /* ISO 646, GB 2312-80 */
NSEUCTaiwanChineseStringEncoding = 0x80000931, /* ISO 646, CNS 11643-1992 Planes 1-16 */
NSEUCKoreanStringEncoding = 0x80000940, /* ISO 646, KS C 5601-1987 */
NSKoreanEUCStringEncoding = NSEUCKoreanStringEncoding,
NSChineseEUCStringEncoding = NSEUCChineseStringEncoding,
NSTaiwanChineseEUCStringEncoding = NSEUCTaiwanChineseStringEncoding,
/* Misc standards begin at 0xA00 */
// NSShiftJISStringEncoding = 0x80000A01, /* plain Shift-JIS */
NSKOI8RStringEncoding = 0x80000A02, /* Russian internet standard */
NSBig5StringEncoding = 0x80000A03, /* Big-5 (has variants) */
NSMacRomanLatin1StringEncoding = 0x80000A04, /* Mac OS Roman permuted to align with ISO Latin-1 */
NSHZ_GB_2312StringEncoding = 0x80000A05, /* HZ (RFC 1842, for Chinese mail & news) */
NSBig5_HKSCS_1999StringEncoding = 0x80000A06, /* Big-5 with Hong Kong ICecial char set supplement*/
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSVISCIIStringEncoding = 0x80000A07, /* RFC 1456, Vietnamese */
NSKOI8UStringEncoding = 0x80000A08, /* RFC 2319, Ukrainian */
NSBig5EStringEncoding = 0x80000A09, /* Taiwan Big-5E standard */
#endif
/* Other platform encodings*/
NSNextStepLatinStringEncoding = 0x80000B01, /* NextStep Latin encoding */
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSNextStepJapaneseStringEncoding = 0x80000B02, /* NextStep Japanese encoding */
#endif
// NSNonLossyASCIIStringEncoding = 0x80000bff,
/* EBCDIC & IBM host encodings begin at 0xC00 */
NSEBCDICUSStringEncoding = 0x80000C01, /* basic EBCDIC-US */
NSEBCDICCP037StringEncoding = 0x80000C02, /* code page 037, extended EBCDIC (Latin-1 set) for US,Canada... */
} NSStringEncoding;
enum {

View file

@ -51,69 +51,201 @@ typedef enum _NSGNUstepStringEncoding
initialised */
GSUndefinedEncoding = 0,
// GNUstep additions
NSKOI8RStringEncoding = 50, // Russian/Cyrillic
NSISOLatin3StringEncoding = 51, // ISO-8859-3; South European
NSISOLatin4StringEncoding = 52, // ISO-8859-4; North European
NSISOCyrillicStringEncoding = 22, // ISO-8859-5
NSISOArabicStringEncoding = 53, // ISO-8859-6
NSISOGreekStringEncoding = 54, // ISO-8859-7
NSISOHebrewStringEncoding = 55, // ISO-8859-8
NSISOLatin5StringEncoding = 57, // ISO-8859-9; Turkish
NSISOLatin6StringEncoding = 58, // ISO-8859-10; Nordic
NSISOThaiStringEncoding = 59, // ISO-8859-11
/* Possible future ISO-8859 additions
// ISO-8859-12
*/
NSISOLatin7StringEncoding = 61, // ISO-8859-13
NSISOLatin8StringEncoding = 62, // ISO-8859-14
NSISOLatin9StringEncoding = 63, // ISO-8859-15; Replaces ISOLatin1
NSGB2312StringEncoding = 56,
NSUTF7StringEncoding = 64, // RFC 2152
/* Exclusive to GNUstep */
NSGSM0338StringEncoding = 65, // GSM (mobile phone) default alphabet
NSBIG5StringEncoding = 66, // Traditional chinese
NSKoreanEUCStringEncoding = 67, // Korean
NSDOSLatinUSStringEncoding = 68, // code page 437
NSDOSGreekStringEncoding, // code page 737 (formerly code page 437G) */
NSDOSBalticRimStringEncoding, // code page 775
NSDOSLatin1StringEncoding, // code page 850, "Multilingual"
NSDOSGreek1StringEncoding, // code page 851
NSDOSLatin2StringEncoding, // code page 852, Slavic
NSDOSCyrillicStringEncoding, // code page 855, IBM Cyrillic
NSDOSTurkishStringEncoding, // code page 857, IBM Turkish
NSDOICortugueseStringEncoding, // code page 860
NSDOSIcelandicStringEncoding, // code page 861
NSDOSHebrewStringEncoding, // code page 862
NSDOSCanadianFrenchStringEncoding, // code page 863
NSDOSArabicStringEncoding, // code page 864
NSDOSNordicStringEncoding, // code page 865
NSDOSRussianStringEncoding, // code page 866
NSDOSGreek2StringEncoding, // code page 869, IBM Modern Greek
NSDOSThaiStringEncoding, // code page 874, also for Windows
NSDOSJapaneseStringEncoding, // code page 932, also for Windows
NSDOSChineseSimplifStringEncoding, // code page 936, also for Windows
NSDOSKoreanStringEncoding, // code page 949, also for Windows; Unified Hangul Code
NSDOSChineseTradStringEncoding, // code page 950, also for Windows
// NSWindowsLatin1StringEncoding, // code page 1252, NSWindowsCP1252StringEncoding
// NSWindowsLatin2StringEncoding, // code page 1250, Central Europe, NSWindowsCP1250StringEncoding
// NSWindowsCyrillicStringEncoding, // code page 1251, Slavic Cyrillic. NSWindowsCP1251StringEncoding
// NSWindowsGreekStringEncoding, // code page 1253, NSWindowsCP1253StringEncoding
// NSWindowsLatin5StringEncoding, // code page 1254, Turkish, NSWindowsCP1254StringEncoding
NSWindowsHebrewStringEncoding, // code page 1255
NSWindowsArabicStringEncoding, // code page 1256
NSWindowsBalticRimStringEncoding, // code page 1257
NSWindowsVietnameseStringEncoding, // code page 1258
NSWindowsKoreanJohabStringEncoding, // code page 1361, for Windows NT
/* NSStringEncoding Appendix */
// NSMacOSRomanStringEncoding = 0x80000000, // defined as 30
NSMacOSJapaneseStringEncoding = 0x80000001,
NSMacOSTraditionalChineseStringEncoding = 0x80000002,
NSMacOSKoreanStringEncoding = 0x80000003,
NSMacOSArabicStringEncoding = 0x80000004,
NSMacOSHebrewStringEncoding = 0x80000005,
NSMacOSGreekStringEncoding = 0x80000006,
NSMacOSCyrillicStringEncoding = 0x80000007,
// missing 08
NSMacOSDevanagariStringEncoding = 0x80000009,
NSMacOSGurmukhiStringEncoding = 0x8000000a,
NSMacOSGujaratiStringEncoding = 0x8000000b,
NSMacOSOriyaStringEncoding = 0x8000000c,
NSMacOSBengaliStringEncoding = 0x8000000d,
NSMacOSTamilStringEncoding = 0x8000000e,
NSMacOSTeluguStringEncoding = 0x8000000f,
NSMacOSKannadaStringEncoding = 0x80000010,
NSMacOSMalayalamStringEncoding = 0x80000011,
NSMacOSSinhaleseStringEncoding = 0x80000012,
NSMacOSBurmeseStringEncoding = 0x80000013,
NSMacOSKhmerStringEncoding = 0x80000014,
NSMacOSThaiStringEncoding = 0x80000015,
NSMacOSLaotianStringEncoding = 0x80000016,
NSMacOSGeorgianStringEncoding = 0x80000017,
NSMacOSArmenianStringEncoding = 0x80000018,
NSMacOSSimplifiedChineseStringEncoding = 0x80000019,
NSMacOSTibetanStringEncoding = 0x8000001a,
NSMacOSMongolianStringEncoding = 0x8000001b,
NSMacOSEthiopicStringEncoding = 0x8000001c,
NSMacOSCentralEuropeanRomanStringEncoding = 0x8000001d,
NSMacOSVietnameseStringEncoding = 0x8000001e,
NSMacOSExtendedArabicStringEncoding = 0x8000001f,
// missing 20
/* The following use script code 0, smRoman */
NSMacOSSymbolStringEncoding = 0x80000021,
NSMacOSDingbatsStringEncoding = 0x80000022,
NSMacOSTurkishStringEncoding = 0x80000023,
NSMacOSCroatianStringEncoding = 0x80000024,
NSMacOSIcelandicStringEncoding = 0x80000025,
NSMacOSRomanianStringEncoding = 0x80000026,
NSMacOSCelticStringEncoding = 0x80000027,
NSMacOSGaelicStringEncoding = 0x80000028,
NSMacOSKeyboardSymbolsStringEncoding = 0x80000029,
/* The following use script code 4, smArabic */
NSMacOSFarsiStringEncoding = 0x8000008c,
/* The following use script code 7, smCyrillic */
NSMacOSUkrainianStringEncoding = 0x80000098,
/* The following use script code 32, smUnimplemented */
NSMacOSInuitStringEncoding = 0x800000ec,
NSMacVT100StringEncoding = 0x800000fc, /* VT100/102 font from Comm Toolbox: Latin-1 repertoire + box drawing etc */
/* ICecial Mac OS encodings*/
NSMacHFSStringEncoding = 0x800000ff,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_ANY)
NSUTF16BigEndianStringEncoding = 0x90000100,
NSUTF16LittleEndianStringEncoding = 0x94000100,
NSUTF32StringEncoding = 0x8c000100,
NSUTF32BigEndianStringEncoding = 0x98000100,
NSUTF32LittleEndianStringEncoding = 0x9c000100,
/* Unicode & ISO UCS encodings begin at 0x100 */
// NSUnicodeStringEncoding = 0x80000100,
// NSUTF8StringEncoding = 0x88000100, // defined as 4
// NSUTF16StringEncoding = 0x90000100,
// NSUTF16BigEndianStringEncoding = 0x90000100,
// NSUTF16LittleEndianStringEncoding = 0x94000100,
// NSUTF32StringEncoding = 0x8c000100,
// NSUTF32BigEndianStringEncoding = 0x98000100,
// NSUTF32LittleEndianStringEncoding = 0x9c000100,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6,GS_API_LATEST)
NSUTF7StringEncoding = 0x84000100, /* kTextEncodingUnicodeDefault + kUnicodeUTF7Format RFC2152 */
NSUTF7IMAPStringEncoding = 0x80000A10, /* UTF-7 (IMAP folder variant) RFC3501 */
#endif
/* ISO 8-bit and 7-bit encodings begin at 0x200 */
// NSISOLatin1StringEncoding = 0x80000201, /* ISO 8859-1, defined as 5 */
// NSISOLatin2StringEncoding = 0x80000202, /* ISO 8859-2, defined as 9 */
NSISOLatin3StringEncoding = 0x80000203, /* ISO 8859-3 */
NSISOLatin4StringEncoding = 0x80000204, /* ISO 8859-4 */
NSISOLatinCyrillicStringEncoding = 0x80000205, /* ISO 8859-5 */
NSISOLatinArabicStringEncoding = 0x80000206, /* ISO 8859-6, StringEncoding=ASMO 708, StringEncoding=DOS CP 708 */
NSISOLatinGreekStringEncoding = 0x80000207, /* ISO 8859-7 */
NSISOLatinHebrewStringEncoding = 0x80000208, /* ISO 8859-8 */
NSISOLatin5StringEncoding = 0x80000209, /* ISO 8859-9 */
NSISOLatin6StringEncoding = 0x8000020a, /* ISO 8859-10 */
NSISOLatinThaiStringEncoding = 0x8000020b, /* ISO 8859-11 */
// missing 0c
NSISOLatin7StringEncoding = 0x8000020d, /* ISO 8859-13 */
NSISOLatin8StringEncoding = 0x8000020e, /* ISO 8859-14 */
NSISOLatin9StringEncoding = 0x8000020f, /* ISO 8859-15 */
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSISOLatin10StringEncoding = 0x80000210, /* ISO 8859-16 */
#endif
NSISOLatinTurkishStringEncoding = NSISOLatin5StringEncoding,
NSISOLatinNordicStringEncoding = NSISOLatin6StringEncoding,
NSISOLatinBalticRimStringEncoding = NSISOLatin7StringEncoding,
NSISOLatinCelticStringEncoding = NSISOLatin8StringEncoding,
/* MS-DOS & Windows encodings begin at 0x400 */
NSDOSLatinUSStringEncoding = 0x80000400, /* code page 437 */
NSDOSGreekStringEncoding = 0x80000405, /* code page 737 (formerly code page 437G) */
NSDOSBalticRimStringEncoding = 0x80000406, /* code page 775 */
NSDOSLatin1StringEncoding = 0x80000410, /* code page 850, "Multilingual" */
NSDOSGreek1StringEncoding = 0x80000411, /* code page 851 */
NSDOSLatin2StringEncoding = 0x80000412, /* code page 852, Slavic */
NSDOSCyrillicStringEncoding = 0x80000413, /* code page 855, IBM Cyrillic */
NSDOSTurkishStringEncoding = 0x80000414, /* code page 857, IBM Turkish */
NSDOICortugueseStringEncoding = 0x80000415, /* code page 860 */
NSDOSIcelandicStringEncoding = 0x80000416, /* code page 861 */
NSDOSHebrewStringEncoding = 0x80000417, /* code page 862 */
NSDOSCanadianFrenchStringEncoding = 0x80000418, /* code page 863 */
NSDOSArabicStringEncoding = 0x80000419, /* code page 864 */
NSDOSNordicStringEncoding = 0x8000041A, /* code page 865 */
NSDOSRussianStringEncoding = 0x8000041B, /* code page 866 */
NSDOSGreek2StringEncoding = 0x8000041C, /* code page 869, IBM Modern Greek */
NSDOSThaiStringEncoding = 0x8000041D, /* code page 874, also for Windows */
NSDOSJapaneseStringEncoding = 0x80000420, /* code page 932, also for Windows */
NSDOSChineseSimplifStringEncoding = 0x80000421, /* code page 936, also for Windows */
NSDOSKoreanStringEncoding = 0x80000422, /* code page 949, also for Windows; Unified Hangul Code */
NSDOSChineseTradStringEncoding = 0x80000423, /* code page 950, also for Windows */
NSWindowsLatin1StringEncoding = 0x80000500, /* code page 1252 */
NSWindowsLatin2StringEncoding = 0x80000501, /* code page 1250, Central Europe */
NSWindowsCyrillicStringEncoding = 0x80000502, /* code page 1251, Slavic Cyrillic */
NSWindowsGreekStringEncoding = 0x80000503, /* code page 1253 */
NSWindowsLatin5StringEncoding = 0x80000504, /* code page 1254, Turkish */
NSWindowsHebrewStringEncoding = 0x80000505, /* code page 1255 */
NSWindowsArabicStringEncoding = 0x80000506, /* code page 1256 */
NSWindowsBalticRimStringEncoding = 0x80000507, /* code page 1257 */
NSWindowsVietnameseStringEncoding = 0x80000508, /* code page 1258 */
NSWindowsKoreanJohabStringEncoding = 0x80000510, /* code page 1361, for Windows NT */
// NSASCIIStringEncoding = 0x80000600, /* 0..127 defined as 1 */
NSJIS_X0201_76StringEncoding = 0x80000620,
NSJIS_X0208_83StringEncoding = 0x80000621,
NSJIS_X0208_90StringEncoding = 0x80000622,
NSJIS_X0212_90StringEncoding = 0x80000623,
NSJIS_C6226_78StringEncoding = 0x80000624,
#if OS_API_VERSION(MAC_OS_X_VERSION_10_5,GS_API_LATEST)
NSShiftJIS_X0213StringEncoding = 0x80000628, /* Shift-JIS format encoding of JIS X0213 planes 1 and 2*/
#endif
#if OS_API_VERSION(MAC_OS_X_VERSION_10_5,GS_API_LATEST)
NSShiftJIS_X0213_MenKuTenStringEncoding = 0x80000629, /* JIS X0213 in plane-row-column notation */
NSShiftJIS_X0213_00StringEncoding = 0x80000629, /* Shift-JIS format encoding of JIS X0213 planes 1 and 2 (DEPRECATED) */
#endif
NSGB_2312_80StringEncoding = 0x80000630,
NSGBK_95StringEncoding = 0x80000631, /* annex to GB 13000-93; for Windows 95 */
NSGB_18030_2000StringEncoding = 0x80000632,
NSKSC_5601_87StringEncoding = 0x80000640, /* same as KSC 5601-92 without Johab annex */
NSKSC_5601_92_JohabStringEncoding = 0x80000641, /* KSC 5601-92 Johab annex */
NSCNS_11643_92_P1StringEncoding = 0x80000651, /* CNS 11643-1992 plane 1 */
NSCNS_11643_92_P2StringEncoding = 0x80000652, /* CNS 11643-1992 plane 2 */
NSCNS_11643_92_P3StringEncoding = 0x80000653, /* CNS 11643-1992 plane 3 (was plane 14 in 1986 version) */
/* ISO 2022 collections begin at 0x800 */
NSISO2022JapaneseStringEncoding = 0x80000820,
NSISO2022Japanese2StringEncoding = 0x80000821,
NSISO2022Japanese1StringEncoding = 0x80000822, /* RFC 2237*/
NSISO2022Japanese3StringEncoding = 0x80000823, /* JIS X0213*/
NSISO2022ChineseStringEncoding = 0x80000830,
NSISO2022ExtendedChineseStringEncoding = 0x80000831,
NSISO2022KoreanStringEncoding = 0x80000840,
/* EUC collections begin at 0x900 */
NSEUCJapaneseStringEncoding = 0x80000920, /* ISO 646, 1-byte katakana, JIS 208, JIS 212 */
NSEUCChineseStringEncoding = 0x80000930, /* ISO 646, GB 2312-80 */
NSEUCTaiwanChineseStringEncoding = 0x80000931, /* ISO 646, CNS 11643-1992 Planes 1-16 */
NSEUCKoreanStringEncoding = 0x80000940, /* ISO 646, KS C 5601-1987 */
NSKoreanEUCStringEncoding = NSEUCKoreanStringEncoding,
NSChineseEUCStringEncoding = NSEUCChineseStringEncoding,
NSTaiwanChineseEUCStringEncoding = NSEUCTaiwanChineseStringEncoding,
/* Misc standards begin at 0xA00 */
// NSShiftJISStringEncoding = 0x80000A01, /* plain Shift-JIS */
NSKOI8RStringEncoding = 0x80000A02, /* Russian internet standard */
NSBig5StringEncoding = 0x80000A03, /* Big-5 (has variants) */
NSMacRomanLatin1StringEncoding = 0x80000A04, /* Mac OS Roman permuted to align with ISO Latin-1 */
NSHZ_GB_2312StringEncoding = 0x80000A05, /* HZ (RFC 1842, for Chinese mail & news) */
NSBig5_HKSCS_1999StringEncoding = 0x80000A06, /* Big-5 with Hong Kong ICecial char set supplement*/
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSVISCIIStringEncoding = 0x80000A07, /* RFC 1456, Vietnamese */
NSKOI8UStringEncoding = 0x80000A08, /* RFC 2319, Ukrainian */
NSBig5EStringEncoding = 0x80000A09, /* Taiwan Big-5E standard */
#endif
/* Other platform encodings*/
NSNextStepLatinStringEncoding = 0x80000B01, /* NextStep Latin encoding */
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
NSNextStepJapaneseStringEncoding = 0x80000B02, /* NextStep Japanese encoding */
#endif
// NSNonLossyASCIIStringEncoding = 0x80000bff,
/* EBCDIC & IBM host encodings begin at 0xC00 */
NSEBCDICUSStringEncoding = 0x80000C01, /* basic EBCDIC-US */
NSEBCDICCP037StringEncoding = 0x80000C02, /* code page 037, extended EBCDIC (Latin-1 set) for US,Canada... */
GSEncodingUnusedLast
} NSGNUstepStringEncoding;

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Latin-6 Nordic (ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Latin-7 Baltic (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Latin-8 Celtic (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Latin-9 West European (new) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Cyrillic (ISO-8859-5)";
NSISOArabicStringEncoding = "Arabic (ISO-8859-6)";
NSISOGreekStringEncoding = "Greek (ISO-8859-7)";
NSISOHebrewStringEncoding = "Hebrew (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Cyrillic (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "Arabic (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "Greek (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "Hebrew (ISO-8859-8)";
NSUTF7StringEncoding = "Unicode UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unicode UTF-8";
NSUnicodeStringEncoding = "Unicode UTF-16";
@ -31,4 +31,30 @@ NSKOI8RStringEncoding = "Cyrillic KOI8-R (Russian)";
NSJapaneseEUCStringEncoding = "Japanese EUC";
NSShiftJISStringEncoding = "Japanese Shift-JIS";
NSISO2022JPStringEncoding = "Japanese JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "Simplified Chinese GB2312";
NSChineseEUCStringEncoding = "Simplified Chinese GB2312";
NSDOSLatinUSStringEncoding = "Latin-US (DOS)";
NSDOSGreekStringEncoding = "Greek (DOS)";
NSDOSBalticRimStringEncoding = "Baltic (DOS)";
NSDOSLatin1StringEncoding = "Western (DOS Latin 1)";
NSDOSGreek1StringEncoding = "Greek (DOS Greek 1)";
NSDOSLatin2StringEncoding = "Central European (DOS Latin 2)";
NSDOSCyrillicStringEncoding = "Cyrillic (DOS)";
NSDOSTurkishStringEncoding = "Turkish (DOS)";
NSDOICortugueseStringEncoding = "Portuguese (DOS)";
NSDOSIcelandicStringEncoding = "Icelandic (DOS)";
NSDOSHebrewStringEncoding = "Hebrew (DOS)";
NSDOSCanadianFrenchStringEncoding = "Canadian French (DOS)";
NSDOSArabicStringEncoding = "Arabic (DOS)";
NSDOSNordicStringEncoding = "Nordic (DOS)";
NSDOSRussianStringEncoding = "Russian (DOS)";
NSDOSGreek2StringEncoding = "Greek (DOS Greek 2)";
NSDOSThaiStringEncoding = "Thai (Windows, DOS)";
NSDOSJapaneseStringEncoding = "Japanese (Windows, DOS)";
NSDOSChineseSimplifStringEncoding = "Simplified Chinese (Windows, DOS)";
NSDOSKoreanStringEncoding = "Korean (Windows, DOS)";
NSDOSChineseTradStringEncoding = "Traditional Chinese (Windows, DOS)";
NSWindowsHebrewStringEncoding = "Hebrew (Windows)";
NSWindowsArabicStringEncoding = "Arabic (Windows)";
NSWindowsBalticRimStringEncoding = "Baltic (Windows)";
NSWindowsVietnameseStringEncoding = "Vietnamese (Windows)";
NSWindowsKoreanJohabStringEncoding = "Korean (Windows Johab)";

View file

@ -1,4 +1,4 @@
/* Esperanto string encodings */
/* Esperanto string encodings */
GSUndefinedEncoding = "nekonata";
NSProprietaryStringEncoding = "Installaĵo-dependa";
NSASCIIStringEncoding = "7 bita ASCII";
@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Latin-6 Norda (ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Latin-7 Balta (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Latin-8 Kelta (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Latin-9 Okcidenteŭropa (nova) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Kirila (ISO-8859-5)";
NSISOArabicStringEncoding = "Araba (ISO-8859-6)";
NSISOGreekStringEncoding = "Greka (ISO-8859-7)";
NSISOHebrewStringEncoding = "Hebrea (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Kirila (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "Araba (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "Greka (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "Hebrea (ISO-8859-8)";
NSUTF7StringEncoding = "Unikodo UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unikodo UTF-8";
NSUnicodeStringEncoding = "Unikodo UTF-16";
@ -31,4 +31,4 @@ NSKOI8RStringEncoding = "Kirila KOI8-R (Rusa)";
NSJapaneseEUCStringEncoding = "Japana EUC";
NSShiftJISStringEncoding = "Japana Shift-JIS";
NSISO2022JPStringEncoding = "Japana JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "Simpligita ĉina GB2312";
NSChineseEUCStringEncoding = "Simpligita ĉina GB2312";

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Latin-6 Nordico (ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Latin-7 Baltico (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Latin-8 Celtico (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Latin-9 Europa Occidentale (nuovo) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Cirillico (ISO-8859-5)";
NSISOArabicStringEncoding = "Arabo (ISO-8859-6)";
NSISOGreekStringEncoding = "Greco (ISO-8859-7)";
NSISOHebrewStringEncoding = "Ebraico (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Cirillico (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "Arabo (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "Greco (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "Ebraico (ISO-8859-8)";
NSUTF7StringEncoding = "Unicode UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unicode UTF-8";
NSUnicodeStringEncoding = "Unicode UTF-16";
@ -31,4 +31,4 @@ NSKOI8RStringEncoding = "Cirillico KOI8-R (Russo)";
NSJapaneseEUCStringEncoding = "Giapponese EUC";
NSShiftJISStringEncoding = "Giapponese Shift-JIS";
NSISO2022JPStringEncoding = "Giapponese JIS 7 Bit (ISO 2022)";
NSGB2312StringEncoding = "Cinese - Cinese Semplificato GB2312";
NSChineseEUCStringEncoding = "Cinese - Cinese Semplificato GB2312";

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Latin-6 \u5317\u6b27 (ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Latin-7 \u30d0\u30eb\u30c8\u8a9e (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Latin-8 \u30b1\u30eb\u30c8\u8a9e (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Latin-9 West European (new) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "\u30ad\u30ea\u30eb\u8a9e (ISO-8859-5)";
NSISOArabicStringEncoding = "\u30a2\u30e9\u30d3\u30a2\u8a9e (ISO-8859-6)";
NSISOGreekStringEncoding = "\u30ae\u30ea\u30b7\u30a2\u8a9e (ISO-8859-7)";
NSISOHebrewStringEncoding = "\u30d8\u30d6\u30e9\u30a4\u8a9e (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "\u30ad\u30ea\u30eb\u8a9e (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "\u30a2\u30e9\u30d3\u30a2\u8a9e (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "\u30ae\u30ea\u30b7\u30a2\u8a9e (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "\u30d8\u30d6\u30e9\u30a4\u8a9e (ISO-8859-8)";
NSUTF7StringEncoding = "Unicode UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unicode UTF-8";
NSUnicodeStringEncoding = "Unicode UTF-16";
@ -31,4 +31,4 @@ NSKOI8RStringEncoding = "\u30b1\u30eb\u30c8\u8a9e KOI8-R (\u30ed\u30b7\u30a2\u
NSJapaneseEUCStringEncoding = "\u65e5\u672c\u8a9e EUC";
NSShiftJISStringEncoding = "\u65e5\u672c\u8a9e Shift-JIS";
NSISO2022JPStringEncoding = "\u65e5\u672c\u8a9e JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "\u7c21\u4f53\u4e2d\u56fd\u8a9e GB2312";
NSChineseEUCStringEncoding = "\u7c21\u4f53\u4e2d\u56fd\u8a9e GB2312";

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO \Ub77c\Ud2f4-6 \Ubd81\Uc720\Ub7fd (ISO-8859-10
NSISOLatin7StringEncoding = "ISO \Ub77c\Ud2f4-7 \Ubc1c\Ud2b8 (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO \Ub77c\Ud2f4-8 \Ucf08\Ud2b8 (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO \Ub77c\Ud2f4-9 \Uc11c\Uc720\Ub7fd (\Uc0c8\Ub85c\Uc6b4) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "\Ud0a4\Ub9b4 (ISO-8859-5)";
NSISOArabicStringEncoding = "\Uc544\Ub78d\Uc5b4 (ISO-8859-6)";
NSISOGreekStringEncoding = "\Uadf8\Ub9ac\Uc2a4\Uc5b4 (ISO-8859-7)";
NSISOHebrewStringEncoding = "\Ud788\Ube0c\Ub9ac\Uc5b4 (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "\Ud0a4\Ub9b4 (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "\Uc544\Ub78d\Uc5b4 (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "\Uadf8\Ub9ac\Uc2a4\Uc5b4 (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "\Ud788\Ube0c\Ub9ac\Uc5b4 (ISO-8859-8)";
NSUTF7StringEncoding = "\Uc720\Ub2c8\Ucf54\Ub4dc UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "\Uc720\Ub2c8\Ucf54\Ub4dc UTF-8";
NSUnicodeStringEncoding = "\Uc720\Ub2c8\Ucf54\Ub4dc UTF-16";
@ -31,4 +31,4 @@ NSKOI8RStringEncoding = "\Ud0a4\Ub9b4 KOI8-R (\Ub7ec\Uc2dc\Uc544\Uc5b4)";
NSJapaneseEUCStringEncoding = "\Uc77c\Ubcf8\Uc5b4 EUC";
NSShiftJISStringEncoding = "\Uc77c\Ubcf8\Uc5b4 Shift-JIS";
NSISO2022JPStringEncoding = "\Uc77c\Ubcf8\Uc5b4 JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "\Uc911\Uad6d\Uc5b4 \Uac04\Uccb4 GB2312";
NSChineseEUCStringEncoding = "\Uc911\Uad6d\Uc5b4 \Uac04\Uccb4 GB2312";

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Latin-6 Nordycki (ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Latin-7 Bałtycki (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Latin-8 Celtycki (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Latin-9 Wschodnio-europejski (nowy) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Cyrylica (ISO-8859-5)";
NSISOArabicStringEncoding = "Arabski (ISO-8859-6)";
NSISOGreekStringEncoding = "Greka (ISO-8859-7)";
NSISOHebrewStringEncoding = "Hebrajski (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Cyrylica (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "Arabski (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "Greka (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "Hebrajski (ISO-8859-8)";
NSUTF7StringEncoding = "Unikod UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unikod UTF-8";
NSUnicodeStringEncoding = "Unikod UTF-16";
@ -31,4 +31,4 @@ NSKOI8RStringEncoding = "Cyrylica KOI8-R (Rosja)";
NSJapaneseEUCStringEncoding = "Japoński EUC";
NSShiftJISStringEncoding = "Japoński Shift-JIS";
NSISO2022JPStringEncoding = "Japoński JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "Uproszczony chiński GB2312";
NSChineseEUCStringEncoding = "Uproszczony chiński GB2312";

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "ISO Lat\U00edn-6 N\U00f3rdico(ISO-8859-10)";
NSISOLatin7StringEncoding = "ISO Lat\U00edn-7 B\U00e1ltico (ISO-8859-13)";
NSISOLatin8StringEncoding = "ISO Lat\U00edn-8 C\U00e9ltico (ISO-8859-14)";
NSISOLatin9StringEncoding = "ISO Lat\U00edn-9 Europa Occidental (nuevo) (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Cir\U00edlico (ISO-8859-5)";
NSISOArabicStringEncoding = "Ar\U00e1bigo (ISO-8859-6)";
NSISOGreekStringEncoding = "Griego (ISO-8859-7)";
NSISOHebrewStringEncoding = "Hebreo (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Cir\U00edlico (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "Ar\U00e1bigo (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "Griego (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "Hebreo (ISO-8859-8)";
NSUTF7StringEncoding = "Unicode UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unicode UTF-8";
NSUnicodeStringEncoding = "Unicode UTF-16";
@ -31,7 +31,7 @@ NSKOI8RStringEncoding = "Cir\U00edlico KOI8-R (Ruso)";
NSJapaneseEUCStringEncoding = "Japon\U00e9s EUC";
NSShiftJISStringEncoding = "Japon\U00e9s Shift-JIS";
NSISO2022JPStringEncoding = "Japon\U00e9s JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "Chino Simplificado GB2312";
NSChineseEUCStringEncoding = "Chino Simplificado GB2312";
/* Menu items for NSUndoManager */

View file

@ -20,10 +20,10 @@ NSISOLatin6StringEncoding = "\u570b\u969b\u6a19\u6e96\u62c9\u4e01\u6587-6 \u53
NSISOLatin7StringEncoding = "\u570b\u969b\u6a19\u6e96\u62c9\u4e01\u6587-7 \u6ce2\u7f85\u5730\u6d77 (ISO-8859-13)";
NSISOLatin8StringEncoding = "\u570b\u969b\u6a19\u6e96\u62c9\u4e01\u6587-8 \u514b\u723e\u7279\u8a9e (ISO-8859-14)";
NSISOLatin9StringEncoding = "\u570b\u969b\u6a19\u6e96\u62c9\u4e01\u6587-9 \u65b0\u897f\u6b50 (ISO-8859-15)";
NSISOCyrillicStringEncoding = "Cyrillic (ISO-8859-5)";
NSISOArabicStringEncoding = "\u963f\u62c9\u4f2f\u8a9e (ISO-8859-6)";
NSISOGreekStringEncoding = "\u5e0c\u81d8\u8a9e (ISO-8859-7)";
NSISOHebrewStringEncoding = "\u7336\u592a\u8a9e (ISO-8859-8)";
NSISOLatinCyrillicStringEncoding = "Cyrillic (ISO-8859-5)";
NSISOLatinArabicStringEncoding = "\u963f\u62c9\u4f2f\u8a9e (ISO-8859-6)";
NSISOLatinGreekStringEncoding = "\u5e0c\u81d8\u8a9e (ISO-8859-7)";
NSISOLatinHebrewStringEncoding = "\u7336\u592a\u8a9e (ISO-8859-8)";
NSUTF7StringEncoding = "Unicode UTF-7 (RFC 2152)";
NSUTF8StringEncoding = "Unicode UTF-8";
NSUnicodeStringEncoding = "Unicode UTF-16";
@ -31,5 +31,5 @@ NSKOI8RStringEncoding = "Cyrillic KOI8-R (Russian)";
NSJapaneseEUCStringEncoding = "\u65e5\u6587 EUC";
NSShiftJISStringEncoding = "\u65e5\u6587 Shift-JIS";
NSISO2022JPStringEncoding = "\u65e5\u6587 JIS (7 bits) (ISO 2022)";
NSGB2312StringEncoding = "\u7c21\u9ad4\u4e2d\u6587 GB2312";
NSBIG5StringEncoding = "\u7e41\u9ad4\u4e2d\u6587 BIG5";
NSChineseEUCStringEncoding = "\u7c21\u9ad4\u4e2d\u6587 GB2312";
NSBig5StringEncoding = "\u7e41\u9ad4\u4e2d\u6587 BIG5";

View file

@ -5290,21 +5290,21 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
NSMapInsert(charsets, (void*)@"iso8859-4",
(void*)NSISOLatin4StringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-5",
(void*)NSISOCyrillicStringEncoding);
(void*)NSISOLatinCyrillicStringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-5",
(void*)NSISOCyrillicStringEncoding);
(void*)NSISOLatinCyrillicStringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-6",
(void*)NSISOArabicStringEncoding);
(void*)NSISOLatinArabicStringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-6",
(void*)NSISOArabicStringEncoding);
(void*)NSISOLatinArabicStringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-7",
(void*)NSISOGreekStringEncoding);
(void*)NSISOLatinGreekStringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-7",
(void*)NSISOGreekStringEncoding);
(void*)NSISOLatinGreekStringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-8",
(void*)NSISOHebrewStringEncoding);
(void*)NSISOLatinHebrewStringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-8",
(void*)NSISOHebrewStringEncoding);
(void*)NSISOLatinHebrewStringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-9",
(void*)NSISOLatin5StringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-9",
@ -5314,9 +5314,9 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
NSMapInsert(charsets, (void*)@"iso8859-10",
(void*)NSISOLatin6StringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-11",
(void*)NSISOThaiStringEncoding);
(void*)NSISOLatinThaiStringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-11",
(void*)NSISOThaiStringEncoding);
(void*)NSISOLatinThaiStringEncoding);
NSMapInsert(charsets, (void*)@"iso-8859-13",
(void*)NSISOLatin7StringEncoding);
NSMapInsert(charsets, (void*)@"iso8859-13",
@ -5330,7 +5330,7 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
NSMapInsert(charsets, (void*)@"iso8859-15",
(void*)NSISOLatin9StringEncoding);
NSMapInsert(charsets, (void*)@"big5",
(void*)NSBIG5StringEncoding);
(void*)NSBig5StringEncoding);
NSMapInsert(charsets, (void*)@"utf-7",
(void*)NSUTF7StringEncoding);
NSMapInsert(charsets, (void*)@"utf7",
@ -5346,9 +5346,9 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
NSMapInsert(charsets, (void*)@"ksc5601",
(void*)NSKoreanEUCStringEncoding);
NSMapInsert(charsets, (void*)@"gb2312.1980",
(void*)NSGB2312StringEncoding);
(void*)NSChineseEUCStringEncoding);
NSMapInsert(charsets, (void*)@"gb2312",
(void*)NSGB2312StringEncoding);
(void*)NSChineseEUCStringEncoding);
NSMapInsert(charsets, (void*)@"ibm437",
(void*)NSDOSLatinUSStringEncoding);
NSMapInsert(charsets, (void*)@"cp437",
@ -5442,26 +5442,26 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
/* Also map from GNUstep encoding names.
*/
NSMapInsert(charsets, (void*)@"NSISOCyrillicStringEncoding",
(void*)NSISOCyrillicStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatinCyrillicStringEncoding",
(void*)NSISOLatinCyrillicStringEncoding);
NSMapInsert(charsets, (void*)@"NSKOI8RStringEncoding",
(void*)NSKOI8RStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin3StringEncoding",
(void*)NSISOLatin3StringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin4StringEncoding",
(void*)NSISOLatin4StringEncoding);
NSMapInsert(charsets, (void*)@"NSISOArabicStringEncoding",
(void*)NSISOArabicStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOGreekStringEncoding",
(void*)NSISOGreekStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOHebrewStringEncoding",
(void*)NSISOHebrewStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatinArabicStringEncoding",
(void*)NSISOLatinArabicStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatinGreekStringEncoding",
(void*)NSISOLatinGreekStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatinHebrewStringEncoding",
(void*)NSISOLatinHebrewStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin5StringEncoding",
(void*)NSISOLatin5StringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin6StringEncoding",
(void*)NSISOLatin6StringEncoding);
NSMapInsert(charsets, (void*)@"NSISOThaiStringEncoding",
(void*)NSISOThaiStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatinThaiStringEncoding",
(void*)NSISOLatinThaiStringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin7StringEncoding",
(void*)NSISOLatin7StringEncoding);
NSMapInsert(charsets, (void*)@"NSISOLatin8StringEncoding",
@ -5470,12 +5470,12 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
(void*)NSISOLatin9StringEncoding);
NSMapInsert(charsets, (void*)@"NSUTF7StringEncoding",
(void*)NSUTF7StringEncoding);
NSMapInsert(charsets, (void*)@"NSGB2312StringEncoding",
(void*)NSGB2312StringEncoding);
NSMapInsert(charsets, (void*)@"NSChineseEUCStringEncoding",
(void*)NSChineseEUCStringEncoding);
NSMapInsert(charsets, (void*)@"NSGSM0338StringEncoding",
(void*)NSGSM0338StringEncoding);
NSMapInsert(charsets, (void*)@"NSBIG5StringEncoding",
(void*)NSBIG5StringEncoding);
NSMapInsert(charsets, (void*)@"NSBig5StringEncoding",
(void*)NSBig5StringEncoding);
NSMapInsert(charsets, (void*)@"NSKoreanEUCStringEncoding",
(void*)NSKoreanEUCStringEncoding);
NSMapInsert(charsets, (void*)@"NSDOSLatinUSStringEncoding",
@ -5577,19 +5577,19 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
(void*)@"iso-8859-3");
NSMapInsert(encodings, (void*)NSISOLatin4StringEncoding,
(void*)@"iso-8859-4");
NSMapInsert(encodings, (void*)NSISOCyrillicStringEncoding,
NSMapInsert(encodings, (void*)NSISOLatinCyrillicStringEncoding,
(void*)@"iso-8859-5");
NSMapInsert(encodings, (void*)NSISOArabicStringEncoding,
NSMapInsert(encodings, (void*)NSISOLatinArabicStringEncoding,
(void*)@"iso-8859-6");
NSMapInsert(encodings, (void*)NSISOGreekStringEncoding,
NSMapInsert(encodings, (void*)NSISOLatinGreekStringEncoding,
(void*)@"iso-8859-7");
NSMapInsert(encodings, (void*)NSISOHebrewStringEncoding,
NSMapInsert(encodings, (void*)NSISOLatinHebrewStringEncoding,
(void*)@"iso-8859-8");
NSMapInsert(encodings, (void*)NSISOLatin5StringEncoding,
(void*)@"iso-8859-9");
NSMapInsert(encodings, (void*)NSISOLatin6StringEncoding,
(void*)@"iso-8859-10");
NSMapInsert(encodings, (void*)NSISOThaiStringEncoding,
NSMapInsert(encodings, (void*)NSISOLatinThaiStringEncoding,
(void*)@"iso-8859-11");
NSMapInsert(encodings, (void*)NSISOLatin7StringEncoding,
(void*)@"iso-8859-13");
@ -5597,7 +5597,7 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
(void*)@"iso-8859-14");
NSMapInsert(encodings, (void*)NSISOLatin9StringEncoding,
(void*)@"iso-8859-15");
NSMapInsert(encodings, (void*)NSBIG5StringEncoding,
NSMapInsert(encodings, (void*)NSBig5StringEncoding,
(void*)@"big5");
NSMapInsert(encodings, (void*)NSUTF7StringEncoding,
(void*)@"utf-7");
@ -5605,7 +5605,7 @@ appendString(NSMutableData *m, NSUInteger offset, NSUInteger fold,
(void*)@"gsm0338");
NSMapInsert(encodings, (void*)NSKOI8RStringEncoding,
(void*)@"koi8-r");
NSMapInsert(encodings, (void*)NSGB2312StringEncoding,
NSMapInsert(encodings, (void*)NSChineseEUCStringEncoding,
(void*)@"gb2312.1980");
NSMapInsert(encodings, (void*)NSKoreanEUCStringEncoding,
(void*)@"ksc5601.1987");

View file

@ -35,6 +35,7 @@
#import "Foundation/NSDictionary.h"
#import "Foundation/NSError.h"
#import "Foundation/NSException.h"
#import "Foundation/NSMapTable.h"
#import "Foundation/NSPathUtilities.h"
#endif
@ -221,26 +222,26 @@ static struct _strenc_ str_encoding_table[] = {
#endif
// GNUstep additions
{NSISOCyrillicStringEncoding,
"NSISOCyrillicStringEncoding","ISO-8859-5",0,1,0},
{NSISOLatinCyrillicStringEncoding,
"NSISOLatinCyrillicStringEncoding","ISO-8859-5",0,1,0},
{NSKOI8RStringEncoding,
"NSKOI8RStringEncoding","KOI8-R",0,0,0},
{NSISOLatin3StringEncoding,
"NSISOLatin3StringEncoding","ISO-8859-3",0,0,0},
{NSISOLatin4StringEncoding,
"NSISOLatin4StringEncoding","ISO-8859-4",0,0,0},
{NSISOArabicStringEncoding,
"NSISOArabicStringEncoding","ISO-8859-6",0,0,0},
{NSISOGreekStringEncoding,
"NSISOGreekStringEncoding","ISO-8859-7",0,0,0},
{NSISOHebrewStringEncoding,
"NSISOHebrewStringEncoding","ISO-8859-8",0,0,0},
{NSISOLatinArabicStringEncoding,
"NSISOLatinArabicStringEncoding","ISO-8859-6",0,0,0},
{NSISOLatinGreekStringEncoding,
"NSISOLatinGreekStringEncoding","ISO-8859-7",0,0,0},
{NSISOLatinHebrewStringEncoding,
"NSISOLatinHebrewStringEncoding","ISO-8859-8",0,0,0},
{NSISOLatin5StringEncoding,
"NSISOLatin5StringEncoding","ISO-8859-9",0,0,0},
{NSISOLatin6StringEncoding,
"NSISOLatin6StringEncoding","ISO-8859-10",0,0,0},
{NSISOThaiStringEncoding,
"NSISOThaiStringEncoding","ISO-8859-11",1,1,0},
{NSISOLatinThaiStringEncoding,
"NSISOLatinThaiStringEncoding","ISO-8859-11",1,1,0},
{NSISOLatin7StringEncoding,
"NSISOLatin7StringEncoding","ISO-8859-13",0,0,0},
{NSISOLatin8StringEncoding,
@ -249,12 +250,12 @@ static struct _strenc_ str_encoding_table[] = {
"NSISOLatin9StringEncoding","ISO-8859-15",1,1,0},
{NSUTF7StringEncoding,
"NSUTF7StringEncoding","UTF-7",0,0,0},
{NSGB2312StringEncoding,
"NSGB2312StringEncoding","EUC-CN",0,0,0},
{NSChineseEUCStringEncoding,
"NSChineseEUCStringEncoding","EUC-CN",0,0,0},
{NSGSM0338StringEncoding,
"NSGSM0338StringEncoding","",0,1,0},
{NSBIG5StringEncoding,
"NSBIG5StringEncoding","BIG5",0,0,0},
{NSBig5StringEncoding,
"NSBig5StringEncoding","BIG5",0,0,0},
{NSKoreanEUCStringEncoding,
"NSKoreanEUCStringEncoding","EUC-KR",0,0,0},
@ -329,60 +330,34 @@ static struct _strenc_ str_encoding_table[] = {
{0,"Unknown encoding","",0,0,0}
};
static struct _strenc_ **encodingTable = 0;
static unsigned encTableSize = 0;
static NSMapTable *encodingPointerTable = nil;
static void GSSetupEncodingTable(void)
{
if (encodingTable == 0)
if (nil == encodingPointerTable)
{
GS_MUTEX_LOCK(local_lock);
if (encodingTable == 0)
if (nil == encodingPointerTable)
{
static struct _strenc_ **encTable = 0;
unsigned count;
unsigned i;
/*
* We want to store pointers to our string encoding info in a
* large table so we can do efficient lookup by encoding value.
*/
#define MAX_ENCODING 128
count = sizeof(str_encoding_table) / sizeof(struct _strenc_);
/*
* First determine the largest encoding value and create a
* large enough table of pointers.
*/
encTableSize = 0;
for (i = 0; i < count; i++)
{
unsigned tmp = str_encoding_table[i].enc;
if (tmp > encTableSize)
{
if (tmp < MAX_ENCODING)
{
encTableSize = tmp;
}
}
}
encTable = malloc(
(encTableSize+1)*sizeof(struct _strenc_ *));
memset(encTable, 0, (encTableSize+1)*sizeof(struct _strenc_ *));
encTableSize = sizeof(str_encoding_table) / sizeof(struct _strenc_);
encodingPointerTable = NSCreateMapTable(NSIntegerMapKeyCallBacks, NSNonOwnedPointerMapValueCallBacks, encTableSize);
[[NSObject leakAt:&encodingPointerTable] release];
/*
* Now set up the pointers at the correct location in the table.
*/
for (i = 0; i < count; i++)
for (i = 0; i < encTableSize; i++)
{
struct _strenc_ *entry = &str_encoding_table[i];
unsigned tmp = entry->enc;
if (tmp < MAX_ENCODING)
{
encTable[tmp] = entry;
}
NSMapInsert(encodingPointerTable, (const void *)entry->enc, (const void *)entry);
#ifdef HAVE_ICONV
if (entry->iconv != 0 && *(entry->iconv) != 0)
{
@ -410,7 +385,6 @@ static void GSSetupEncodingTable(void)
}
#endif
}
encodingTable = encTable;
}
GS_MUTEX_UNLOCK(local_lock);
}
@ -424,24 +398,7 @@ EntryForEncoding(NSStringEncoding enc)
if (enc != 0)
{
GSSetupEncodingTable();
if (enc > 0 && enc <= encTableSize)
{
entry = encodingTable[enc];
}
else
{
unsigned i = 0;
while (i < sizeof(str_encoding_table) / sizeof(struct _strenc_))
{
if (str_encoding_table[i].enc == enc)
{
entry = &str_encoding_table[i];
break;
}
i++;
}
}
entry = NSMapGet(encodingPointerTable, (const void *)enc);
}
return entry;
}
@ -517,7 +474,7 @@ GSPrivateIsEncodingSupported(NSStringEncoding enc)
* character set registry and encoding information. For instance,
* for the iso8859-5 character set, the registry is iso8859 and
* the encoding is 5, and the returned NSStringEncoding is
* NSISOCyrillicStringEncoding. If there is no specific encoding,
* NSISOLatinCyrillicStringEncoding. If there is no specific encoding,
* use @"0". Returns GSUndefinedEncoding if there is no match.
*/
NSStringEncoding
@ -1430,7 +1387,7 @@ GSToUnicode(unichar **dst, unsigned int *size, const unsigned char *src,
table = Next_char_to_uni_table;
goto tables;
case NSISOCyrillicStringEncoding:
case NSISOLatinCyrillicStringEncoding:
base = Cyrillic_conv_base;
table = Cyrillic_char_to_uni_table;
goto tables;
@ -1445,7 +1402,7 @@ GSToUnicode(unichar **dst, unsigned int *size, const unsigned char *src,
table = Latin9_char_to_uni_table;
goto tables;
case NSISOThaiStringEncoding:
case NSISOLatinThaiStringEncoding:
base = Thai_conv_base;
table = Thai_char_to_uni_table;
goto tables;
@ -2452,7 +2409,7 @@ bases:
tsize = Next_uni_to_char_table_size;
goto tables;
case NSISOCyrillicStringEncoding:
case NSISOLatinCyrillicStringEncoding:
base = Cyrillic_conv_base;
table = Cyrillic_uni_to_char_table;
tsize = Cyrillic_uni_to_char_table_size;
@ -2470,7 +2427,7 @@ bases:
tsize = Latin9_uni_to_char_table_size;
goto tables;
case NSISOThaiStringEncoding:
case NSISOLatinThaiStringEncoding:
base = Thai_conv_base;
table = Thai_uni_to_char_table;
tsize = Thai_uni_to_char_table_size;
@ -2808,11 +2765,12 @@ GSPrivateAvailableEncodings()
*/
encodings = malloc(sizeof(NSStringEncoding) * (encTableSize+1));
pos = 0;
for (i = 0; i < encTableSize+1; i++)
for (i = 0; i < encTableSize; i++)
{
if (GSPrivateIsEncodingSupported(i) == YES)
NSStringEncoding encoding = str_encoding_table[i].enc;
if (GSPrivateIsEncodingSupported(encoding) == YES)
{
encodings[pos++] = i;
encodings[pos++] = encoding;
}
}
encodings[pos] = 0;
@ -2868,7 +2826,7 @@ GSPrivateCStringEncoding(const char *encoding)
/* AIX IRIX OSF/1 Solaris NetBSD */
|| strcmp(encoding, "ISO8859-5") == 0
|| strcmp(encoding, "iso88595") == 0 /* HP-UX */)
enc = NSISOCyrillicStringEncoding;
enc = NSISOLatinCyrillicStringEncoding;
else if (strcmp(encoding, "KOI8-R") == 0 /* glibc */
|| strcmp(encoding, "koi8-r") == 0 /* Solaris */)
enc = NSKOI8RStringEncoding;
@ -2881,15 +2839,15 @@ GSPrivateCStringEncoding(const char *encoding)
else if (strcmp(encoding, "ISO-8859-6") == 0 /* glibc */
|| strcmp(encoding, "ISO8859-6") == 0 /* AIX Solaris */
|| strcmp(encoding, "iso88596") == 0 /* HP-UX */)
enc = NSISOArabicStringEncoding;
enc = NSISOLatinArabicStringEncoding;
else if (strcmp(encoding, "ISO-8859-7") == 0 /* glibc */
|| strcmp(encoding, "ISO8859-7") == 0 /* AIX IRIX OSF/1 Solaris */
|| strcmp(encoding, "iso88597") == 0 /* HP-UX */)
enc = NSISOGreekStringEncoding;
enc = NSISOLatinGreekStringEncoding;
else if (strcmp(encoding, "ISO-8859-8") == 0 /* glibc */
|| strcmp(encoding, "ISO8859-8") == 0 /* AIX OSF/1 Solaris */
|| strcmp(encoding, "iso88598") == 0 /* HP-UX */)
enc = NSISOHebrewStringEncoding;
enc = NSISOLatinHebrewStringEncoding;
else if (strcmp(encoding, "ISO-8859-9") == 0 /* glibc */
|| strcmp(encoding, "ISO8859-9") == 0 /* AIX IRIX OSF/1 Solaris */
|| strcmp(encoding, "iso88599") == 0 /* HP-UX */)
@ -2901,7 +2859,7 @@ GSPrivateCStringEncoding(const char *encoding)
|| strcmp(encoding, "tis620") == 0 /* HP-UX */
|| strcmp(encoding, "TIS620.2533") == 0 /* Solaris */
|| strcmp(encoding, "TACTIS") == 0 /* OSF/1 */)
enc = NSISOThaiStringEncoding;
enc = NSISOLatinThaiStringEncoding;
else if (strcmp(encoding, "ISO-8859-13") == 0 /* glibc */
|| strcmp(encoding, "ISO8859-13") == 0 /* */
|| strcmp(encoding, "IBM-921") == 0 /* AIX */)
@ -2919,10 +2877,10 @@ GSPrivateCStringEncoding(const char *encoding)
|| strcmp(encoding, "eucCN") == 0 /* IRIX NetBSD */
|| strcmp(encoding, "IBM-eucCN") == 0 /* AIX */
|| strcmp(encoding, "hp15CN") == 0 /* HP-UX */)
enc = NSGB2312StringEncoding;
enc = NSChineseEUCStringEncoding;
else if (strcmp(encoding, "BIG5") == 0 /* glibc Solaris NetBSD */
|| strcmp(encoding, "big5") == 0 /* AIX HP-UX OSF/1 */)
enc = NSBIG5StringEncoding;
enc = NSBig5StringEncoding;
else if (strcmp(encoding, "EUC-KR") == 0 /* glibc */
|| strcmp(encoding, "eucKR") == 0 /* HP-UX IRIX OSF/1 NetBSD */
|| strcmp(encoding, "IBM-eucKR") == 0 /* AIX */

View file

@ -21,8 +21,8 @@ int main()
== NSASCIIStringEncoding,
"charset 'ascii' is NSASCIIStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"big5"]
== NSBIG5StringEncoding,
"charset 'big5' is NSBIG5StringEncoding");
== NSBig5StringEncoding,
"charset 'big5' is NSBig5StringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"cp367"]
== NSASCIIStringEncoding,
"charset 'cp367' is NSASCIIStringEncoding");
@ -36,8 +36,8 @@ int main()
== NSISOLatin1StringEncoding,
"charset 'csisolatin1' is NSISOLatin1StringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"gb2312.1980"]
== NSGB2312StringEncoding,
"charset 'gb2312.1980' is NSGB2312StringEncoding");
== NSChineseEUCStringEncoding,
"charset 'gb2312.1980' is NSChineseEUCStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"gsm0338"]
== NSGSM0338StringEncoding,
"charset 'gsm0338' is NSGSM0338StringEncoding");
@ -69,11 +69,11 @@ int main()
== NSISOLatin6StringEncoding,
"charset 'iso8859-10' is NSISOLatin6StringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-11"]
== NSISOThaiStringEncoding,
"charset 'iso-8859-11' is NSISOThaiStringEncoding");
== NSISOLatinThaiStringEncoding,
"charset 'iso-8859-11' is NSISOLatinThaiStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso8859-11"]
== NSISOThaiStringEncoding,
"charset 'iso8859-11' is NSISOThaiStringEncoding");
== NSISOLatinThaiStringEncoding,
"charset 'iso8859-11' is NSISOLatinThaiStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-13"]
== NSISOLatin7StringEncoding,
"charset 'iso-8859-13' is NSISOLatin7StringEncoding");
@ -117,29 +117,29 @@ int main()
== NSISOLatin4StringEncoding,
"charset 'iso8859-4' is NSISOLatin4StringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-5"]
== NSISOCyrillicStringEncoding,
"charset 'iso-8859-5' is NSISOCyrillicStringEncoding");
== NSISOLatinCyrillicStringEncoding,
"charset 'iso-8859-5' is NSISOLatinCyrillicStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso8859-5"]
== NSISOCyrillicStringEncoding,
"charset 'iso8859-5' is NSISOCyrillicStringEncoding");
== NSISOLatinCyrillicStringEncoding,
"charset 'iso8859-5' is NSISOLatinCyrillicStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-6"]
== NSISOArabicStringEncoding,
"charset 'iso-8859-6' is NSISOArabicStringEncoding");
== NSISOLatinArabicStringEncoding,
"charset 'iso-8859-6' is NSISOLatinArabicStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso8859-6"]
== NSISOArabicStringEncoding,
"charset 'iso8859-6' is NSISOArabicStringEncoding");
== NSISOLatinArabicStringEncoding,
"charset 'iso8859-6' is NSISOLatinArabicStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-7"]
== NSISOGreekStringEncoding,
"charset 'iso-8859-7' is NSISOGreekStringEncoding");
== NSISOLatinGreekStringEncoding,
"charset 'iso-8859-7' is NSISOLatinGreekStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso8859-7"]
== NSISOGreekStringEncoding,
"charset 'iso8859-7' is NSISOGreekStringEncoding");
== NSISOLatinGreekStringEncoding,
"charset 'iso8859-7' is NSISOLatinGreekStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-8"]
== NSISOHebrewStringEncoding,
"charset 'iso-8859-8' is NSISOHebrewStringEncoding");
== NSISOLatinHebrewStringEncoding,
"charset 'iso-8859-8' is NSISOLatinHebrewStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso8859-8"]
== NSISOHebrewStringEncoding,
"charset 'iso8859-8' is NSISOHebrewStringEncoding");
== NSISOLatinHebrewStringEncoding,
"charset 'iso8859-8' is NSISOLatinHebrewStringEncoding");
PASS([GSMimeDocument encodingFromCharset: @"iso-8859-9"]
== NSISOLatin5StringEncoding,
"charset 'iso-8859-9' is NSISOLatin5StringEncoding");
@ -257,27 +257,27 @@ int main()
PASS([[GSMimeDocument charsetFromEncoding: NSASCIIStringEncoding]
isEqualToString: @"us-ascii"],
"NSASCIIStringEncoding canonical charset is us-ascii");
PASS([[GSMimeDocument charsetFromEncoding: NSBIG5StringEncoding]
PASS([[GSMimeDocument charsetFromEncoding: NSBig5StringEncoding]
isEqualToString: @"big5"],
"NSBIG5StringEncoding canonical charset is big5");
PASS([[GSMimeDocument charsetFromEncoding: NSGB2312StringEncoding]
"NSBig5StringEncoding canonical charset is big5");
PASS([[GSMimeDocument charsetFromEncoding: NSChineseEUCStringEncoding]
isEqualToString: @"gb2312.1980"],
"NSGB2312StringEncoding canonical charset is gb2312.1980");
"NSChineseEUCStringEncoding canonical charset is gb2312.1980");
PASS([[GSMimeDocument charsetFromEncoding: NSGSM0338StringEncoding]
isEqualToString: @"gsm0338"],
"NSGSM0338StringEncoding canonical charset is gsm0338");
PASS([[GSMimeDocument charsetFromEncoding: NSISOArabicStringEncoding]
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatinArabicStringEncoding]
isEqualToString: @"iso-8859-6"],
"NSISOArabicStringEncoding canonical charset is iso-8859-6");
PASS([[GSMimeDocument charsetFromEncoding: NSISOCyrillicStringEncoding]
"NSISOLatinArabicStringEncoding canonical charset is iso-8859-6");
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatinCyrillicStringEncoding]
isEqualToString: @"iso-8859-5"],
"NSISOCyrillicStringEncoding canonical charset is iso-8859-5");
PASS([[GSMimeDocument charsetFromEncoding: NSISOGreekStringEncoding]
"NSISOLatinCyrillicStringEncoding canonical charset is iso-8859-5");
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatinGreekStringEncoding]
isEqualToString: @"iso-8859-7"],
"NSISOGreekStringEncoding canonical charset is iso-8859-7");
PASS([[GSMimeDocument charsetFromEncoding: NSISOHebrewStringEncoding]
"NSISOLatinGreekStringEncoding canonical charset is iso-8859-7");
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatinHebrewStringEncoding]
isEqualToString: @"iso-8859-8"],
"NSISOHebrewStringEncoding canonical charset is iso-8859-8");
"NSISOLatinHebrewStringEncoding canonical charset is iso-8859-8");
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatin1StringEncoding]
isEqualToString: @"iso-8859-1"],
"NSISOLatin1StringEncoding canonical charset is iso-8859-1");
@ -305,9 +305,9 @@ int main()
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatin9StringEncoding]
isEqualToString: @"iso-8859-15"],
"NSISOLatin9StringEncoding canonical charset is iso-8859-15");
PASS([[GSMimeDocument charsetFromEncoding: NSISOThaiStringEncoding]
PASS([[GSMimeDocument charsetFromEncoding: NSISOLatinThaiStringEncoding]
isEqualToString: @"iso-8859-11"],
"NSISOThaiStringEncoding canonical charset is iso-8859-11");
"NSISOLatinThaiStringEncoding canonical charset is iso-8859-11");
PASS([[GSMimeDocument charsetFromEncoding: NSKOI8RStringEncoding]
isEqualToString: @"koi8-r"],
"NSKOI8RStringEncoding canonical charset is koi8-r");

View file

@ -141,7 +141,7 @@ test_encoding(void)
(unichar[]){0xd87e, 0xdc01}, 2);
#if defined(GNUSTEP_BASE_LIBRARY)
test_encodings_helper(NSISOHebrewStringEncoding,
test_encodings_helper(NSISOLatinHebrewStringEncoding,
(unsigned char[]){0xf9, 0xec, 0xe5, 0xed}, 4,
(unichar[]){0x5e9, 0x5dc, 0x5d5, 0x5dd}, 4);
#endif
@ -165,7 +165,7 @@ test_encoding(void)
*/
#if defined(GNUSTEP_BASE_LIBRARY)
test_encodings_helper(NSBIG5StringEncoding,
test_encodings_helper(NSBig5StringEncoding,
(unsigned char[]){0x41, 0x42, 0x43, 0x20, 0xa7, 0x41, 0xa6, 0x6e, 0x21}, 9,
(unichar[]){0x41, 0x42, 0x43, 0x20, 0x4f60, 0x597d, 0x21}, 7);
#endif