2008-06-09 Atsushi Enomoto * ISO2022JP.cs : handle ESC-J sequence which is obsoleted in JIS X 0213. Fixed bug #398273. 2008-05-16 Atsushi Enomoto * Makefile: I didn't know the syntax ;-) 2008-05-16 Atsushi Enomoto * Makefile: added Test/texts/*.txt to EXTRA_DISTFILES. 2006-01-30 Atsushi Enomoto * DbcsEncoding.cs ISO2022JP.cs GB18030Encoding.cs CP51932.cs CP949.cs : Fixed windows code page and some minor properties. 2006-01-23 Atsushi Enomoto * DbcsConvert.cs ISO2022JP.cs CP950.cs CP932.cs: author lines. Monoized CP932.cs which is too deeply indented to read (and anyways no one other than myself is taking care of it). 2006-01-23 Atsushi Enomoto * KSConvert.cs Big5Convert.cs Gb2312Convert.cs: removed. They could just be DbcsConvert instances. * I18N.CJK.dll.sources : removed above. * DbcsConvert.cs : added static fields: Big5 and KS. * CP949.cs CP950.cs : use DbcsConvert class directly. 2006-01-23 Atsushi Enomoto * CP936.cs, CP949.cs, CP950.cs : Added GetByteCountImpl() (there weren't GetByteCount() override in those classes, so they also save extra byte[] allocation). * CP932.cs, CP51932.cs, GB18030Encoding.cs, ISO2022JP.cs : GetByteCount() -> GetByteCountImpl(). Fixed ISO2022JPEncoder/Decoder to hold different "shifted_in" flags for GetByteCountImpl() and GetBytesImpl(). 2006-01-23 Atsushi Enomoto * ISO2022JP.cs GB18030Encoding.cs CP936.cs CP51932.cs: fix warnings. 2006-01-23 Atsushi Enomoto * CP950.cs : This was the last one encoding which needed incomplete byte handling. * DbcsEncoding.cs, GB18030Encoding.cs, CP950.cs, CP932.cs, CP936.cs, CP51932.cs, CP949.cs (all): Made GetCharCount() and GetChars() in DbcsDecoder as different internal CheckRange() methods (it is bad design to have those methods as base methods). Use CheckRange() everywhere. 2006-01-23 Atsushi Enomoto * CP949.cs : handle incomplete byte (thus conversion implementation went into CP949Decoder like other DBCS encodings). 2006-01-23 Atsushi Enomoto * CP936.cs : handle incomplete byte (thus conversion implementation went into CP936Decoder like other DBCS encodings). 2006-01-20 Atsushi Enomoto * CP51932.cs : Encoding.GetChars() does not handle incomplete bytes but Decoder.GetChars() should do it (which was has vanished when I fixed CP51932 4 days ago). Now it uses Decoder which preserves incomplete byte like CP932 and CP54936. 2006-01-20 Atsushi Enomoto * CP932.cs : Implemented Decoder to handle incomplete bytes correctly. Hold different incomplete bytes for GetChars() and GetCharCount(). "reflesh" parameter in 2.0 is now handled correctly. Now GetChars()/GetCharCount() in Encoding are implemented correctly to use Decoder. 2006-01-20 Atsushi Enomoto Fixed bug #77307. * GB18030Encoding.cs : GetEncoder() and GetDecoder() should be overriden. in the Encoder, refresh parameter should handle incomplete field at its end of processing. Also it should differentiate GetByteCount() and GetChars() for its internal state. * GB18030Source.cs : handle end index of GB18030Map as inclusive, not exclusive. Reject out-of-range GBX conversion. 2006-01-20 Atsushi Enomoto * GB18030Encoding.cs : GetChars() ditto. Fixed bug #77306. 2006-01-20 Atsushi Enomoto * CP949.cs : GetChars() exactly the same fix as CP950. Fixed bug #77298. 2006-01-20 Atsushi Enomoto * CP950.cs : GetChars() should filter out invalid index to internal conversion array. Fixed bug #77274. 2006-01-17 Atsushi Enomoto * DbcsEncoding.cs CP950.cs CP932.cs CP936.cs CP51932.cs CP949.cs : Made all as really serializable. Removed references to DbcsConvert and added GetConvert() methods instead. 2006-01-17 Atsushi Enomoto * DbcsEncoding.cs ISO2022JP.cs GB18030Encoding.cs CP950.cs CP932.cs CP936.cs CP51932.cs CP949.cs (All) : Marked as [Serializable]. 2006-01-16 Atsushi Enomoto * CP936.cs : Implement GetCharCount(); it is too costy to use GetChars() in GetCharCount(). Removed extra code in GetChars(). Check table index range before accessing it by index. 2006-01-16 Atsushi Enomoto * CP51932.cs : In GetChars(), insufficient byte is not preserved. Under 1.x profile it is just discarded. Under 2.0 profile it is converted to \u30FB. Fixed GetCharCount() to match GetChars(). 2006-01-13 Atsushi Enomoto * CP932.cs : GetByteCount() returned insufficient count at PrivateUse area. Fixed bug #77724. (Additionally, reduced extraneous indentation in switch-cases). 2006-01-12 Atsushi Enomoto * CP51932.cs : oops, another extra debugging code was remaining. Fixed bug #77223. 2005-12-06 Atsushi Enomoto Now I can rename new CP936_2.cs file to CP936.cs without svn diff mess. 2005-12-06 Atsushi Enomoto * DbcsConvert.cs : added static Gb2312 field for common use. * dbcs-table-generator.cs : Added shortcut options for BIG5 and GB2312. Compressed data a bit. * CP936.cs, CP936_2.cs : GB2312.TXT does not exist anymore on unicode.org and it does not work like MS Codepage 936, so added fresh implementation which is almost the same as CP950.cs. CP936.cs is therefore removed. * GB18030Encoding.cs : switched implementation from Gb2312Convert to (base) DbcsConvert as well as CP936. * gb2312-build.sh : added note that we don't use it anymore. * gb2312.table : with it CP936 can handles CP936-only codepoints as well. * big5.table : compressed a bit. * I18N.CJK.dll.sources : in the meantime, use CP936_2.cs 2005-12-06 Atsushi Enomoto * renamed from big5-table-generator.cs to dbcs-table-generator.cs. 2005-12-06 Atsushi Enomoto * big5-table-generator.cs : made it to work for GB2312 table generation purpose (different format than gb2312.table.) 2005-12-06 Atsushi Enomoto * CP936.cs, GB18030Encoding.cs, GB18030Source.cs : conversion from Encoding to MonoEncoding and added fallback support in GEtBytes(Impl), as well as others. 2005-12-05 Atsushi Enomoto * big5-table-generator.cs : new file to generate "big5.table". * CP950.cs : added fallback support. switched to GetBytesImpl(). * DbcsEncoding.cs : switched to MonoEncoding (should have been committed when CP949.cs was committed). * big5.table : updated to match MS CP950. 2005-12-05 Atsushi Enomoto * CP949.cs : migration from GetBytes (of Encoding) to GetBytesImpl (of MonoEncoding). Added fallback support. 2005-12-05 Atsushi Enomoto * I18N.CJK_test.dll.sources : new file for NUnit test. * Makefile : removed NO_TEST. 2005-12-03 Atsushi Enomoto * CP51932.cs : GetCharCount() was returning excessive size. Now it is also based on MonoEncoding, with fallback support. 2005-12-03 Atsushi Enomoto * CP932.cs : oops, wrong range. 2005-12-03 Atsushi Enomoto * CP932.cs : in GetBytes() \uFF01-\uFF60 are incorrectly mapped to ASCII characters (they should be mapped to full-width characters). Base type is now MonoEncoding, without adding fallback support. 2005-12-02 Atsushi Enomoto * ISO2022JP.cs : Base type is now MonoEncoding (fallbacks are not handled yet). Largely rewritten to handle SI/SO flag (CP50222) and mode transition (all) correctly. 2005-11-21 Atsushi Enomoto * CP949.cs : UHC level 2 base number is wrong. Fixed bug #76760 Patch by Hye-Shik Chang. 2005-11-16 Atsushi Enomoto * GB18030Encoding.cs : check GB2312 first, and then check GB18030. Fixed GB18030 part of bug #76722. 2005-11-16 Atsushi Enomoto * GB2312Convert.cs , CP936.cs, GB18030Encoding.cs : don't handle single byte characters in UcsToGbk. Fixed GB2312 part of #76722. 2005-11-01 Atsushi Enomoto * CP949.cs : Now it contains both CP949 (UHC) and CP51949 (EUC) for Korean encoding. This should fix bug #76588. 2005-09-25 Atsushi Enomoto * I18N.CJK.dll.sources : needs fix as well. 2005-09-25 Atsushi Enomoto * CP50221.cs, ISO2022JP.cs : So, now "CP50221.cs" is improper, since it contains all 50220-50222. 2005-09-25 Atsushi Enomoto * CP50221.cs : actually 50220 and 50222 are also iso-2022-jp encodings. Fixed bug #76139. This file is likely to be renamed. 2005-09-18 Atsushi Enomoto * CP50221.cs, GB18030Encoding.cs : because of silly design Common/Manager expects fixed class names CPxxxxx. Fixed bug #76139. 2005-08-22 Raja R Harinath * Makefile (EXTRA_DISTFILES): Add README.gb18030 and gb18030.table. 2005-08-19 Atsushi Enomoto why didn't we have it? ;-) * README.gb18030, gb18030.table, GB18030Encoding.cs, GB18030Source.cs, Makefile, I18N.CJK.dll.sources : added support for GB18030 encoding. * Gb2312Convert.cs : added utility conversion methods.