README.intl 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552
  1. # -*- coding: ISO-8859-1 -*-
  2. Firebird INTL
  3. =============
  4. Author: Adriano dos Santos Fernandes <adrianosf at uol.com.br>
  5. Architecture
  6. ------------
  7. Firebird allow you to specify character sets and collations in every field/variable declaration.
  8. You can also specify the default character set at database create time and every CHAR/VARCHAR
  9. declaration that omits the character set will use it.
  10. At attachment time you can specify the character set that the client want to read all the strings.
  11. If you don't specify one, NONE is assumed.
  12. There are two specials character sets: NONE and OCTETS.
  13. Both can be used in declarations but OCTETS can't be used in attachment.
  14. They are very similar with the exception that space of NONE is ASCII 0x20 and space of OCTETS
  15. is 0x00.
  16. They are specials because they don't follow the rule of others character sets regarding conversions.
  17. With others character sets conversion is performed with CHARSET1->UNICODE->CHARSET2. With
  18. NONE/OCTETS the bytes are just copied: NONE/OCTETS->CHARSET2 and CHARSET1->NONE/OCTETS.
  19. Enhancements
  20. ------------
  21. Well-formedness checks
  22. ----------------------
  23. Some character sets (specially multi-byte) don't accept everything.
  24. Now, the engine verifies if strings are wellformed when assigning from NONE/OCTETS and strings
  25. sent by the client (the statement string and parameters).
  26. Uppercase
  27. ---------
  28. In FB 1.5.X only ASCII characters are uppercased in character sets default collation order
  29. (without collation specified). Ex:
  30. isql -q -ch dos850
  31. SQL> create database 'test.fdb';
  32. SQL> create table t (c char(1) character set dos850);
  33. SQL> insert into t values ('a');
  34. SQL> insert into t values ('e');
  35. SQL> insert into t values ('á');
  36. SQL> insert into t values ('é');
  37. SQL>
  38. SQL> select c, upper(c) from t;
  39. C UPPER
  40. ====== ======
  41. a A
  42. e E
  43. á á
  44. é é
  45. In FB 2.0 the result is:
  46. C UPPER
  47. ====== ======
  48. a A
  49. e E
  50. á Á
  51. é É
  52. Maximum string length
  53. ---------------------
  54. In FB 1.5.X the engine doesn't verify logical length of MBCS strings.
  55. Hence a UNICODE_FSS field can accept three (maximum length of one UNICODE_FSS character) times more characters than what's declared in the field size.
  56. For compatibility purpose this was maintained for legacy character sets but new character sets (UTF8, for example) don't suffer from this problem.
  57. NONE as attachment character set
  58. --------------------------------
  59. When NONE is used as attachment character set, the sqlsubtype member of XSQLVAR has the character set number of the read field, instead of always 0 as in previous versions.
  60. BLOBs and collations
  61. --------------------
  62. Allow usage of DML COLLATE clause with BLOBs. Ex:
  63. select blob_column from table where blob_column collate unicode = 'foo';
  64. New character sets and collations
  65. ---------------------------------
  66. UTF8 character set
  67. ------------------
  68. The UNICODE_FSS character set has a number of problems: it's an old version of UTF8, accepts
  69. malformed strings and doesn't enforce correct maximum string length. In FB 1.5.X UTF8 it's an
  70. alias to UNICODE_FSS.
  71. Now UTF8 is a new character set, without these problems of UNICODE_FSS.
  72. UNICODE collations (for UTF8)
  73. -----------------------------
  74. UCS_BASIC works identical as UTF8 without collation specified (sorts in UNICODE code-point order).
  75. UNICODE sorts using UCA (Unicode Collation Algorithm).
  76. Sort order sample:
  77. isql -q -ch dos850
  78. SQL> create database 'test.fdb';
  79. SQL> create table t (c char(1) character set utf8);
  80. SQL> insert into t values ('a');
  81. SQL> insert into t values ('A');
  82. SQL> insert into t values ('á');
  83. SQL> insert into t values ('b');
  84. SQL> insert into t values ('B');
  85. SQL> select * from t order by c collate ucs_basic;
  86. C
  87. ======
  88. A
  89. B
  90. a
  91. b
  92. á
  93. SQL> select * from t order by c collate unicode;
  94. C
  95. ======
  96. a
  97. A
  98. á
  99. b
  100. B
  101. Brazilian collations
  102. --------------------
  103. Two case-insensitive/accent-insensitive collations were created for Brazil: PT_BR/WIN_PTBR
  104. (for WIN1252) and PT_BR (for ISO8859_1).
  105. Sort order and equality sample:
  106. isql -q -ch dos850
  107. SQL> create database 'test.fdb';
  108. SQL> create table t (c char(1) character set iso8859_1 collate pt_br);
  109. SQL> insert into t values ('a');
  110. SQL> insert into t values ('A');
  111. SQL> insert into t values ('á');
  112. SQL> insert into t values ('b');
  113. SQL> select * from t order by c;
  114. C
  115. ======
  116. A
  117. a
  118. á
  119. b
  120. SQL> select * from t where c = 'â';
  121. C
  122. ======
  123. a
  124. A
  125. á
  126. Drivers
  127. -------
  128. New character sets and collations are implemented through dynamic libraries and installed in the server with a manifest file in intl subdirectory. For an example see fbintl.conf.
  129. Not all implemented character sets and collations need to be listed in the manifest file. Only those listed are available and duplications are not loaded.
  130. After installed in the server, they should be registered in the database's system tables (rdb$character_sets and rdb$collations).
  131. One script file with stored procedures to register/unregister is provided in misc/intl.sql.
  132. In FB 2.1, don't use misc/intl.sql for collations anymore, now a DDL command exists for this task.
  133. Syntax:
  134. CREATE COLLATION <name>
  135. FOR <charset>
  136. [ FROM <base> | FROM EXTERNAL ('<name>') ]
  137. [ NO PAD | PAD SPACE ]
  138. [ CASE SENSITIVE | CASE INSENSITIVE ]
  139. [ ACCENT SENSITIVE | ACCENT INSENSITIVE ]
  140. [ '<specific-attributes>' ]
  141. Notes:
  142. 1) Specific attributes should be separated by semicolon and are case sensitive.
  143. Examples:
  144. 1) CREATE COLLATION UNICODE_ENUS_CI
  145. FOR UTF8
  146. FROM UNICODE
  147. CASE INSENSITIVE
  148. 'LOCALE=en_US';
  149. 2) CREATE COLLATION NEW_COLLATION
  150. FOR WIN1252
  151. PAD SPACE;
  152. -- NEW_COLLATION should be declared in .conf file in $root/intl directory
  153. ICU character sets
  154. ------------------
  155. All non-wide and ascii-based character sets present in ICU can be used by Firebird.
  156. But for small distribution kit, we customize ICU to include only essential character sets or the
  157. ones we had feature request.
  158. If the character set you need is not included in it, you can replace ICU libraries by a complete
  159. one found in our site or installed in your OS.
  160. To use, you first need to register it in intl/fbintl.conf as follow:
  161. <charset NAME>
  162. intl_module fbintl
  163. collation NAME [REAL-NAME]
  164. </charset>
  165. And register it in the databases using sp_register_character_set (found in misc/intl.sql).
  166. You need to know how much bytes a single character can occupy in the encoding.
  167. Example:
  168. <charset GB>
  169. intl_module fbintl
  170. collation GB GB18030
  171. </charset>
  172. execute procedure sp_register_character_set ('GB', 4);
  173. UNICODE collation
  174. -----------------
  175. You can use unicode collation (case sensitive and case insensitive) in all character sets present
  176. in fbintl.
  177. They're already registerd in fbintl.conf, but you need to register in the databases you want with
  178. the attributes you desire.
  179. They should use this name convention: charset_collation. Ex:
  180. create collation win1252_unicode
  181. for win1252;
  182. create collation win1252_unicode_ci
  183. for win1252
  184. from win1252_unicode
  185. case insensitive;
  186. Note the name should be as in fbintl.conf (i.e. ISO8859_1 instead of ISO88591, for example).
  187. Specific attributes
  188. -------------------
  189. Note that some attributes may not report error but not work with some collations.
  190. DISABLE-COMPRESSIONS: Disable compressions (aka contractions) changing the order of a group of characters.
  191. Valid for: collations of narrow character sets.
  192. Format: DISABLE-COMPRESSIONS={0 | 1}
  193. Example: DISABLE-COMPRESSIONS=1
  194. DISABLE-EXPANSIONS: Disable expansions changing the order of a character to sort as a group of characters.
  195. Valid for: collations of narrow character sets.
  196. Format: DISABLE-EXPANSIONS={0 | 1}
  197. Example: DISABLE-EXPANSIONS=1
  198. ICU-VERSION: Specify what version of ICU library will be used. Valid values are the ones defined in
  199. the config file (intl/fbintl.conf) in entry intl_module/icu_versions.
  200. Valid for: UNICODE collations.
  201. Format: ICU-VERSION={default | major.minor}
  202. Example: ICU-VERSION=3.0
  203. LOCALE: Specify the collation locale.
  204. Valid for: UNICODE collations.
  205. Requires: Complete version of ICU libraries.
  206. Format: LOCALE=xx_XX
  207. Example: LOCALE=en_US
  208. MULTI-LEVEL: Uses more than one level for ordering purposes.
  209. Valid for: collations of narrow character sets.
  210. Format: MULTI-LEVEL={0 | 1}
  211. Example: MULTI-LEVEL=1
  212. SPECIALS-FIRST: Order specials characters (spaces, symbols, etc) before alphanumeric characters.
  213. Valid for: collations of narrow character sets.
  214. Format: SPECIALS-FIRST={0 | 1}
  215. Example: SPECIALS-FIRST=1
  216. NUMERIC-SORT: Specify how numbers are sorted.
  217. Valid for: UNICODE collations.
  218. Format: NUMERIC-SORT={0 | 1} (0 is the default)
  219. NUMERIC-SORT=0 sorts number in alphabetic order. Example:
  220. 1
  221. 10
  222. 100
  223. 2
  224. 20
  225. NUMERIC-SORT=1 sorts number in numeric order. Example:
  226. 1
  227. 2
  228. 10
  229. 20
  230. 100
  231. Collation changes
  232. -----------------
  233. ES_ES (as well as new ES_ES_CI_AI) collation automatically uses attributes DISABLE-COMPRESSIONS=1;SPECIALS-FIRST=1.
  234. The attributes are stored at database creation time, so databases with ODS < 11.1 do not use it.
  235. Appendix
  236. --------
  237. Narrow character sets: CYRL, DOS437, DOS737, DOS775, DOS850, DOS852, DOS857, DOS858, DOS860, DOS861, DOS862, DOS863, DOS864, DOS865,
  238. DOS866, DOS869, ISO8859_1, ISO8859_13, ISO8859_2, ISO8859_3, ISO8859_4, ISO8859_5, ISO8859_6, ISO8859_7, ISO8859_8, ISO8859_9, KOI8R,
  239. KOI8U, NEXT, TIS620, WIN1250, WIN1251, WIN1252, WIN1253, WIN1254, WIN1255, WIN1256, WIN1257 and WIN1258.
  240. ICU character sets:
  241. UTF-8 ibm-1208 ibm-1209 ibm-5304 ibm-5305 windows-65001 cp1208
  242. UTF-16 ISO-10646-UCS-2 unicode csUnicode ucs-2
  243. UTF-16BE x-utf-16be ibm-1200 ibm-1201 ibm-5297 ibm-13488 ibm-17584 windows-1201 cp1200 cp1201 UTF16_BigEndian
  244. UTF-16LE x-utf-16le ibm-1202 ibm-13490 ibm-17586 UTF16_LittleEndian windows-1200
  245. UTF-32 ISO-10646-UCS-4 csUCS4 ucs-4
  246. UTF-32BE UTF32_BigEndian ibm-1232 ibm-1233
  247. UTF-32LE UTF32_LittleEndian ibm-1234
  248. UTF16_PlatformEndian
  249. UTF16_OppositeEndian
  250. UTF32_PlatformEndian
  251. UTF32_OppositeEndian
  252. UTF-7 windows-65000
  253. IMAP-mailbox-name
  254. SCSU
  255. BOCU-1 csBOCU-1
  256. CESU-8
  257. ISO-8859-1 ibm-819 IBM819 cp819 latin1 8859_1 csISOLatin1 iso-ir-100 ISO_8859-1:1987 l1 819
  258. US-ASCII ASCII ANSI_X3.4-1968 ANSI_X3.4-1986 ISO_646.irv:1991 iso_646.irv:1983 ISO646-US us csASCII iso-ir-6 cp367 ascii7 646 windows-20127
  259. ISO_2022,locale=ja,version=0 ISO-2022-JP csISO2022JP
  260. ISO_2022,locale=ja,version=1 ISO-2022-JP-1 JIS JIS_Encoding
  261. ISO_2022,locale=ja,version=2 ISO-2022-JP-2 csISO2022JP2
  262. ISO_2022,locale=ja,version=3 JIS7 csJISEncoding
  263. ISO_2022,locale=ja,version=4 JIS8
  264. ISO_2022,locale=ko,version=0 ISO-2022-KR csISO2022KR
  265. ISO_2022,locale=ko,version=1 ibm-25546
  266. ISO_2022,locale=zh,version=0 ISO-2022-CN
  267. ISO_2022,locale=zh,version=1 ISO-2022-CN-EXT
  268. HZ HZ-GB-2312
  269. ISCII,version=0 x-iscii-de windows-57002 iscii-dev
  270. ISCII,version=1 x-iscii-be windows-57003 iscii-bng windows-57006 x-iscii-as
  271. ISCII,version=2 x-iscii-pa windows-57011 iscii-gur
  272. ISCII,version=3 x-iscii-gu windows-57010 iscii-guj
  273. ISCII,version=4 x-iscii-or windows-57007 iscii-ori
  274. ISCII,version=5 x-iscii-ta windows-57004 iscii-tml
  275. ISCII,version=6 x-iscii-te windows-57005 iscii-tlg
  276. ISCII,version=7 x-iscii-ka windows-57008 iscii-knd
  277. ISCII,version=8 x-iscii-ma windows-57009 iscii-mlm
  278. gb18030 ibm-1392 windows-54936
  279. LMBCS-1 lmbcs
  280. LMBCS-2
  281. LMBCS-3
  282. LMBCS-4
  283. LMBCS-5
  284. LMBCS-6
  285. LMBCS-8
  286. LMBCS-11
  287. LMBCS-16
  288. LMBCS-17
  289. LMBCS-18
  290. LMBCS-19
  291. ibm-367_P100-1995 ibm-367 IBM367
  292. ibm-912_P100-1995 ibm-912 iso-8859-2 ISO_8859-2:1987 latin2 csISOLatin2 iso-ir-101 l2 8859_2 cp912 912 windows-28592
  293. ibm-913_P100-2000 ibm-913 iso-8859-3 ISO_8859-3:1988 latin3 csISOLatin3 iso-ir-109 l3 8859_3 cp913 913 windows-28593
  294. ibm-914_P100-1995 ibm-914 iso-8859-4 latin4 csISOLatin4 iso-ir-110 ISO_8859-4:1988 l4 8859_4 cp914 914 windows-28594
  295. ibm-915_P100-1995 ibm-915 iso-8859-5 cyrillic csISOLatinCyrillic iso-ir-144 ISO_8859-5:1988 8859_5 cp915 915 windows-28595
  296. ibm-1089_P100-1995 ibm-1089 iso-8859-6 arabic csISOLatinArabic iso-ir-127 ISO_8859-6:1987 ECMA-114 ASMO-708 8859_6 cp1089 1089 windows-28596 ISO-8859-6-I ISO-8859-6-E
  297. ibm-813_P100-1995 ibm-813 iso-8859-7 greek greek8 ELOT_928 ECMA-118 csISOLatinGreek iso-ir-126 ISO_8859-7:1987 8859_7 cp813 813 windows-28597
  298. ibm-916_P100-1995 ibm-916 iso-8859-8 hebrew csISOLatinHebrew iso-ir-138 ISO_8859-8:1988 ISO-8859-8-I ISO-8859-8-E 8859_8 cp916 916 windows-28598
  299. ibm-920_P100-1995 ibm-920 iso-8859-9 latin5 csISOLatin5 iso-ir-148 ISO_8859-9:1989 l5 8859_9 cp920 920 windows-28599 ECMA-128
  300. ibm-921_P100-1995 ibm-921 iso-8859-13 8859_13 cp921 921
  301. ibm-923_P100-1998 ibm-923 iso-8859-15 Latin-9 l9 8859_15 latin0 csisolatin0 csisolatin9 iso8859_15_fdis cp923 923 windows-28605
  302. ibm-942_P12A-1999 ibm-942 ibm-932 cp932 shift_jis78 sjis78 ibm-942_VSUB_VPUA ibm-932_VSUB_VPUA
  303. ibm-943_P15A-2003 ibm-943 Shift_JIS MS_Kanji csShiftJIS windows-31j csWindows31J x-sjis x-ms-cp932 cp932 windows-932 cp943c IBM-943C ms932 pck sjis ibm-943_VSUB_VPUA
  304. ibm-943_P130-1999 ibm-943 Shift_JIS cp943 943 ibm-943_VASCII_VSUB_VPUA
  305. ibm-33722_P12A-1999 ibm-33722 ibm-5050 EUC-JP Extended_UNIX_Code_Packed_Format_for_Japanese csEUCPkdFmtJapanese X-EUC-JP eucjis windows-51932 ibm-33722_VPUA IBM-eucJP
  306. ibm-33722_P120-1999 ibm-33722 ibm-5050 cp33722 33722 ibm-33722_VASCII_VPUA
  307. ibm-954_P101-2000 ibm-954 EUC-JP
  308. ibm-1373_P100-2002 ibm-1373 windows-950
  309. windows-950-2000 Big5 csBig5 windows-950 x-big5
  310. ibm-950_P110-1999 ibm-950 cp950 950
  311. macos-2566-10.2 Big5-HKSCS big5hk HKSCS-BIG5
  312. ibm-1375_P100-2003 ibm-1375 Big5-HKSCS
  313. ibm-1386_P100-2002 ibm-1386 cp1386 windows-936 ibm-1386_VSUB_VPUA
  314. windows-936-2000 GBK CP936 MS936 windows-936
  315. ibm-1383_P110-1999 ibm-1383 GB2312 csGB2312 EUC-CN ibm-eucCN hp15CN cp1383 1383 ibm-1383_VPUA
  316. ibm-5478_P100-1995 ibm-5478 GB_2312-80 chinese iso-ir-58 csISO58GB231280 gb2312-1980 GB2312.1980-0
  317. ibm-964_P110-1999 ibm-964 EUC-TW ibm-eucTW cns11643 cp964 964 ibm-964_VPUA
  318. ibm-949_P110-1999 ibm-949 cp949 949 ibm-949_VASCII_VSUB_VPUA
  319. ibm-949_P11A-1999 ibm-949 cp949c ibm-949_VSUB_VPUA
  320. ibm-970_P110-1995 ibm-970 EUC-KR KS_C_5601-1987 windows-51949 csEUCKR ibm-eucKR KSC_5601 5601 ibm-970_VPUA
  321. ibm-971_P100-1995 ibm-971 ibm-971_VPUA
  322. ibm-1363_P11B-1998 ibm-1363 KS_C_5601-1987 KS_C_5601-1989 KSC_5601 csKSC56011987 korean iso-ir-149 5601 cp1363 ksc windows-949 ibm-1363_VSUB_VPUA
  323. ibm-1363_P110-1997 ibm-1363 ibm-1363_VASCII_VSUB_VPUA
  324. windows-949-2000 windows-949 KS_C_5601-1987 KS_C_5601-1989 KSC_5601 csKSC56011987 korean iso-ir-149 ms949
  325. ibm-1162_P100-1999 ibm-1162
  326. ibm-874_P100-1995 ibm-874 ibm-9066 cp874 TIS-620 tis620.2533 eucTH cp9066
  327. windows-874-2000 TIS-620 windows-874 MS874
  328. ibm-437_P100-1995 ibm-437 IBM437 cp437 437 csPC8CodePage437 windows-437
  329. ibm-850_P100-1995 ibm-850 IBM850 cp850 850 csPC850Multilingual windows-850
  330. ibm-851_P100-1995 ibm-851 IBM851 cp851 851 csPC851
  331. ibm-852_P100-1995 ibm-852 IBM852 cp852 852 csPCp852 windows-852
  332. ibm-855_P100-1995 ibm-855 IBM855 cp855 855 csIBM855 csPCp855
  333. ibm-856_P100-1995 ibm-856 cp856 856
  334. ibm-857_P100-1995 ibm-857 IBM857 cp857 857 csIBM857 windows-857
  335. ibm-858_P100-1997 ibm-858 IBM00858 CCSID00858 CP00858 PC-Multilingual-850+euro cp858
  336. ibm-860_P100-1995 ibm-860 IBM860 cp860 860 csIBM860
  337. ibm-861_P100-1995 ibm-861 IBM861 cp861 861 cp-is csIBM861 windows-861
  338. ibm-862_P100-1995 ibm-862 IBM862 cp862 862 csPC862LatinHebrew DOS-862 windows-862
  339. ibm-863_P100-1995 ibm-863 IBM863 cp863 863 csIBM863
  340. ibm-864_X110-1999 ibm-864 IBM864 cp864 csIBM864
  341. ibm-865_P100-1995 ibm-865 IBM865 cp865 865 csIBM865
  342. ibm-866_P100-1995 ibm-866 IBM866 cp866 866 csIBM866 windows-866
  343. ibm-867_P100-1998 ibm-867 cp867
  344. ibm-868_P100-1995 ibm-868 IBM868 CP868 868 csIBM868 cp-ar
  345. ibm-869_P100-1995 ibm-869 IBM869 cp869 869 cp-gr csIBM869 windows-869
  346. ibm-878_P100-1996 ibm-878 KOI8-R koi8 csKOI8R cp878
  347. ibm-901_P100-1999 ibm-901
  348. ibm-902_P100-1999 ibm-902
  349. ibm-922_P100-1999 ibm-922 cp922 922
  350. ibm-4909_P100-1999 ibm-4909
  351. ibm-5346_P100-1998 ibm-5346 windows-1250 cp1250
  352. ibm-5347_P100-1998 ibm-5347 windows-1251 cp1251
  353. ibm-5348_P100-1997 ibm-5348 windows-1252 cp1252
  354. ibm-5349_P100-1998 ibm-5349 windows-1253 cp1253
  355. ibm-5350_P100-1998 ibm-5350 windows-1254 cp1254
  356. ibm-9447_P100-2002 ibm-9447 windows-1255 cp1255
  357. windows-1256-2000 windows-1256 cp1256
  358. ibm-9449_P100-2002 ibm-9449 windows-1257 cp1257
  359. ibm-5354_P100-1998 ibm-5354 windows-1258 cp1258
  360. ibm-1250_P100-1995 ibm-1250 windows-1250
  361. ibm-1251_P100-1995 ibm-1251 windows-1251
  362. ibm-1252_P100-2000 ibm-1252 windows-1252
  363. ibm-1253_P100-1995 ibm-1253 windows-1253
  364. ibm-1254_P100-1995 ibm-1254 windows-1254
  365. ibm-1255_P100-1995 ibm-1255
  366. ibm-5351_P100-1998 ibm-5351 windows-1255
  367. ibm-1256_P110-1997 ibm-1256
  368. ibm-5352_P100-1998 ibm-5352 windows-1256
  369. ibm-1257_P100-1995 ibm-1257
  370. ibm-5353_P100-1998 ibm-5353 windows-1257
  371. ibm-1258_P100-1997 ibm-1258 windows-1258
  372. macos-0_2-10.2 macintosh mac csMacintosh windows-10000
  373. macos-6-10.2 x-mac-greek windows-10006 macgr
  374. macos-7_3-10.2 x-mac-cyrillic windows-10007 maccy
  375. macos-29-10.2 x-mac-centraleurroman windows-10029 x-mac-ce macce
  376. macos-35-10.2 x-mac-turkish windows-10081 mactr
  377. ibm-1051_P100-1995 ibm-1051 hp-roman8 roman8 r8 csHPRoman8
  378. ibm-1276_P100-1995 ibm-1276 Adobe-Standard-Encoding csAdobeStandardEncoding
  379. ibm-1277_P100-1995 ibm-1277 Adobe-Latin1-Encoding
  380. ibm-1006_P100-1995 ibm-1006 cp1006 1006
  381. ibm-1098_P100-1995 ibm-1098 cp1098 1098
  382. ibm-1124_P100-1996 ibm-1124 cp1124 1124
  383. ibm-1125_P100-1997 ibm-1125 cp1125
  384. ibm-1129_P100-1997 ibm-1129
  385. ibm-1131_P100-1997 ibm-1131 cp1131
  386. ibm-1133_P100-1997 ibm-1133
  387. ibm-1381_P110-1999 ibm-1381 cp1381 1381
  388. ibm-37_P100-1995 ibm-37 IBM037 ibm-037 ebcdic-cp-us ebcdic-cp-ca ebcdic-cp-wt ebcdic-cp-nl csIBM037 cp037 037 cpibm37 cp37
  389. ibm-273_P100-1995 ibm-273 IBM273 CP273 csIBM273 ebcdic-de cpibm273 273
  390. ibm-277_P100-1995 ibm-277 IBM277 cp277 EBCDIC-CP-DK EBCDIC-CP-NO csIBM277 ebcdic-dk cpibm277 277
  391. ibm-278_P100-1995 ibm-278 IBM278 cp278 ebcdic-cp-fi ebcdic-cp-se csIBM278 ebcdic-sv cpibm278 278
  392. ibm-280_P100-1995 ibm-280 IBM280 CP280 ebcdic-cp-it csIBM280 cpibm280 280
  393. ibm-284_P100-1995 ibm-284 IBM284 CP284 ebcdic-cp-es csIBM284 cpibm284 284
  394. ibm-285_P100-1995 ibm-285 IBM285 CP285 ebcdic-cp-gb csIBM285 ebcdic-gb cpibm285 285
  395. ibm-290_P100-1995 ibm-290 IBM290 cp290 EBCDIC-JP-kana csIBM290
  396. ibm-297_P100-1995 ibm-297 IBM297 cp297 ebcdic-cp-fr csIBM297 cpibm297 297
  397. ibm-420_X120-1999 ibm-420 IBM420 cp420 ebcdic-cp-ar1 csIBM420 420
  398. ibm-424_P100-1995 ibm-424 IBM424 cp424 ebcdic-cp-he csIBM424 424
  399. ibm-500_P100-1995 ibm-500 IBM500 CP500 ebcdic-cp-be csIBM500 ebcdic-cp-ch cpibm500 500
  400. ibm-803_P100-1999 ibm-803 cp803
  401. ibm-838_P100-1995 ibm-838 IBM-Thai csIBMThai cp838 838 ibm-9030
  402. ibm-870_P100-1995 ibm-870 IBM870 CP870 ebcdic-cp-roece ebcdic-cp-yu csIBM870
  403. ibm-871_P100-1995 ibm-871 IBM871 ebcdic-cp-is csIBM871 CP871 ebcdic-is cpibm871 871
  404. ibm-875_P100-1995 ibm-875 IBM875 cp875 875
  405. ibm-918_P100-1995 ibm-918 IBM918 CP918 ebcdic-cp-ar2 csIBM918
  406. ibm-930_P120-1999 ibm-930 ibm-5026 cp930 cpibm930 930
  407. ibm-933_P110-1995 ibm-933 cp933 cpibm933 933
  408. ibm-935_P110-1999 ibm-935 cp935 cpibm935 935
  409. ibm-937_P110-1999 ibm-937 cp937 cpibm937 937
  410. ibm-939_P120-1999 ibm-939 ibm-931 ibm-5035 cp939 939
  411. ibm-1025_P100-1995 ibm-1025 cp1025 1025
  412. ibm-1026_P100-1995 ibm-1026 IBM1026 CP1026 csIBM1026 1026
  413. ibm-1047_P100-1995 ibm-1047 IBM1047 cpibm1047
  414. ibm-1097_P100-1995 ibm-1097 cp1097 1097
  415. ibm-1112_P100-1995 ibm-1112 cp1112 1112
  416. ibm-1122_P100-1999 ibm-1122 cp1122 1122
  417. ibm-1123_P100-1995 ibm-1123 cp1123 1123 cpibm1123
  418. ibm-1130_P100-1997 ibm-1130
  419. ibm-1132_P100-1998 ibm-1132
  420. ibm-1140_P100-1997 ibm-1140 IBM01140 CCSID01140 CP01140 cp1140 cpibm1140 ebcdic-us-37+euro
  421. ibm-1141_P100-1997 ibm-1141 IBM01141 CCSID01141 CP01141 cp1141 cpibm1141 ebcdic-de-273+euro
  422. ibm-1142_P100-1997 ibm-1142 IBM01142 CCSID01142 CP01142 cp1142 cpibm1142 ebcdic-dk-277+euro ebcdic-no-277+euro
  423. ibm-1143_P100-1997 ibm-1143 IBM01143 CCSID01143 CP01143 cp1143 cpibm1143 ebcdic-fi-278+euro ebcdic-se-278+euro
  424. ibm-1144_P100-1997 ibm-1144 IBM01144 CCSID01144 CP01144 cp1144 cpibm1144 ebcdic-it-280+euro
  425. ibm-1145_P100-1997 ibm-1145 IBM01145 CCSID01145 CP01145 cp1145 cpibm1145 ebcdic-es-284+euro
  426. ibm-1146_P100-1997 ibm-1146 IBM01146 CCSID01146 CP01146 cp1146 cpibm1146 ebcdic-gb-285+euro
  427. ibm-1147_P100-1997 ibm-1147 IBM01147 CCSID01147 CP01147 cp1147 cpibm1147 ebcdic-fr-297+euro
  428. ibm-1148_P100-1997 ibm-1148 IBM01148 CCSID01148 CP01148 cp1148 cpibm1148 ebcdic-international-500+euro
  429. ibm-1149_P100-1997 ibm-1149 IBM01149 CCSID01149 CP01149 cp1149 cpibm1149 ebcdic-is-871+euro
  430. ibm-1153_P100-1999 ibm-1153 cpibm1153
  431. ibm-1154_P100-1999 ibm-1154 cpibm1154
  432. ibm-1155_P100-1999 ibm-1155 cpibm1155
  433. ibm-1156_P100-1999 ibm-1156 cpibm1156
  434. ibm-1157_P100-1999 ibm-1157 cpibm1157
  435. ibm-1158_P100-1999 ibm-1158 cpibm1158
  436. ibm-1160_P100-1999 ibm-1160 cpibm1160
  437. ibm-1164_P100-1999 ibm-1164 cpibm1164
  438. ibm-1364_P110-1997 ibm-1364 cp1364
  439. ibm-1371_P100-1999 ibm-1371 cpibm1371
  440. ibm-1388_P103-2001 ibm-1388 ibm-9580
  441. ibm-1390_P110-2003 ibm-1390 cpibm1390
  442. ibm-1399_P110-2003 ibm-1399
  443. ibm-16684_P110-2003 ibm-16684
  444. ibm-4899_P100-1998 ibm-4899 cpibm4899
  445. ibm-4971_P100-1999 ibm-4971 cpibm4971
  446. ibm-12712_P100-1998 ibm-12712 cpibm12712 ebcdic-he
  447. ibm-16804_X110-1999 ibm-16804 cpibm16804 ebcdic-ar
  448. ibm-1137_P100-1999 ibm-1137
  449. ibm-5123_P100-1999 ibm-5123
  450. ibm-8482_P100-1999 ibm-8482
  451. ibm-37_P100-1995,swaplfnl ibm-37-s390 ibm037-s390
  452. ibm-1047_P100-1995,swaplfnl ibm-1047-s390
  453. ibm-1140_P100-1997,swaplfnl ibm-1140-s390
  454. ibm-1142_P100-1997,swaplfnl ibm-1142-s390
  455. ibm-1143_P100-1997,swaplfnl ibm-1143-s390
  456. ibm-1144_P100-1997,swaplfnl ibm-1144-s390
  457. ibm-1145_P100-1997,swaplfnl ibm-1145-s390
  458. ibm-1146_P100-1997,swaplfnl ibm-1146-s390
  459. ibm-1147_P100-1997,swaplfnl ibm-1147-s390
  460. ibm-1148_P100-1997,swaplfnl ibm-1148-s390
  461. ibm-1149_P100-1997,swaplfnl ibm-1149-s390
  462. ibm-1153_P100-1999,swaplfnl ibm-1153-s390
  463. ibm-12712_P100-1998,swaplfnl ibm-12712-s390
  464. ibm-16804_X110-1999,swaplfnl ibm-16804-s390
  465. ebcdic-xml-us