Hi Daniel, > > Oh, certainly many of the IBM-nnn encodings are variants of what > > Microsoft and the rest of the world do regarding codepage nnn. Find an > > extensive comparison at > > https://haible.de/bruno/charsets/conversion-tables/index.html . > > > > You find the tools to extract the conversion tables and compare > > them here: > > https://haible.de/bruno/charsets/conversion-tables/tools.html > > I downloaded the tools, and gave them a try. I will discuss sending you > the resulting information in a private message, as it is fairly large.
Thank you. With this information, I updated the charsets comparison site at https://haible.de/bruno/charsets/conversion-tables/ . It turns out that z/OS has a couple of encodings under names that we did not guess. Also, for some encodings a non-intuitive encoding name is closer to what one would expect. For example, "04962" is better than "IBM-866" (see https://haible.de/bruno/charsets/conversion-tables/CP866.html). Also, for EUC-TW there is no really suitable z/OS encoding; "IBM-eucTW" differs too much from the standard (as measured by 'table-diff'). 2020-01-19 Bruno Haible <br...@clisp.org> iconv_open: Improve z/OS support. * lib/iconv_open-zos.gperf: Choose better aliases. Add mapping for ISO-8859-3, KOI8-R, KOI8-U, CP775, CP857, CP865, CP1129, CP1131, CP1257. Remove mapping for EUC-TW. diff --git a/lib/iconv_open-zos.gperf b/lib/iconv_open-zos.gperf index 00e696e..918fdb9 100644 --- a/lib/iconv_open-zos.gperf +++ b/lib/iconv_open-zos.gperf @@ -28,41 +28,49 @@ struct mapping { int standard_name; const char vendor_name[10 + 1]; }; ASCII, "00367" ISO-8859-1, "ISO8859-1" ISO-8859-2, "ISO8859-2" +ISO-8859-3, "00913" ISO-8859-4, "ISO8859-4" ISO-8859-5, "ISO8859-5" ISO-8859-6, "ISO8859-6" ISO-8859-7, "ISO8859-7" -ISO-8859-8, "ISO8859-8" +ISO-8859-8, "05012" ISO-8859-9, "ISO8859-9" ISO-8859-13, "ISO8859-13" ISO-8859-15, "ISO8859-15" +KOI8-R, "00878" +KOI8-U, "01168" CP437, "IBM-437" -CP850, "IBM-850" +CP775, "00775" +CP850, "09042" CP852, "IBM-852" -CP855, "IBM-855" +CP855, "13143" CP856, "IBM-856" +CP857, "00857" CP861, "IBM-861" CP862, "IBM-862" CP864, "IBM-864" -CP866, "IBM-866" +CP865, "00865" +CP866, "04962" CP869, "IBM-869" CP874, "TIS-620" CP922, "IBM-922" -CP932, "IBM-eucJC" +CP932, "IBM-943" CP943, "IBM-943" -CP949, "IBM-949" +CP949, "IBM-1363" CP1046, "IBM-1046" CP1124, "IBM-1124" CP1125, "IBM-1125" -CP1250, "IBM-1250" -CP1251, "IBM-1251" -CP1252, "IBM-1252" -CP1253, "IBM-1253" -CP1254, "IBM-1254" -CP1255, "IBM-1255" -CP1256, "IBM-1256" +CP1129, "01129" +CP1131, "01131" +CP1250, "IBM-5346" +CP1251, "IBM-5347" +CP1252, "IBM-5348" +CP1253, "IBM-5349" +CP1254, "IBM-5350" +CP1255, "09447" +CP1256, "09448" +CP1257, "09449" GB2312, "IBM-eucCN" -EUC-JP, "EUCJP" +EUC-JP, "01350" EUC-KR, "IBM-eucKR" -EUC-TW, "IBM-eucTW" -GBK, "IBM-936" +GBK, "IBM-1386"