Moved section on Programming I18N Compliant Applications from Handbook
to Developers Handbook. Suggsted by: nik and murray
This commit is contained in:
parent
8b17c95d00
commit
a9e41ae7ae
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=10676
1 changed files with 83 additions and 0 deletions
83
en_US.ISO8859-1/books/developers-handbook/l10n/chapter.sgml
Normal file
83
en_US.ISO8859-1/books/developers-handbook/l10n/chapter.sgml
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
<!--
|
||||||
|
The FreeBSD Documentation Project
|
||||||
|
|
||||||
|
$FreeBSD$
|
||||||
|
-->
|
||||||
|
|
||||||
|
<chapter id="l10n">
|
||||||
|
<title>Localization - I18N</title>
|
||||||
|
|
||||||
|
<sect1>
|
||||||
|
<title>Programming I18N Compliant Applications</title>
|
||||||
|
<indexterm><primary>Qt</primary></indexterm>
|
||||||
|
<indexterm><primary>GTK</primary></indexterm>
|
||||||
|
<para>To make your application more useful for speakers of other
|
||||||
|
languages, we hope that you will program I18N compliant. The GNU
|
||||||
|
gcc compiler, 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 library specific I18N
|
||||||
|
documentation for more details.</para>
|
||||||
|
|
||||||
|
<para>To the contrary of 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 characters support.</para>
|
||||||
|
|
||||||
|
<sect3>
|
||||||
|
<title>A Call to Unify the I18N Effort</title>
|
||||||
|
|
||||||
|
<para>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.</para>
|
||||||
|
|
||||||
|
<para>Currently, we hope that, when you write or port I18N
|
||||||
|
programs, you would send it out to each country's related
|
||||||
|
FreeBSD mailing lists for testing. In the future, we hope to
|
||||||
|
create applications that work in all the languages
|
||||||
|
out-of-the-box without dirty hacks.</para>
|
||||||
|
|
||||||
|
<para>The mailing list <email>FreeBSD-I18N@FreeBSD.org</email>
|
||||||
|
has been established. If you are an I18N/L10N developer,
|
||||||
|
please send your comments, ideas, questions, and anything
|
||||||
|
you deem related to it. </para>
|
||||||
|
|
||||||
|
<para> Michael C. Wu will be maintaining an I18N works in progress
|
||||||
|
homepage at <ulink
|
||||||
|
url="http://www.FreeBSD.org/~keichii/i18n/index.html">http://www.FreeBSD.org/~keichii/i18n/index.html</ulink>
|
||||||
|
Please also read the BSDCon2000 I18N paper and presentations
|
||||||
|
by Clive Lin, Chia-Liang Kao, and Michael C. Wu at <ulink
|
||||||
|
url="http://www.FreeBSD.org/~keichii/papers/">http://www.FreeBSD.org/~keichii/papers/</ulink></para>
|
||||||
|
</sect3>
|
||||||
|
|
||||||
|
<sect3>
|
||||||
|
<title>Perl and Python</title>
|
||||||
|
<indexterm>
|
||||||
|
<primary>Perl</primary>
|
||||||
|
</indexterm>
|
||||||
|
<indexterm>
|
||||||
|
<primary>Python</primary>
|
||||||
|
</indexterm>
|
||||||
|
|
||||||
|
<para>Perl and Python have I18N and wide characters handling
|
||||||
|
libraries. Please use them for I18N compliance.</para>
|
||||||
|
|
||||||
|
<para>In older FreeBSD versions,
|
||||||
|
Perl may gives warning about not having a wide characters locale
|
||||||
|
that is already installed in your system. You can set the
|
||||||
|
environmental variable <envar>LD_PRELOAD</envar> to
|
||||||
|
<filename>/usr/lib/libxpg4.so</filename> in your shell.</para>
|
||||||
|
|
||||||
|
<para>In <literal>sh</literal>-based shells:</para>
|
||||||
|
|
||||||
|
<programlisting><envar>LD_PRELOAD=/usr/lib/libxpg4.so</envar></programlisting>
|
||||||
|
|
||||||
|
<para>In <literal>C</literal>-based shells:</para>
|
||||||
|
|
||||||
|
<programlisting><envar>setenv LD_PRELOAD /usr/lib/libxpg4.so</envar></programlisting>
|
||||||
|
</sect3>
|
||||||
|
</sect1>
|
||||||
|
</chapter>
|
Loading…
Reference in a new issue