[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Changing the char type in 5.0.2
- From: Tiago Dionizio <tngd81@...>
- Date: Sun, 12 Sep 2004 04:54:27 +0100
Reuben Thomas wrote:
I was just wondering what the current state of the art is on changing
the char type. I have found LuaPlus, but that has a lot of extra
baggage; ideally I'd just like to change Lua's char type to wide
It may not be what you want but, some time ago i made a small library to
handle utf8 strings with an interface similar to the string library
provided by lua. The interface is the same (except for string.dump) and
all returned strings are *userdata* objects, representing utf8 strings
that can be passed to the ustring functions or even use its metatable
(which is ustring itself). You can create new utf8 strings with the
command "us = ustring.new('string')" or just pass normal strings to the
functions; these values will be automaticly converted to its internal
representation. After that you can use normal operations on it
"us:len()" etc. To get back to the lua string type, use "tostring(us)"
or "us:cstr()". Normal string comparison also works. Implicit convertion
to lua strings can also happen through its metatable __tostring function.
Anyone done this?
it is not a "primitive" type, it is not the same as a lua string.
whenever an utf8 string is used it is converted from utf8 to wide
character string internaly (not visible from lua)
(as you will notice, there isn't any kind of information apart from the
description i am giving on this email)
Tested it on linux and win32 using gcc/mingw.
Hope it helps.