Substantial overhaul of the UTF-8 decoder.  It now uses 26 bits of state
rather than 32, which might make it possible to use it inside another
decoder.  All the tests still pass.


git-svn-id: svn://svn.tartarus.org/sgt@6315 cda61777-01e9-0310-a592-d414129be87e
TIS-620 is equivalent to ISO 8859-11, so map the MIME name for the former to
the latter.


git-svn-id: svn://svn.tartarus.org/sgt@6316 cda61777-01e9-0310-a592-d414129be87e
Names for ASCII and JIS X 0201 that appear both in the X registry and in
the usual X fonts.


git-svn-id: svn://svn.tartarus.org/sgt@6317 cda61777-01e9-0310-a592-d414129be87e
Fix stupid typo.


git-svn-id: svn://svn.tartarus.org/sgt@6318 cda61777-01e9-0310-a592-d414129be87e
Use standard "WILD" markers for unregistered Big 5 aliases.


git-svn-id: svn://svn.tartarus.org/sgt@6319 cda61777-01e9-0310-a592-d414129be87e
Reasonably complete ISO 2022 support.  Huge and hairy, but it seems to
largely work.  It might even be useful for something.


git-svn-id: svn://svn.tartarus.org/sgt@6320 cda61777-01e9-0310-a592-d414129be87e
Support for using DOCS to switch to and from UTF-8 mode.


git-svn-id: svn://svn.tartarus.org/sgt@6321 cda61777-01e9-0310-a592-d414129be87e
Undo accidental change in previous commit.


git-svn-id: svn://svn.tartarus.org/sgt@6323 cda61777-01e9-0310-a592-d414129be87e
Update comment to reflect state of DOCS support.


git-svn-id: svn://svn.tartarus.org/sgt@6324 cda61777-01e9-0310-a592-d414129be87e
Undo another change that leaked through with the ISO-2022 commit.


git-svn-id: svn://svn.tartarus.org/sgt@6325 cda61777-01e9-0310-a592-d414129be87e
Make read_utf8(), like read_sbcs(), accessible to the rest of the library,
so it can be used directly in iso2022.c.


git-svn-id: svn://svn.tartarus.org/sgt@6326 cda61777-01e9-0310-a592-d414129be87e
Ben points out that ESC ( J in ISO-2022-JP should encode the
_bottom_ half of JIS X 0201 (the one that's almost identical to
ASCII, equivalent to the bottom half of Shift-JIS), not the top
half.


git-svn-id: svn://svn.tartarus.org/sgt@6327 cda61777-01e9-0310-a592-d414129be87e
1: Better documentation of how read_iso2022() stores its state.
2: Minimal write_iso2022(): it can't encode anything, but promises not to
   segfault.


git-svn-id: svn://svn.tartarus.org/sgt@6328 cda61777-01e9-0310-a592-d414129be87e
When documenting s0 and s1, get then the right way around.


git-svn-id: svn://svn.tartarus.org/sgt@6329 cda61777-01e9-0310-a592-d414129be87e
Add two new SBCSes: BS 4730 (alias UK-ASCII) and DEC graphics (alias VT100
line-drawing).  I think this means that libcharset supports all the character
sets that PuTTY supports, which is nice.


git-svn-id: svn://svn.tartarus.org/sgt@6330 cda61777-01e9-0310-a592-d414129be87e
Add support for COMPOUND_TEXT extended segments encoding ISO 98859-14,
ISO 8859-15, and BIG5.


git-svn-id: svn://svn.tartarus.org/sgt@6335 cda61777-01e9-0310-a592-d414129be87e
Support for the ESC $ ( 0 and ESC $ ( 1 sets that Emacs uses to embed
Big5 in COMPOUND_TEXT.  Emacs does lots of other rude things to
COMPOUND_TEXT, but this one is supported by XLib as well.


git-svn-id: svn://svn.tartarus.org/sgt@6336 cda61777-01e9-0310-a592-d414129be87e
Add a mapping table for CNS 11643-1992.  It's a bit big, and nothing
uses it yet.


git-svn-id: svn://svn.tartarus.org/sgt@6342 cda61777-01e9-0310-a592-d414129be87e
CNS 11643 goes above the BMP, so the test code should take that into
account when checking the reverse mapping for every potentially
relevant Unicode character.


git-svn-id: svn://svn.tartarus.org/sgt@6343 cda61777-01e9-0310-a592-d414129be87e
IRG source T3 includes not only plane 3 of CNS 11643, but also "some additional
characters".  We now filter out the latter from our mapping table.


git-svn-id: svn://svn.tartarus.org/sgt@6345 cda61777-01e9-0310-a592-d414129be87e