.\" Copyright (C) 2001 Information-technology Promotion Agency (IPA) .\" Copyright (C) 2001-2011 .\" National Institute of Advanced Industrial Science and Technology (AIST) .\" This file is part of the m17n library documentation. .\" Permission is granted to copy, distribute and/or modify this document .\" under the terms of the GNU Free Documentation License, Version 1.2 or .\" any later version published by the Free Software Foundation; with no .\" Invariant Section, no Front-Cover Texts, .\" and no Back-Cover Texts. A copy of the license is included in the .\" appendix entitled "GNU Free Documentation License". .TH "m17nConv" 3m17n "Mon Sep 25 2023" "Version 1.8.4" "The m17n Library" \" -*- nroff -*- .ad l .nh .SH NAME m17nConv_\-_Code_Conver \- \- Coding system objects and API for them\&. .SH SYNOPSIS .br .PP .SS "Data Structures" .in +1c .ti -1c .RI "struct \fBMConverter\fP" .br .RI "Structure to be used in code conversion\&. " .ti -1c .RI "struct \fBMCodingInfoISO2022\fP" .br .RI "Structure for a coding system of type \fBMCODING_TYPE_ISO_2022\fP\&. " .ti -1c .RI "struct \fBMCodingInfoUTF\fP" .br .RI "Structure for extra information about a coding system of type \fBMCODING_TYPE_UTF\fP\&. " .in -1c .SS "Enumerations" .in +1c .ti -1c .RI "enum \fBMConversionResult\fP { \fBMCONVERSION_RESULT_SUCCESS\fP, \fBMCONVERSION_RESULT_INVALID_BYTE\fP, \fBMCONVERSION_RESULT_INVALID_CHAR\fP, \fBMCONVERSION_RESULT_INSUFFICIENT_SRC\fP, \fBMCONVERSION_RESULT_INSUFFICIENT_DST\fP, \fBMCONVERSION_RESULT_IO_ERROR\fP }" .br .RI "Codes that represent the result of code conversion\&. " .ti -1c .RI "enum \fBMCodingType\fP { \fBMCODING_TYPE_CHARSET\fP, \fBMCODING_TYPE_UTF\fP, \fBMCODING_TYPE_ISO_2022\fP, \fBMCODING_TYPE_MISC\fP }" .br .RI "Types of coding system\&. .br " .ti -1c .RI "enum \fBMCodingFlagISO2022\fP { \fBMCODING_ISO_RESET_AT_EOL\fP = 0x1, \fBMCODING_ISO_RESET_AT_CNTL\fP = 0x2, \fBMCODING_ISO_EIGHT_BIT\fP = 0x4, \fBMCODING_ISO_LONG_FORM\fP = 0x8, \fBMCODING_ISO_DESIGNATION_G0\fP = 0x10, \fBMCODING_ISO_DESIGNATION_G1\fP = 0x20, \fBMCODING_ISO_DESIGNATION_CTEXT\fP = 0x40, \fBMCODING_ISO_DESIGNATION_CTEXT_EXT\fP = 0x80, \fBMCODING_ISO_LOCKING_SHIFT\fP = 0x100, \fBMCODING_ISO_SINGLE_SHIFT\fP = 0x200, \fBMCODING_ISO_SINGLE_SHIFT_7\fP = 0x400, \fBMCODING_ISO_EUC_TW_SHIFT\fP = 0x800, \fBMCODING_ISO_ISO6429\fP = 0x1000, \fBMCODING_ISO_REVISION_NUMBER\fP = 0x2000, \fBMCODING_ISO_FULL_SUPPORT\fP = 0x3000, \fBMCODING_ISO_FLAG_MAX\fP }" .br .RI "Bit-masks to specify the detail of coding system whose type is MCODING_TYPE_ISO_2022\&. .br " .in -1c .SS "Functions" .in +1c .ti -1c .RI "MSymbol \fBmconv_define_coding\fP (const char *name, \fBMPlist\fP *plist, int(*resetter)(\fBMConverter\fP *), int(*decoder)(const unsigned char *, int, \fBMText\fP *, \fBMConverter\fP *), int(*encoder)(\fBMText\fP *, int, int, unsigned char *, int, \fBMConverter\fP *), void *extra_info)" .br .ti -1c .RI "MSymbol \fBmconv_resolve_coding\fP (MSymbol symbol)" .br .RI "Resolve coding system name\&. " .ti -1c .RI "int \fBmconv_list_codings\fP (MSymbol **symbols)" .br .RI "List symbols representing coding systems\&. " .ti -1c .RI "\fBMConverter\fP * \fBmconv_buffer_converter\fP (MSymbol name, const unsigned char *buf, int n)" .br .RI "Create a code converter bound to a buffer\&. " .ti -1c .RI "\fBMConverter\fP * \fBmconv_stream_converter\fP (MSymbol name, FILE *fp)" .br .RI "Create a code converter bound to a stream\&. " .ti -1c .RI "int \fBmconv_reset_converter\fP (\fBMConverter\fP *converter)" .br .RI "Reset a code converter\&. " .ti -1c .RI "void \fBmconv_free_converter\fP (\fBMConverter\fP *converter)" .br .RI "Free a code converter\&. " .ti -1c .RI "\fBMConverter\fP * \fBmconv_rebind_buffer\fP (\fBMConverter\fP *converter, const unsigned char *buf, int n)" .br .RI "Bind a buffer to a code converter\&. " .ti -1c .RI "\fBMConverter\fP * \fBmconv_rebind_stream\fP (\fBMConverter\fP *converter, FILE *fp)" .br .RI "Bind a stream to a code converter\&. " .ti -1c .RI "\fBMText\fP * \fBmconv_decode\fP (\fBMConverter\fP *converter, \fBMText\fP *mt)" .br .RI "Decode a byte sequence into an M-text\&. " .ti -1c .RI "\fBMText\fP * \fBmconv_decode_buffer\fP (MSymbol name, const unsigned char *buf, int n)" .br .RI "Decode a buffer area based on a coding system\&. " .ti -1c .RI "\fBMText\fP * \fBmconv_decode_stream\fP (MSymbol name, FILE *fp)" .br .RI "Decode a stream input based on a coding system\&. " .ti -1c .RI "int \fBmconv_encode\fP (\fBMConverter\fP *converter, \fBMText\fP *mt)" .br .RI "Encode an M-text into a byte sequence\&. " .ti -1c .RI "int \fBmconv_encode_range\fP (\fBMConverter\fP *converter, \fBMText\fP *mt, int from, int to)" .br .RI "Encode a part of an M-text\&. " .ti -1c .RI "int \fBmconv_encode_buffer\fP (MSymbol name, \fBMText\fP *mt, unsigned char *buf, int n)" .br .RI "Encode an M-text into a buffer area\&. " .ti -1c .RI "int \fBmconv_encode_stream\fP (MSymbol name, \fBMText\fP *mt, FILE *fp)" .br .RI "Encode an M-text to write to a stream\&. " .ti -1c .RI "int \fBmconv_getc\fP (\fBMConverter\fP *converter)" .br .RI "Read a character via a code converter\&. " .ti -1c .RI "int \fBmconv_ungetc\fP (\fBMConverter\fP *converter, int c)" .br .RI "Push a character back to a code converter\&. " .ti -1c .RI "int \fBmconv_putc\fP (\fBMConverter\fP *converter, int c)" .br .RI "Write a character via a code converter\&. " .ti -1c .RI "\fBMText\fP * \fBmconv_gets\fP (\fBMConverter\fP *converter, \fBMText\fP *mt)" .br .RI "Read a line using a code converter\&. " .in -1c .SS "Variables: Symbols representing coding systems" .in +1c .ti -1c .RI "MSymbol \fBMcoding_us_ascii\fP" .br .RI "Symbol for the coding system US-ASCII\&. " .ti -1c .RI "MSymbol \fBMcoding_iso_8859_1\fP" .br .RI "Symbol for the coding system ISO-8859-1\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_8\fP" .br .RI "Symbol for the coding system UTF-8\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_8_full\fP" .br .RI "Symbol for the coding system UTF-8-FULL\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_16\fP" .br .RI "Symbol for the coding system UTF-16\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_16be\fP" .br .RI "Symbol for the coding system UTF-16BE\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_16le\fP" .br .RI "Symbol for the coding system UTF-16LE\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_32\fP" .br .RI "Symbol for the coding system UTF-32\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_32be\fP" .br .RI "Symbol for the coding system UTF-32BE\&. " .ti -1c .RI "MSymbol \fBMcoding_utf_32le\fP" .br .RI "Symbol for the coding system UTF-32LE\&. " .ti -1c .RI "MSymbol \fBMcoding_sjis\fP" .br .RI "Symbol for the coding system SJIS\&. " .in -1c .SS "Variables: Parameter keys for mconv_define_coding()\&.
" .in +1c .ti -1c .RI "MSymbol \fBMtype\fP" .br .ti -1c .RI "MSymbol \fBMcharsets\fP" .br .ti -1c .RI "MSymbol \fBMflags\fP" .br .ti -1c .RI "MSymbol \fBMdesignation\fP" .br .ti -1c .RI "MSymbol \fBMinvocation\fP" .br .ti -1c .RI "MSymbol \fBMcode_unit\fP" .br .ti -1c .RI "MSymbol \fBMbom\fP" .br .ti -1c .RI "MSymbol \fBMlittle_endian\fP" .br .in -1c .SS "Variables: Symbols representing coding system types\&.
" .in +1c .ti -1c .RI "MSymbol \fBMutf\fP" .br .ti -1c .RI "MSymbol \fBMiso_2022\fP" .br .in -1c .SS "Variables: Symbols appearing in the value of Mflags parameter\&.
" Symbols that can be a value of the \fBMflags\fP parameter of a coding system used in an argument to the \fBmconv_define_coding()\fP function (which see)\&. .br .in +1c .ti -1c .RI "MSymbol \fBMreset_at_eol\fP" .br .ti -1c .RI "MSymbol \fBMreset_at_cntl\fP" .br .ti -1c .RI "MSymbol \fBMeight_bit\fP" .br .ti -1c .RI "MSymbol \fBMlong_form\fP" .br .ti -1c .RI "MSymbol \fBMdesignation_g0\fP" .br .ti -1c .RI "MSymbol \fBMdesignation_g1\fP" .br .ti -1c .RI "MSymbol \fBMdesignation_ctext\fP" .br .ti -1c .RI "MSymbol \fBMdesignation_ctext_ext\fP" .br .ti -1c .RI "MSymbol \fBMlocking_shift\fP" .br .ti -1c .RI "MSymbol \fBMsingle_shift\fP" .br .ti -1c .RI "MSymbol \fBMsingle_shift_7\fP" .br .ti -1c .RI "MSymbol \fBMeuc_tw_shift\fP" .br .ti -1c .RI "MSymbol \fBMiso_6429\fP" .br .ti -1c .RI "MSymbol \fBMrevision_number\fP" .br .ti -1c .RI "MSymbol \fBMfull_support\fP" .br .in -1c .SS "Variables: Others" Remaining variables\&. .br .in +1c .ti -1c .RI "MSymbol \fBMmaybe\fP" .br .RI "Symbol whose name is 'maybe'\&. " .ti -1c .RI "MSymbol \fBMcoding\fP" .br .RI "The symbol \fCMcoding\fP\&. " .in -1c .SH "Detailed Description" .PP Coding system objects and API for them\&. The m17n library represents a character encoding scheme (CES) of coded character sets (CCS) as an object called \fIcoding\fP \fIsystem\fP\&. Application programs can add original coding systems\&. .PP To \fIencode\fP means converting code\-points to character codes and to \fIdecode\fP means converting character codes back to code\-points\&. .PP Application programs can decode a byte sequence with a specified coding system into an M\-text, and inversely, can encode an M\-text into a byte sequence\&. .br .PP .br .SH "Data Structure Documentation" .SS MConverter .PP Structure to be used in code conversion\&. .ad l .nh .PP \fBFIELD DOCUMENTATION:\fP .PP .PP \fBint MConverter::lenient\fP Set the value to nonzero if the conversion should be lenient\&. By default, the conversion is strict (i\&.e\&. not lenient)\&. .PP If the conversion is strict, the converter stops at the first invalid byte (on decoding) or at the first character not supported by the coding system (on encoding)\&. If this happens, \fCMConverter\->result\fP is set to \fCMCONVERSION_RESULT_INVALID_BYTE\fP or \fCMCONVERSION_RESULT_INVALID_CHAR\fP accordingly\&. .PP If the conversion is lenient, on decoding, an invalid byte is kept per se, and on encoding, an invalid character is replaced with '' (if the character is a Unicode character) or with '' (otherwise)\&. .br .PP \fBint MConverter::last_block\fP Set the value to nonzero before decoding or encoding the last block of the byte sequence or the character sequence respectively\&. The value influences the conversion as below\&. .PP On decoding, in the case that the last few bytes are too short to form a valid byte sequence: .PP If the value is nonzero, the conversion terminates by error (MCONVERSION_RESULT_INVALID_BYTE) at the first byte of the sequence\&. .PP If the value is zero, the conversion terminates successfully\&. Those bytes are stored in the converter as carryover and are prepended to the byte sequence of the further conversion\&. .PP On encoding, in the case that the coding system is context dependent: .PP If the value is nonzero, the conversion may produce a byte sequence at the end to reset the context to the initial state even if the source characters are zero\&. .PP If the value is zero, the conversion never produce such a byte sequence at the end\&. .br .PP \fBunsigned MConverter::at_most\fP If the value is nonzero, it specifies at most how many characters to convert\&. .br .PP \fBint MConverter::nchars\fP The following three members are to report the result of the conversion\&. .br .PP Number of characters most recently decoded or encoded\&. .br .PP \fBint MConverter::nbytes\fP Number of bytes recently decoded or encoded\&. .br .PP \fBenum \fBMConversionResult\fP MConverter::result\fP Result code of the conversion\&. .br .PP \fBvoid* MConverter::ptr\fP .PP \fBdouble MConverter::dbl\fP .PP \fBchar MConverter::c[256]\fP .PP \fBunion { \&.\&.\&. } MConverter::status\fP Various information about the status of code conversion\&. The contents depend on the type of coding system\&. It is assured that \fCstatus\fP is aligned so that any type of casting is safe and at least 256 bytes of memory space can be used\&. .br .PP \fBvoid* MConverter::internal_info\fP This member is for internally use only\&. An application program should never touch it\&. .br .SS MCodingInfoISO2022 .PP Structure for a coding system of type \fBMCODING_TYPE_ISO_2022\fP\&. .ad l .nh .PP \fBFIELD DOCUMENTATION:\fP .PP .PP \fBint MCodingInfoISO2022::initial_invocation[2]\fP Table of numbers of an ISO2022 code extension element invoked to each graphic plane (Graphic Left and Graphic Right)\&. \-1 means no code extension element is invoked to that plane\&. .br .PP \fBchar MCodingInfoISO2022::designations[32]\fP Table of code extension elements\&. The Nth element corresponds to the Nth charset in \fBcharset_names\fP, which is an argument given to the \fBmconv_define_coding()\fP function\&. .PP If an element value is 0\&.\&.3, it specifies a graphic register number to designate the corresponds charset\&. In addition, the charset is initially designated to that graphic register\&. .PP If the value is \-4\&.\&.\-1, it specifies a graphic register number 0\&.\&.3 respectively to designate the corresponds charset\&. Initially, the charset is not designated to any graphic register\&. .br .PP \fBunsigned MCodingInfoISO2022::flags\fP Bitwise OR of \fCenum\fP \fCMCodingFlagISO2022\fP \&. .br .SS MCodingInfoUTF .PP Structure for extra information about a coding system of type \fBMCODING_TYPE_UTF\fP\&. .ad l .nh .PP \fBFIELD DOCUMENTATION:\fP .PP .PP \fBint MCodingInfoUTF::code_unit_bits\fP Specify bits of a code unit\&. The value must be 8, 16, or 32\&. .br .PP \fBint MCodingInfoUTF::bom\fP Specify how to handle the heading BOM (byte order mark)\&. The value must be 0, 1, or 2\&. The meanings are as follows: .PP 0: On decoding, check the first two byte\&. If they are BOM, decide endian by them\&. If not, decide endian by the member \fCendian\fP\&. On encoding, produce byte sequence according to \fCendian\fP with heading BOM\&. .PP 1: On decoding, do not handle the first two bytes as BOM, and decide endian by \fCendian\fP\&. On encoding, produce byte sequence according to \fCendian\fP without BOM\&. .PP 2: On decoding, handle the first two bytes as BOM and decide ending by them\&. On encoding, produce byte sequence according to \fCendian\fP with heading BOM\&. .PP If is 8, the value has no meaning\&. .br .PP \fBint MCodingInfoUTF::endian\fP Specify the endian type\&. The value must be 0 or 1\&. 0 means little endian, and 1 means big endian\&. .PP If is 8, the value has no meaning\&. .br .SH "Enumeration Type Documentation" .PP .SS "enum \fBMConversionResult\fP" .PP Codes that represent the result of code conversion\&. One of these values is set in \fCMConverter\->result\fP\&. .br .PP \fBEnumerator\fP .in +1c .TP \fB\fIMCONVERSION_RESULT_SUCCESS \fP\fP Code conversion is successful\&. .TP \fB\fIMCONVERSION_RESULT_INVALID_BYTE \fP\fP On decoding, the source contains an invalid byte\&. .TP \fB\fIMCONVERSION_RESULT_INVALID_CHAR \fP\fP On encoding, the source contains a character that cannot be encoded by the specified coding system\&. .br .TP \fB\fIMCONVERSION_RESULT_INSUFFICIENT_SRC \fP\fP On decoding, the source ends with an incomplete byte sequence\&. .TP \fB\fIMCONVERSION_RESULT_INSUFFICIENT_DST \fP\fP On encoding, the destination is too short to store the result\&. .TP \fB\fIMCONVERSION_RESULT_IO_ERROR \fP\fP An I/O error occurred in the conversion\&. .SS "enum \fBMCodingType\fP" .PP Types of coding system\&. .br .PP \fBEnumerator\fP .in +1c .TP \fB\fIMCODING_TYPE_CHARSET \fP\fP A coding system of this type supports charsets directly\&. The dimension of each charset defines the length of bytes to represent a single character of the charset, and a byte sequence directly represents the code\-point of a character\&. The m17n library provides the default decoding and encoding routines of this type\&. .br .TP \fB\fIMCODING_TYPE_UTF \fP\fP A coding system of this type supports byte sequences of a UTF (UTF\-8, UTF\-16, UTF\-32) like structure\&. The m17n library provides the default decoding and encoding routines of this type\&. .br .TP \fB\fIMCODING_TYPE_ISO_2022 \fP\fP A coding system of this type supports byte sequences of an ISO\-2022 like structure\&. The details of each structure are specified by \fBMCodingInfoISO2022\fP \&. The m17n library provides decoding and encoding routines of this type\&. .br .TP \fB\fIMCODING_TYPE_MISC \fP\fP A coding system of this type is for byte sequences of miscellaneous structures\&. The m17n library does not provide decoding and encoding routines of this type\&. They must be provided by the application program\&. .br .SS "enum \fBMCodingFlagISO2022\fP" .PP Bit\-masks to specify the detail of coding system whose type is MCODING_TYPE_ISO_2022\&. .br .PP \fBEnumerator\fP .in +1c .TP \fB\fIMCODING_ISO_RESET_AT_EOL \fP\fP On encoding, reset the invocation and designation status to initial at end of line\&. .br .TP \fB\fIMCODING_ISO_RESET_AT_CNTL \fP\fP On encoding, reset the invocation and designation status to initial before any control codes\&. .br .TP \fB\fIMCODING_ISO_EIGHT_BIT \fP\fP Use the right graphic plane\&. .br .TP \fB\fIMCODING_ISO_LONG_FORM \fP\fP Use the non\-standard 4 bytes format for designation sequence for charsets JISX0208\-1978, GB2312, and JISX0208\-1983\&. .br .TP \fB\fIMCODING_ISO_DESIGNATION_G0 \fP\fP On encoding, unless explicitly specified, designate charsets to G0\&. .br .TP \fB\fIMCODING_ISO_DESIGNATION_G1 \fP\fP On encoding, unless explicitly specified, designate charsets except for ASCII to G1\&. .br .TP \fB\fIMCODING_ISO_DESIGNATION_CTEXT \fP\fP On encoding, unless explicitly specified, designate 94\-chars charsets to G0, 96\-chars charsets to G1\&. .br .TP \fB\fIMCODING_ISO_DESIGNATION_CTEXT_EXT \fP\fP On encoding, encode such charsets not conforming to ISO\-2022 by ESC % / \&.\&.\&., and encode non\-supported Unicode characters by ESC % G \&.\&.\&. ESC % @ \&. On decoding, handle those escape sequences\&. .br .TP \fB\fIMCODING_ISO_LOCKING_SHIFT \fP\fP Use locking shift\&. .br .TP \fB\fIMCODING_ISO_SINGLE_SHIFT \fP\fP Use single shift (SS2 (0x8E or ESC N), SS3 (0x8F or ESC O))\&. .br .TP \fB\fIMCODING_ISO_SINGLE_SHIFT_7 \fP\fP Use 7\-bit single shift 2 (SS2 (0x19))\&. .br .TP \fB\fIMCODING_ISO_EUC_TW_SHIFT \fP\fP Use EUC\-TW like special shifting\&. .br .TP \fB\fIMCODING_ISO_ISO6429 \fP\fP Use ISO\-6429 escape sequences to indicate direction\&. Not yet implemented\&. .br .TP \fB\fIMCODING_ISO_REVISION_NUMBER \fP\fP On encoding, if a charset has revision number, produce escape sequences to specify the number\&. .br .TP \fB\fIMCODING_ISO_FULL_SUPPORT \fP\fP Support all ISO\-2022 charsets\&. .br .TP \fB\fIMCODING_ISO_FLAG_MAX \fP\fP .SH "Variable Documentation" .PP .SS "MSymbol Mcoding_us_ascii" .PP Symbol for the coding system US\-ASCII\&. The symbol \fBMcoding_us_ascii\fP has name \fC'us\-ascii'\fP and represents a coding system for the CES US\-ASCII\&. .br .SS "MSymbol Mcoding_iso_8859_1" .PP Symbol for the coding system ISO\-8859\-1\&. The symbol \fBMcoding_iso_8859_1\fP has name \fC'iso\-8859\-1'\fP and represents a coding system for the CES ISO\-8859\-1\&. .br .SS "MSymbol Mcoding_utf_8" .PP Symbol for the coding system UTF\-8\&. The symbol \fBMcoding_utf_8\fP has name \fC'utf\-8'\fP and represents a coding system for the CES UTF\-8\&. .br .SS "MSymbol Mcoding_utf_8_full" .PP Symbol for the coding system UTF\-8\-FULL\&. The symbol \fBMcoding_utf_8_full\fP has name \fC'utf\-8\-full'\fP and represents a coding system that is a extension of UTF\-8\&. This coding system uses the same encoding algorithm as UTF\-8 but is not limited to the Unicode characters\&. It can encode all characters supported by the m17n library\&. .br .SS "MSymbol Mcoding_utf_16" .PP Symbol for the coding system UTF\-16\&. The symbol \fBMcoding_utf_16\fP has name \fC'utf\-16'\fP and represents a coding system for the CES UTF\-16 (RFC 2279)\&. .br .SS "MSymbol Mcoding_utf_16be" .PP Symbol for the coding system UTF\-16BE\&. The symbol \fBMcoding_utf_16be\fP has name \fC'utf\-16be'\fP and represents a coding system for the CES UTF\-16BE (RFC 2279)\&. .br .SS "MSymbol Mcoding_utf_16le" .PP Symbol for the coding system UTF\-16LE\&. The symbol \fBMcoding_utf_16le\fP has name \fC'utf\-16le'\fP and represents a coding system for the CES UTF\-16LE (RFC 2279)\&. .br .SS "MSymbol Mcoding_utf_32" .PP Symbol for the coding system UTF\-32\&. The symbol \fBMcoding_utf_32\fP has name \fC'utf\-32'\fP and represents a coding system for the CES UTF\-32 (RFC 2279)\&. .br .SS "MSymbol Mcoding_utf_32be" .PP Symbol for the coding system UTF\-32BE\&. The symbol \fBMcoding_utf_32be\fP has name \fC'utf\-32be'\fP and represents a coding system for the CES UTF\-32BE (RFC 2279)\&. .br .SS "MSymbol Mcoding_utf_32le" .PP Symbol for the coding system UTF\-32LE\&. The symbol \fBMcoding_utf_32le\fP has name \fC'utf\-32le'\fP and represents a coding system for the CES UTF\-32LE (RFC 2279)\&. .br .SS "MSymbol Mcoding_sjis" .PP Symbol for the coding system SJIS\&. The symbol \fBMcoding_sjis\fP has name \fC'sjis'\fP and represents a coding system for the CES Shift\-JIS\&. .br .SS "MSymbol Mtype" Parameter key for \fBmconv_define_coding()\fP (which see)\&. .br .SS "MSymbol Mcharsets" .SS "MSymbol Mflags" .SS "MSymbol Mdesignation" .SS "MSymbol Minvocation" .SS "MSymbol Mcode_unit" .SS "MSymbol Mbom" .SS "MSymbol Mlittle_endian" .SS "MSymbol Mutf" Symbol that can be a value of the \fBMtype\fP parameter of a coding system used in an argument to the \fBmconv_define_coding()\fP function (which see)\&. .br .SS "MSymbol Miso_2022" .SS "MSymbol Mreset_at_eol" .SS "MSymbol Mreset_at_cntl" .SS "MSymbol Meight_bit" .SS "MSymbol Mlong_form" .SS "MSymbol Mdesignation_g0" .SS "MSymbol Mdesignation_g1" .SS "MSymbol Mdesignation_ctext" .SS "MSymbol Mdesignation_ctext_ext" .SS "MSymbol Mlocking_shift" .SS "MSymbol Msingle_shift" .SS "MSymbol Msingle_shift_7" .SS "MSymbol Meuc_tw_shift" .SS "MSymbol Miso_6429" .SS "MSymbol Mrevision_number" .SS "MSymbol Mfull_support" .SS "MSymbol Mmaybe" .PP Symbol whose name is 'maybe'\&. The variable \fBMmaybe\fP is a symbol of name \fC'maybe'\fP\&. It is used a value of \fBMbom\fP parameter of the function \fBmconv_define_coding()\fP (which see)\&. .br .SS "MSymbol Mcoding" .PP The symbol \fCMcoding\fP\&. Any decoded M\-text has a text property whose key is the predefined symbol \fCMcoding\fP\&. The name of \fCMcoding\fP is \fC'coding'\fP\&. .br .SH "Author" .PP Generated automatically by Doxygen for The m17n Library from the source code\&. .SH COPYRIGHT Copyright (C) 2001 Information\-technology Promotion Agency (IPA) .br Copyright (C) 2001\-2011 National Institute of Advanced Industrial Science and Technology (AIST) .br Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License .