Variables: Keys of character properties | |
These symbols are used as keys of character properties. | |
MSymbol | Mscript |
Key for script. | |
MSymbol | Mname |
Key for character name. | |
MSymbol | Mcategory |
Key for general category. | |
MSymbol | Mcombining_class |
Key for canonical combining class. | |
MSymbol | Mbidi_category |
Key for bidi category. | |
MSymbol | Msimple_case_folding |
Key for corresponding single lowercase character. | |
MSymbol | Mcomplicated_case_folding |
Key for corresponding multiple lowercase characters. | |
Defines | |
#define | MCHAR_MAX |
Maximum character code. | |
Functions | |
MSymbol | mchar_define_property (const char *name, MSymbol type) |
Define a character property. | |
void * | mchar_get_prop (int c, MSymbol key) |
Get the value of a character property. | |
int | mchar_put_prop (int c, MSymbol key, void *val) |
Set the value of a character property. |
0
. The maximum character code is defined by the macro MCHAR_MAX. It is assured that MCHAR_MAX is not smaller than 0x3FFFFF
(22 bits).
Characters 0
to 0x10FFFF
are equivalent to the Unicode characters of the same code values.
A character can have zero or more properties called character properties. A character property consists of a key and a value, where key is a symbol and value is anything that can be cast to (void *)
. "The character property that belongs to character C and whose key is K" may be shortened to "the K property of C".
|
The macro MCHAR_MAX gives the maximum character code. |
|
The mchar_define_property() function searches the m17n database for a data whose tags are <Mchar_table, type, sym >. Here, sym is a symbol whose name is name. type must be Mstring, Mtext, Msymbol, Minteger, or Mplist.
|
|
The mchar_get_prop() function searches character c for the character property whose key is key.
|
|
The mchar_put_prop() function searches character c for the character property whose key is key and assigns val to the value of the found property.
|
|
The symbol Mscript has the name Each symbol that represents a script has one of the names listed in the Unicode Technical Report #24. |
|
The symbol Mname has the name |
|
The symbol Mcategory has the name Each symbol that represents a general category has one of the names listed as abbreviations for General Category in Unicode. |
|
The symbol Mcombining_class has the name The meaning of each integer that represents a canonical combining class is identical to the one defined in Unicode. |
|
The symbol Mbidi_category has the name Each symbol that represents a bidirectional category has one of the names listed as types of Bidirectional Category in Unicode. |
|
The symbol Msimple_case_folding has the name
If a character requires a complicated comparison (i.e. cannot be compared by simply mapping to another single character), the value of such a property is |
|
The symbol Mcomplicated_case_folding has the name |