view etc/unicode/ibm/glibc-TIS_620-2.1.2.ucm @ 4690:257b468bf2ca

Move the #'query-coding-region implementation to C. This is necessary because there is no reasonable way to access the corresponding mswindows-multibyte functionality from Lisp, and we need such functionality if we're going to have a reliable and portable #'query-coding-region implementation. However, this change doesn't yet provide #'query-coding-region for the mswindow-multibyte coding systems, there should be no functional differences between an XEmacs with this change and one without it. src/ChangeLog addition: 2009-09-19 Aidan Kehoe <kehoea@parhasard.net> Move the #'query-coding-region implementation to C. This is necessary because there is no reasonable way to access the corresponding mswindows-multibyte functionality from Lisp, and we need such functionality if we're going to have a reliable and portable #'query-coding-region implementation. However, this change doesn't yet provide #'query-coding-region for the mswindow-multibyte coding systems, there should be no functional differences between an XEmacs with this change and one without it. * mule-coding.c (struct fixed_width_coding_system): Add a new coding system type, fixed_width, and implement it. It uses the CCL infrastructure but has a much simpler creation API, and its own query_method, formerly in lisp/mule/mule-coding.el. * unicode.c: Move the Unicode query method implementation here from unicode.el. * lisp.h: Declare Fmake_coding_system_internal, Fcopy_range_table here. * intl-win32.c (complex_vars_of_intl_win32): Use Fmake_coding_system_internal, not Fmake_coding_system. * general-slots.h: Add Qsucceeded, Qunencodable, Qinvalid_sequence here. * file-coding.h (enum coding_system_variant): Add fixed_width_coding_system here. (struct coding_system_methods): Add query_method and query_lstream_method to the coding system methods. Provide flags for the query methods. Declare the default query method; initialise it correctly in INITIALIZE_CODING_SYSTEM_TYPE. * file-coding.c (default_query_method): New function, the default query method for coding systems that do not set it. Moved from coding.el. (make_coding_system_1): Accept new elements in PROPS in #'make-coding-system; aliases, a list of aliases; safe-chars and safe-charsets (these were previously accepted but not saved); and category. (Fmake_coding_system_internal): New function, what used to be #'make-coding-system--on Mule builds, we've now moved some of the functionality of this to Lisp. (Fcoding_system_canonical_name_p): Move this earlier in the file, since it's now called from within make_coding_system_1. (Fquery_coding_region): Move the implementation of this here, from coding.el. (complex_vars_of_file_coding): Call Fmake_coding_system_internal, not Fmake_coding_system; specify safe-charsets properties when we're a mule build. * extents.h (mouse_highlight_priority, Fset_extent_priority, Fset_extent_face, Fmap_extents): Make these available to other C files. lisp/ChangeLog addition: 2009-09-19 Aidan Kehoe <kehoea@parhasard.net> Move the #'query-coding-region implementation to C. * coding.el: Consolidate code that depends on the presence or absence of Mule at the end of this file. (default-query-coding-region, query-coding-region): Move these functions to C. (default-query-coding-region-safe-charset-skip-chars-map): Remove this variable, the corresponding C variable is Vdefault_query_coding_region_chartab_cache in file-coding.c. (query-coding-string): Update docstring to reflect actual multiple values, be more careful about not modifying a range table that we're currently mapping over. (encode-coding-char): Make the implementation of this simpler. (featurep 'mule): Autoload #'make-coding-system from mule/make-coding-system.el if we're a mule build; provide an appropriate compiler macro. Do various non-mule compatibility things if we're not a mule build. * update-elc.el (additional-dump-dependencies): Add mule/make-coding-system as a dump time dependency if we're a mule build. * unicode.el (ccl-encode-to-ucs-2): (decode-char): (encode-char): Move these earlier in the file, for the sake of some byte compile warnings. (unicode-query-coding-region): Move this to unicode.c * mule/make-coding-system.el: New file, not dumped. Contains the functionality to rework the arguments necessary for fixed-width coding systems, and contains the implementation of #'make-coding-system, which now calls #'make-coding-system-internal. * mule/vietnamese.el (viscii): * mule/latin.el (iso-8859-2): (windows-1250): (iso-8859-3): (iso-8859-4): (iso-8859-14): (iso-8859-15): (iso-8859-16): (iso-8859-9): (macintosh): (windows-1252): * mule/hebrew.el (iso-8859-8): * mule/greek.el (iso-8859-7): (windows-1253): * mule/cyrillic.el (iso-8859-5): (koi8-r): (koi8-u): (windows-1251): (alternativnyj): (koi8-ru): (koi8-t): (koi8-c): (koi8-o): * mule/arabic.el (iso-8859-6): (windows-1256): Move all these coding systems to being of type fixed-width, not of type CCL. This allows the distinct query-coding-region for them to be in C, something which will eventually allow us to implement query-coding-region for the mswindows-multibyte coding systems. * mule/general-late.el (posix-charset-to-coding-system-hash): Document why we're pre-emptively persuading the byte compiler that the ELC for this file needs to be written using escape-quoted. Call #'set-unicode-query-skip-chars-args, now the Unicode query-coding-region implementation is in C. * mule/thai-xtis.el (tis-620): Don't bother checking whether we're XEmacs or not here. * mule/mule-coding.el: Move the eight bit fixed-width functionality from this file to make-coding-system.el. tests/ChangeLog addition: 2009-09-19 Aidan Kehoe <kehoea@parhasard.net> * automated/mule-tests.el: Check a coding system's type, not an 8-bit-fixed property, for whether that coding system should be treated as a fixed-width coding system. * automated/query-coding-tests.el: Don't test the query coding functionality for mswindows-multibyte coding systems, it's not yet implemented.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 19 Sep 2009 22:53:13 +0100
parents 943eaba38521
children
line wrap: on
line source

<!-- gziped --><HTML>
<HEAD>
<!-- hennerik CVSweb $Revision: 1.2 $ -->
<TITLE>charset/data/ucm/glibc-TIS_620-2.1.2.ucm - view - 1.1</TITLE></HEAD>
<BODY BGCOLOR="#EEEEEE">
<table width="100%" border=0 cellspacing=0 cellpadding=1 bgcolor="#9999EE"><tr valign=bottom><td><a href="glibc-TIS_620-2.1.2.ucm#rev1.1"><IMG SRC="/icons/back.gif" ALT="[BACK]" BORDER="0" WIDTH="20" HEIGHT="22"></a> <b>Return to <A HREF="glibc-TIS_620-2.1.2.ucm#rev1.1">glibc-TIS_620-2.1.2.ucm</A>
 CVS log</b> <IMG SRC="/icons/text.gif" ALT="[TXT]" BORDER="0" WIDTH="20" HEIGHT="22"></td><td align=right><IMG SRC="/icons/dir.gif" ALT="[DIR]" BORDER="0" WIDTH="20" HEIGHT="22"> <b>Up to  <a href="/cvs/icu/#dirlist">[ICU]</a> / <a href="/cvs/icu/charset/#dirlist">charset</a> / <a href="/cvs/icu/charset/data/#dirlist">data</a> / <a href="/cvs/icu/charset/data/ucm/#dirlist">ucm</a></b></td></tr></table><HR noshade><table width="100%"><tr><td bgcolor="#FFFFFF">File:  <a href="/cvs/icu/#dirlist">[ICU]</a> / <a href="/cvs/icu/charset/#dirlist">charset</a> / <a href="/cvs/icu/charset/data/#dirlist">data</a> / <a href="/cvs/icu/charset/data/ucm/#dirlist">ucm</a> / <a href="/cvs/icu/charset/data/ucm/glibc-TIS_620-2.1.2.ucm#dirlist">glibc-TIS_620-2.1.2.ucm</a></b>&nbsp;(<A HREF="/cvs/icu/~checkout~/charset/data/ucm/glibc-TIS_620-2.1.2.ucm?rev=1.1" target="cvs_checkout" onClick="window.open('/cvs/icu/~checkout~/charset/data/ucm/glibc-TIS_620-2.1.2.ucm?rev=1.1','cvs_checkout','resizeable,scrollbars');"><b>download</b></A>)<BR>
Revision <B>1.1</B>, <i>Wed Apr 18 21:37:42 2001 UTC</i> (6 weeks, 3 days ago) by <i>grhoten</i>
<BR>Branch: <b>MAIN</b>
<BR>CVS Tags: <b>HEAD</b><PRE>
<A HREF="http://www10.software.ibm.com/developerworks/opensource/icu/bugs?findid=937">jitterbug 937</A>: Making the UCM form of these charsets available to the public
</PRE>
</td></tr></table><HR noshade><PRE>#________________________________________________________________________
#
# (C) COPYRIGHT International Business Machines Corp. 2001
#     All Rights Reserved
#
#________________________________________________________________________
#
# File created on Thu Apr 05 09:39:05 PDT 2001
#
# File created by CharConv tool.
# Platform: Linux redhat2 2.2.12-20 #1 Mon Sep 27 10:40:35 EDT 1999 i686 unkglibc-
#
# Table Version : 1.0
# The 1st column is the Unicode scalar value.
# The 2nd column is the codepage byte sequence.
# The 3rd column is the fallback indicator.
# The fallback indicator can have one of the following values:
#   |0 for exact 1-1 roundtrip mapping
#   |1 for the best fallback codepage byte sequence.
#   |2 for the substitution character
#   |3 for the best reverse fallback Unicode scaler value
#
&lt;code_set_name&gt;               &quot;TIS_620&quot;
&lt;mb_cur_max&gt;                  1
&lt;mb_cur_min&gt;                  1
&lt;uconv_class&gt;                 &quot;SBCS&quot;
&lt;subchar&gt;                     \x1A
#
CHARMAP
#
#
#UNICODE TIS_620
#_______ _________
&lt;U0000&gt;  \x00 |0
&lt;U0001&gt;  \x01 |0
&lt;U0002&gt;  \x02 |0
&lt;U0003&gt;  \x03 |0
&lt;U0004&gt;  \x04 |0
&lt;U0005&gt;  \x05 |0
&lt;U0006&gt;  \x06 |0
&lt;U0007&gt;  \x07 |0
&lt;U0008&gt;  \x08 |0
&lt;U0009&gt;  \x09 |0
&lt;U000A&gt;  \x0A |0
&lt;U000B&gt;  \x0B |0
&lt;U000C&gt;  \x0C |0
&lt;U000D&gt;  \x0D |0
&lt;U000E&gt;  \x0E |0
&lt;U000F&gt;  \x0F |0
&lt;U0010&gt;  \x10 |0
&lt;U0011&gt;  \x11 |0
&lt;U0012&gt;  \x12 |0
&lt;U0013&gt;  \x13 |0
&lt;U0014&gt;  \x14 |0
&lt;U0015&gt;  \x15 |0
&lt;U0016&gt;  \x16 |0
&lt;U0017&gt;  \x17 |0
&lt;U0018&gt;  \x18 |0
&lt;U0019&gt;  \x19 |0
&lt;U001A&gt;  \x1A |0
&lt;U001B&gt;  \x1B |0
&lt;U001C&gt;  \x1C |0
&lt;U001D&gt;  \x1D |0
&lt;U001E&gt;  \x1E |0
&lt;U001F&gt;  \x1F |0
&lt;U0020&gt;  \x20 |0
&lt;U0021&gt;  \x21 |0
&lt;U0022&gt;  \x22 |0
&lt;U0023&gt;  \x23 |0
&lt;U0024&gt;  \x24 |0
&lt;U0025&gt;  \x25 |0
&lt;U0026&gt;  \x26 |0
&lt;U0027&gt;  \x27 |0
&lt;U0028&gt;  \x28 |0
&lt;U0029&gt;  \x29 |0
&lt;U002A&gt;  \x2A |0
&lt;U002B&gt;  \x2B |0
&lt;U002C&gt;  \x2C |0
&lt;U002D&gt;  \x2D |0
&lt;U002E&gt;  \x2E |0
&lt;U002F&gt;  \x2F |0
&lt;U0030&gt;  \x30 |0
&lt;U0031&gt;  \x31 |0
&lt;U0032&gt;  \x32 |0
&lt;U0033&gt;  \x33 |0
&lt;U0034&gt;  \x34 |0
&lt;U0035&gt;  \x35 |0
&lt;U0036&gt;  \x36 |0
&lt;U0037&gt;  \x37 |0
&lt;U0038&gt;  \x38 |0
&lt;U0039&gt;  \x39 |0
&lt;U003A&gt;  \x3A |0
&lt;U003B&gt;  \x3B |0
&lt;U003C&gt;  \x3C |0
&lt;U003D&gt;  \x3D |0
&lt;U003E&gt;  \x3E |0
&lt;U003F&gt;  \x3F |0
&lt;U0040&gt;  \x40 |0
&lt;U0041&gt;  \x41 |0
&lt;U0042&gt;  \x42 |0
&lt;U0043&gt;  \x43 |0
&lt;U0044&gt;  \x44 |0
&lt;U0045&gt;  \x45 |0
&lt;U0046&gt;  \x46 |0
&lt;U0047&gt;  \x47 |0
&lt;U0048&gt;  \x48 |0
&lt;U0049&gt;  \x49 |0
&lt;U004A&gt;  \x4A |0
&lt;U004B&gt;  \x4B |0
&lt;U004C&gt;  \x4C |0
&lt;U004D&gt;  \x4D |0
&lt;U004E&gt;  \x4E |0
&lt;U004F&gt;  \x4F |0
&lt;U0050&gt;  \x50 |0
&lt;U0051&gt;  \x51 |0
&lt;U0052&gt;  \x52 |0
&lt;U0053&gt;  \x53 |0
&lt;U0054&gt;  \x54 |0
&lt;U0055&gt;  \x55 |0
&lt;U0056&gt;  \x56 |0
&lt;U0057&gt;  \x57 |0
&lt;U0058&gt;  \x58 |0
&lt;U0059&gt;  \x59 |0
&lt;U005A&gt;  \x5A |0
&lt;U005B&gt;  \x5B |0
&lt;U005C&gt;  \x5C |0
&lt;U005D&gt;  \x5D |0
&lt;U005E&gt;  \x5E |0
&lt;U005F&gt;  \x5F |0
&lt;U0060&gt;  \x60 |0
&lt;U0061&gt;  \x61 |0
&lt;U0062&gt;  \x62 |0
&lt;U0063&gt;  \x63 |0
&lt;U0064&gt;  \x64 |0
&lt;U0065&gt;  \x65 |0
&lt;U0066&gt;  \x66 |0
&lt;U0067&gt;  \x67 |0
&lt;U0068&gt;  \x68 |0
&lt;U0069&gt;  \x69 |0
&lt;U006A&gt;  \x6A |0
&lt;U006B&gt;  \x6B |0
&lt;U006C&gt;  \x6C |0
&lt;U006D&gt;  \x6D |0
&lt;U006E&gt;  \x6E |0
&lt;U006F&gt;  \x6F |0
&lt;U0070&gt;  \x70 |0
&lt;U0071&gt;  \x71 |0
&lt;U0072&gt;  \x72 |0
&lt;U0073&gt;  \x73 |0
&lt;U0074&gt;  \x74 |0
&lt;U0075&gt;  \x75 |0
&lt;U0076&gt;  \x76 |0
&lt;U0077&gt;  \x77 |0
&lt;U0078&gt;  \x78 |0
&lt;U0079&gt;  \x79 |0
&lt;U007A&gt;  \x7A |0
&lt;U007B&gt;  \x7B |0
&lt;U007C&gt;  \x7C |0
&lt;U007D&gt;  \x7D |0
&lt;U007E&gt;  \x7E |0
&lt;U007F&gt;  \x7F |0
&lt;U0E01&gt;  \xA1 |0
&lt;U0E02&gt;  \xA2 |0
&lt;U0E03&gt;  \xA3 |0
&lt;U0E04&gt;  \xA4 |0
&lt;U0E05&gt;  \xA5 |0
&lt;U0E06&gt;  \xA6 |0
&lt;U0E07&gt;  \xA7 |0
&lt;U0E08&gt;  \xA8 |0
&lt;U0E09&gt;  \xA9 |0
&lt;U0E0A&gt;  \xAA |0
&lt;U0E0B&gt;  \xAB |0
&lt;U0E0C&gt;  \xAC |0
&lt;U0E0D&gt;  \xAD |0
&lt;U0E0E&gt;  \xAE |0
&lt;U0E0F&gt;  \xAF |0
&lt;U0E10&gt;  \xB0 |0
&lt;U0E11&gt;  \xB1 |0
&lt;U0E12&gt;  \xB2 |0
&lt;U0E13&gt;  \xB3 |0
&lt;U0E14&gt;  \xB4 |0
&lt;U0E15&gt;  \xB5 |0
&lt;U0E16&gt;  \xB6 |0
&lt;U0E17&gt;  \xB7 |0
&lt;U0E18&gt;  \xB8 |0
&lt;U0E19&gt;  \xB9 |0
&lt;U0E1A&gt;  \xBA |0
&lt;U0E1B&gt;  \xBB |0
&lt;U0E1C&gt;  \xBC |0
&lt;U0E1D&gt;  \xBD |0
&lt;U0E1E&gt;  \xBE |0
&lt;U0E1F&gt;  \xBF |0
&lt;U0E20&gt;  \xC0 |0
&lt;U0E21&gt;  \xC1 |0
&lt;U0E22&gt;  \xC2 |0
&lt;U0E23&gt;  \xC3 |0
&lt;U0E24&gt;  \xC4 |0
&lt;U0E25&gt;  \xC5 |0
&lt;U0E26&gt;  \xC6 |0
&lt;U0E27&gt;  \xC7 |0
&lt;U0E28&gt;  \xC8 |0
&lt;U0E29&gt;  \xC9 |0
&lt;U0E2A&gt;  \xCA |0
&lt;U0E2B&gt;  \xCB |0
&lt;U0E2C&gt;  \xCC |0
&lt;U0E2D&gt;  \xCD |0
&lt;U0E2E&gt;  \xCE |0
&lt;U0E2F&gt;  \xCF |0
&lt;U0E30&gt;  \xD0 |0
&lt;U0E31&gt;  \xD1 |0
&lt;U0E32&gt;  \xD2 |0
&lt;U0E33&gt;  \xD3 |0
&lt;U0E34&gt;  \xD4 |0
&lt;U0E35&gt;  \xD5 |0
&lt;U0E36&gt;  \xD6 |0
&lt;U0E37&gt;  \xD7 |0
&lt;U0E38&gt;  \xD8 |0
&lt;U0E39&gt;  \xD9 |0
&lt;U0E3A&gt;  \xDA |0
&lt;U0E3F&gt;  \xDF |0
&lt;U0E40&gt;  \xE0 |0
&lt;U0E41&gt;  \xE1 |0
&lt;U0E42&gt;  \xE2 |0
&lt;U0E43&gt;  \xE3 |0
&lt;U0E44&gt;  \xE4 |0
&lt;U0E45&gt;  \xE5 |0
&lt;U0E46&gt;  \xE6 |0
&lt;U0E47&gt;  \xE7 |0
&lt;U0E48&gt;  \xE8 |0
&lt;U0E49&gt;  \xE9 |0
&lt;U0E4A&gt;  \xEA |0
&lt;U0E4B&gt;  \xEB |0
&lt;U0E4C&gt;  \xEC |0
&lt;U0E4D&gt;  \xED |0
&lt;U0E4E&gt;  \xEE |0
&lt;U0E4F&gt;  \xEF |0
&lt;U0E50&gt;  \xF0 |0
&lt;U0E51&gt;  \xF1 |0
&lt;U0E52&gt;  \xF2 |0
&lt;U0E53&gt;  \xF3 |0
&lt;U0E54&gt;  \xF4 |0
&lt;U0E55&gt;  \xF5 |0
&lt;U0E56&gt;  \xF6 |0
&lt;U0E57&gt;  \xF7 |0
&lt;U0E58&gt;  \xF8 |0
&lt;U0E59&gt;  \xF9 |0
&lt;U0E5A&gt;  \xFA |0
&lt;U0E5B&gt;  \xFB |0
#
END CHARMAP
#
</PRE>