To make your application more useful for speakers of other languages, we hope that you
will program I18N compliant. The GNU gcc compiler and GUI libraries like QT and GTK
support I18N through special handling of strings. Making a program I18N compliant is very
easy. It allows contributors to port your application to other languages quickly. Refer
to the library specific I18N documentation for more details.
In contrast with common perception, I18N compliant code is easy to write. Usually, it
only involves wrapping your strings with library specific functions. In addition, please
be sure to allow for wide or multibyte character support.
It has come to our attention that the individual I18N/L10N efforts for each country
has been repeating each others' efforts. Many of us have been reinventing the wheel
repeatedly and inefficiently. We hope that the various major groups in I18N could
congregate into a group effort similar to the Core Team's responsibility.
Currently, we hope that, when you write or port I18N programs, you would send it out
to each country's related FreeBSD mailing list for testing. In the future, we hope to
create applications that work in all the languages out-of-the-box without dirty
hacks.
The FreeBSD internationalization mailing list has been established. If you
are an I18N/L10N developer, please send your comments, ideas, questions, and anything you
deem related to it.
Michael C. Wu will be maintaining an I18N works in progress homepage at http://www.FreeBSD.org/~keichii/i18n/index.html. Please also read the
BSDCon2000 I18N paper and presentations by Clive Lin, Chia-Liang Kao, and Michael C. Wu
at http://www.FreeBSD.org/~keichii/papers/
Perl and Python have I18N and wide character handling libraries. Please use them for
I18N compliance.
In older FreeBSD versions, Perl may give warnings about not having a wide character
locale installed on your system. You can set the environment variable LD_PRELOAD to /usr/lib/libxpg4.so in your
shell.
In sh-based shells:
LD_PRELOAD=/usr/lib/libxpg4.so
In C-based shells:
setenv LD_PRELOAD /usr/lib/libxpg4.so