Mercurial > hg > xemacs-beta
comparison src/text.c @ 3498:b03fc4eae965
[xemacs-hg @ 2006-07-08 16:15:54 by aidan]
Fix a Mule build failure, update comments.
author | aidan |
---|---|
date | Sat, 08 Jul 2006 16:15:57 +0000 |
parents | 6c7605dfcf07 |
children | f6cd5fe9bf4c |
comparison
equal
deleted
inserted
replaced
3497:45671f160bd5 | 3498:b03fc4eae965 |
---|---|
213 composite characters under Mule would decrease the number | 213 composite characters under Mule would decrease the number |
214 of possible faces that can exist. Mule already has shrunk | 214 of possible faces that can exist. Mule already has shrunk |
215 this to 2048, and further shrinkage would become uncomfortable. | 215 this to 2048, and further shrinkage would become uncomfortable. |
216 No such problems exist in XEmacs. | 216 No such problems exist in XEmacs. |
217 | 217 |
218 Composite characters could be represented as 0x8D C1 C2 C3, | 218 Composite characters could be represented as 0x8D C1 C2 C3, where each |
219 where each C[1-3] is in the range 0xA0 - 0xFF. This allows | 219 C[1-3] is in the range 0xA0 - 0xFF. This allows for slightly under |
220 for slightly under 2^20 (one million) composite characters | 220 2^20 (one million) composite characters over the XEmacs process |
221 over the XEmacs process lifetime, and you only need to | 221 lifetime. Or you could use 0x8D C1 C2 C3 C4, allowing for about 85 |
222 increase the size of a Mule character from 19 to 21 bits. | 222 million (slightly over 2^26) composite characters. |
223 Or you could use 0x8D C1 C2 C3 C4, allowing for about | |
224 85 million (slightly over 2^26) composite characters. | |
225 | 223 |
226 ========================================================================== | 224 ========================================================================== |
227 10. Internal API's | 225 10. Internal API's |
228 ========================================================================== | 226 ========================================================================== |
229 | 227 |
4693 int | 4691 int |
4694 non_ascii_valid_ichar_p (Ichar ch) | 4692 non_ascii_valid_ichar_p (Ichar ch) |
4695 { | 4693 { |
4696 int f1, f2, f3; | 4694 int f1, f2, f3; |
4697 | 4695 |
4698 /* Must have only lowest 19 bits set */ | 4696 /* Must have only lowest 21 bits set */ |
4699 if (ch & ~0x7FFFF) | 4697 if (ch & ~0x1FFFFF) |
4700 return 0; | 4698 return 0; |
4701 | 4699 |
4702 f1 = ichar_field1 (ch); | 4700 f1 = ichar_field1 (ch); |
4703 f2 = ichar_field2 (ch); | 4701 f2 = ichar_field2 (ch); |
4704 f3 = ichar_field3 (ch); | 4702 f3 = ichar_field3 (ch); |