tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: 16bit ctype table
hi,
> Takehiko NOZAKI <takehiko.nozaki <at> gmail.com> writes:
>
>> > ftp://ftp.netbsd.org/pub/NetBSD/misc/tnozaki/patch-insufficient_ctype_bits
>
> It’s not insufficient. 8 bits are enough.
while it might be possible (i haven't checked), i'm not sure if it's
a good idea as a conversion from rune would be more costly than proposed
16 bit one.
YAMAMOTO Takashi
>
> /* from Bruno Haible's libutf8 */
>
> /* How the 12 character attributes are encoded in 8 bits: Every attribute is
> represented by an "include bitmask" and an "exclude bitmask".
> Attribute bit/formula comment
> upper upper && !lower implies towlower(x) != x ==
> towupper(x)
> lower !upper && lower implies towlower(x) == x !=
> towupper(x)
> title upper && lower implies towlower(x) != x !=
> towupper(x)
> alpha bit superset of upper || lower
> digit xdigit && !alpha '0'..'9' and more
> xdigit bit '0'..'9','a'..'f','A'..'F' and more
> space bit ' ', '\f', '\n', '\r', '\t', '\v'
> print bit
> graph print && !space
> blank bit ' ', '\t'
> cntrl bit 0x00..0x1F,0x7F
> punct print && !(alpha || xdigit || space)
> alnum alpha || xdigit
> */
>
> See https://www.mirbsd.org/cvs.cgi/src/lib/libc/include/mir18n.h?rev=HEAD
>
> bye,
> //mirabilos
Home |
Main Index |
Thread Index |
Old Index