Index: cmd/xfe/resources RCS file: /cvsroot/mozilla/cmd/xfe/resources,v retrieving revision 3.15 diff -u -r3.15 resources --- resources 1998/07/27 10:40:58 3.15 +++ resources 1998/08/04 08:13:17 @@ -2168,6 +2168,7 @@ *koi8-rEncCmdString: Cyrillic (KOI8-R) *iso-8859-5EncCmdString: Cyrillic (ISO-8859-5) *windows-1251EncCmdString: Cyrillic (Windows-1251) +*koi8-uEncCmdString: Ukrainian (KOI8-U) *armscii-8EncCmdString: Armenian (ArmSCII-8) *iso-8859-7EncCmdString: Greek (ISO-8859-7) *windows-1253EncCmdString: Greek (Windows-1253) @@ -5416,6 +5417,7 @@ ! EUC-KR ! iso-2022-kr ! koi8-r +! koi8-u ! windows-1251 ! iso-8859-5 ! iso-8859-7 @@ -5431,6 +5433,7 @@ !*defaultCharset: EUC-KR !*defaultCharset: iso-2022-kr !*defaultCharset: koi8-r +!*defaultCharset: koi8-u !*defaultCharset: windows-1251 !*defaultCharset: iso-8859-5 !*defaultCharset: iso-8859-7 @@ -5522,6 +5525,7 @@ *documentFonts.charsetlang*jis_x0212-1990: Japanese *documentFonts.charsetlang*koi8-r: Cyrillic *documentFonts.charsetlang*windows-1251: Cyrillic +*documentFonts.charsetlang*koi8-u: Ukrainian *documentFonts.charsetlang*ks_c_5601-1987: Korean *documentFonts.charsetlang*x-cns11643-1110: Traditional Chinese *documentFonts.charsetlang*x-cns11643-1: Traditional Chinese @@ -5649,6 +5653,7 @@ *documentFonts.charset*koi8-1: koi8-r *documentFonts.charset*koi8-r: koi8-r *documentFonts.charset*koi-8: koi8-r +*documentFonts.charset*koi8-u: koi8-u *documentFonts.charset*ks-roman: x-ignore *documentFonts.charset*ksc5601.1987-0: ks_c_5601-1987 *documentFonts.charset*ksc5601.1987-1: x-ksc5601-11 Index: lib/libi18n/csnametb.c =================================================================== RCS file: /cvsroot/mozilla/lib/libi18n/csnametb.c,v retrieving revision 3.4 diff -u -r3.4 csnametb.c --- csnametb.c 1998/08/01 07:53:24 3.4 +++ csnametb.c 1998/08/04 08:13:19 @@ -97,7 +97,7 @@ {"x-cns11643-16", "", CS_CNS11643_16}, {"VISCII", "", CS_VISCII}, {"VIQR", "", CS_VIQR}, - {"KOI8-U", "", CS_KOI8_U}, + {"koi8-u", "", CS_KOI8_U}, {"iso-ir-111", "", CS_ISO_IR_111}, {"iso_8859-6-e", "", CS_8859_6_E}, {"iso_8859-6-i", "", CS_8859_6_I}, @@ -220,6 +220,9 @@ /* aliases for koi8-r: */ {"csKOI8R", "", CS_KOI8_R}, + + /* aliases for koi8-u: */ + {"koi8-ru", "", CS_KOI8_U}, /* aliases for Shift_JIS: */ {"x-sjis", "", CS_SJIS}, Index: lib/libi18n/fe_ccc.c =================================================================== RCS file: /cvsroot/mozilla/lib/libi18n/fe_ccc.c,v retrieving revision 3.12 diff -u -r3.12 fe_ccc.c --- fe_ccc.c 1998/08/01 07:53:23 3.12 +++ fe_ccc.c 1998/08/04 08:13:26 @@ -235,6 +235,7 @@ {CS_MAC_CE, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_MAC_CYRILLIC, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_KOI8_R, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, + {CS_KOI8_U, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_MAC_GREEK, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_MAC_TURKISH, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_SJIS, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SJIS}, @@ -248,6 +249,7 @@ {CS_UTF8, CS_MAC_CE, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_MAC_CYRILLIC,0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_KOI8_R, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, + {CS_UTF8, CS_KOI8_U, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_MAC_GREEK, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_MAC_TURKISH, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_SJIS, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, @@ -435,6 +437,7 @@ {CS_CP_857, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_CP_866, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_KOI8_R, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, + {CS_KOI8_U, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_UTF8, CS_CP_850, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_CP_852, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, @@ -442,6 +445,7 @@ {CS_UTF8, CS_CP_857, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_CP_866, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_KOI8_R, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, + {CS_UTF8, CS_KOI8_U, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_MAC_ROMAN, CS_LATIN1, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_LATIN1, CS_MAC_ROMAN, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, @@ -480,6 +484,9 @@ {CS_CP_1251, CS_KOI8_R, 0, (CCCFunc)One2OneCCC, 0}, {CS_KOI8_R, CS_CP_1251, 0, (CCCFunc)One2OneCCC, 0}, + /* UKRAINIAN */ + {CS_KOI8_U, CS_KOI8_U, 0, NULL, 0}, + /* ARMENIAN */ {CS_ARMSCII8, CS_ARMSCII8, 0, (CCCFunc)0, 0}, @@ -560,6 +567,7 @@ {CS_LATIN2, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_8859_5, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_KOI8_R, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, + {CS_KOI8_U, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_8859_7, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_8859_9, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SINGLEBYTE}, {CS_SJIS, CS_UTF8, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_SJIS}, @@ -574,6 +582,7 @@ {CS_UTF8, CS_LATIN2, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_8859_5, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_KOI8_R, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, + {CS_UTF8, CS_KOI8_U, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_8859_7, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_8859_9, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, {CS_UTF8, CS_SJIS, 0, (CCCFunc)mz_AnyToAnyThroughUCS2, INTL_CHARLEN_UTF8}, Index: lib/libi18n/sblower.c =================================================================== RCS file: /cvsroot/mozilla/lib/libi18n/sblower.c,v retrieving revision 3.3 diff -u -r3.3 sblower.c --- sblower.c 1998/05/07 23:12:47 3.3 +++ sblower.c 1998/08/04 08:13:30 @@ -443,6 +443,19 @@ 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf }; +/* + * lower_lookup_koi8_u map + */ +PRIVATE unsigned char lower_lookup_koi8_u[128]={ + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, + 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, + 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, + 0xb0, 0xb1, 0xb2, 0xa3, 0xa4, 0xb5, 0xa6, 0xa7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xad, 0xbe, 0xbf, + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, + 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf +}; #ifdef XP_OS2 /* @@ -659,6 +672,8 @@ #endif case CS_KOI8_R: return lower_lookup_koi8_r; + case CS_KOI8_U: + return lower_lookup_koi8_u; case CS_ARMSCII8: return lower_armscii8; Index: lib/libi18n/ucs2.c =================================================================== RCS file: /cvsroot/mozilla/lib/libi18n/ucs2.c,v retrieving revision 3.8 diff -u -r3.8 ucs2.c --- ucs2.c 1998/08/01 08:46:02 3.8 +++ ucs2.c 1998/08/04 08:13:37 @@ -206,6 +206,13 @@ #include "cp1251.ut" }; /*--------------------------------------------------------------------------*/ +PRIVATE uint16 koi8uFromTbl[] = { +#include "koi8u.uf" +}; +PRIVATE uint16 koi8uToTbl[] = { +#include "koi8u.ut" +}; +/*--------------------------------------------------------------------------*/ /* ArmSCII */ PRIVATE uint16 armsciiFromTbl[] = { #include "armscii.uf" @@ -335,13 +342,16 @@ case CS_8859_9: return (uTable*) iso88599ToTbl; - - case CS_KOI8_R: - return (uTable*) koi8rToTbl; + case CS_KOI8_R: + return (uTable*) koi8rToTbl; + case CS_CP_1251: return (uTable*) cp1251ToTbl; + case CS_KOI8_U: + return (uTable*) koi8uToTbl; + /* ArmSCII */ case CS_ARMSCII8: return (uTable*) armsciiToTbl; @@ -420,13 +430,16 @@ case CS_8859_9: return (uTable*) iso88599FromTbl; - - case CS_KOI8_R: - return (uTable*) koi8rFromTbl; + case CS_KOI8_R: + return (uTable*) koi8rFromTbl; + case CS_CP_1251: return (uTable*) cp1251FromTbl; + case CS_KOI8_U: + return (uTable*) koi8uFromTbl; + /* ArmSCII */ case CS_ARMSCII8: return (uTable*) armsciiFromTbl; @@ -844,6 +857,16 @@ #include "koi8r.ut" }; +/* + * Ukrainian + */ +PRIVATE uint16 koi8uFromTbl[] = { +#include "koi8u.uf" +}; +PRIVATE uint16 koi8uToTbl[] = { +#include "koi8u.ut" +}; + /* * OS/2 Codepages */ @@ -972,6 +995,7 @@ case CS_CP_866: return (uTable*) cp866ToTbl; case CS_CP_874: return (uTable*) cp874ToTbl; case CS_KOI8_R: return (uTable*) koi8rToTbl; + case CS_KOI8_U: return (uTable*) koi8uToTbl; case CS_KSC_8BIT: return (uTable*) koreaToTbl; case CS_MAC_ROMAN: return (uTable*) macromanToTbl; case CS_SYMBOL: return (uTable*) symbolToTbl; @@ -1015,6 +1039,7 @@ case CS_CP_866: return (uTable*) cp866FromTbl; case CS_CP_874: return (uTable*) cp874FromTbl; case CS_KOI8_R: return (uTable*) koi8rFromTbl; + case CS_KOI8_U: return (uTable*) koi8uFromTbl; case CS_KSC_8BIT: return (uTable*) koreaFromTbl; case CS_MAC_ROMAN: return (uTable*) macromanFromTbl; case CS_SYMBOL: return (uTable*) symbolFromTbl; Index: cmd/xfe/src/BrowserFrame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/BrowserFrame.cpp,v retrieving revision 3.9 diff -u -r3.9 BrowserFrame.cpp --- BrowserFrame.cpp 1998/07/23 08:44:15 3.9 +++ BrowserFrame.cpp 1998/08/04 08:13:43 @@ -78,6 +78,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 }, Index: cmd/xfe/src/ComposeFrame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/ComposeFrame.cpp,v retrieving revision 3.4 diff -u -r3.4 ComposeFrame.cpp --- ComposeFrame.cpp 1998/07/23 08:44:18 3.4 +++ ComposeFrame.cpp 1998/08/04 08:13:46 @@ -81,6 +81,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 }, Index: cmd/xfe/src/EditorFrame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/EditorFrame.cpp,v retrieving revision 3.7 diff -u -r3.7 EditorFrame.cpp --- EditorFrame.cpp 1998/07/24 23:26:38 3.7 +++ EditorFrame.cpp 1998/08/04 08:13:52 @@ -74,6 +74,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 }, Index: cmd/xfe/src/Frame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/Frame.cpp,v retrieving revision 3.13 diff -u -r3.13 Frame.cpp --- Frame.cpp 1998/07/23 19:12:31 3.13 +++ Frame.cpp 1998/08/04 08:14:13 @@ -411,6 +411,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 }, Index: cmd/xfe/src/MsgFrame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/MsgFrame.cpp,v retrieving revision 3.5 diff -u -r3.5 MsgFrame.cpp --- MsgFrame.cpp 1998/07/23 08:44:26 3.5 +++ MsgFrame.cpp 1998/08/04 08:14:17 @@ -70,6 +70,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 }, Index: cmd/xfe/src/ThreadFrame.cpp =================================================================== RCS file: /cvsroot/mozilla/cmd/xfe/src/ThreadFrame.cpp,v retrieving revision 3.5 diff -u -r3.5 ThreadFrame.cpp --- ThreadFrame.cpp 1998/07/23 08:44:29 3.5 +++ ThreadFrame.cpp 1998/08/04 08:14:24 @@ -97,6 +97,8 @@ { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_R }, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_CP_1251 }, MENU_SEPARATOR, + { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_KOI8_U }, + MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_ARMSCII8 }, MENU_SEPARATOR, { xfeCmdChangeDocumentEncoding, TOGGLEBUTTON, NULL, "EncodingRadioGroup", False, (void*)CS_8859_7 },