[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Draft] Writing i18n apps with glibc 2.2



: Sometimes I need to work with native encodings and can't convert them
: to widechar though ... like Firebird -_-; although it'd be pretty nice
: if everything in a BBS is in Unicode :p

This is the point: Do you want your BBS system go to internationalization
or just a local program like before?

If you want to go to i18n, then in your program you should not make any
assumption on how to handle the characters. All of these details should
left for libc to take care, even though you don't want to use Unicode.
I mean, you can convert them using mbsrtowcs() to verify that they are
valid characters, and handle the wide characters internally. When you
want to output the characters in any form (print it out, or save to file,
or pipe or translate to other program .... etc), then transform them
back to multi-byte characters via wcsrtombs().

In this way you don't need to make any assumption of the encoding you
are handling. However, doing this way you really have to modify your
BBS program very much :-)) So, is it worth to do that? Is the BBS program
suitable to become a I18N program? This depends on your policy. :-))


T.H.Hsieh



Reply to: