|
I18N programming presentation at BSDCon
Lin, Kao and Wu review basic terminology, methods,
ideas and suggestions for developing for internationalization support.
By Jeremy Reed
The international programming presentation at BSDCon 2000
was given by Clive Lin, C. L. Kao and Michael Wu. Their presentation
is available via http://www.ece.utexas
.edu/~mwu/.
Michael Wu started this presentation with several brief explanations and
overviews of internationalization and localization support. I18N and L10N
are just short ways to say internationalization and localization -- the
numbers represent the number of characters between the first and last
letters. CJK means Chinese/Japanese/Korean. Locales, which can
represent a language group or nation for example, can help specify time
formats, formatting currency and character sets. Wu said "we don't really
like Unicode."
Wu mentioned needs for a graphics console and a multilingual install
like some other commercial OS's have. An idea he suggested was having a
message catalogue system, where system and kernel output error messages
as numbers which can be used in different languages. He said that the ideas
for this need to be agreed on, and that this could be a very big project
to maintain, for example if there are 10,000 error messages.
He also mentioned several projects and techniques, such as CITRUS, libxpg4,
unicode/utf8, catopen, GPL'ed gettext and international-based ports trees.
C.L. Kao discussed XIM -- the X input method protocol -- which is the
standard for CJK users to input their text. He said that programmers
should always use fontset_load() instead of font_load() (or leave to the
toolkit). GTK/GNOME has full support, he said, and QT2/KDE are catching
up and LessTif is completely broken. "Regrettably, we recommend GTK
currently," Kao said. Also, he said "[even] if you don't know anything about
internationalization, it shouldn't be hard to code for CJK users."
The third lecturer was Clive Lin from Taiwan. He spoke about some
guidelines, several he learned from personal experience, about developing
for I18N. He said "you don't have to do any special hacks" and "tell
FreeBSD where you are." Set your environment via setlocale(3), login.conf
and various dot-files. Lin also said to never assume ASCII characters
sets, respect setlocale and to leave XIM hooks. He also said to never
strip 8th bits. For example, he said that telnet in the base system
strips 8th bits, and so now there are several separate telnets.
Wu finished the presentation with a plea to programmers: "Please follow
the standards." He said a lot of programmers don't follow the specs and
also said that there is a lot of
duplicated effort and reinventing of the wheel.
Wu also mentioned about the future of DNS and that your programs should
expect changes for supporting future charsets: "Be a good software
engineer -- leave room for future development."
More Info
Review of McKusick's kernel internals tutorial
BSDCon 2000: Some of Wednesday's tracks
Review of Clegg's system security tutorial
Please share your comments.
(info
on using talkbacks)
Name:
Email:
Subject:
Message:
|