svn commit: r40734 - head/en_US.ISO8859-1/books/handbook/l10n
Dru Lavigne
dru at FreeBSD.org
Thu Jan 24 14:57:43 UTC 2013
Author: dru
Date: Thu Jan 24 14:57:42 2013
New Revision: 40734
URL: http://svnweb.freebsd.org/changeset/doc/40734
Log:
White space only fix. Translators can ignore.
Approved by: gjb (mentor)
Modified:
head/en_US.ISO8859-1/books/handbook/l10n/chapter.xml
Modified: head/en_US.ISO8859-1/books/handbook/l10n/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/l10n/chapter.xml Thu Jan 24 14:33:33 2013 (r40733)
+++ head/en_US.ISO8859-1/books/handbook/l10n/chapter.xml Thu Jan 24 14:57:42 2013 (r40734)
@@ -33,29 +33,29 @@
contributors located all over the world. This chapter discusses
the internationalization and localization features of FreeBSD
that allow non-English speaking users to get real work done.
- There are many aspects of the i18n implementation in both the system
- and application levels, so where applicable we refer the reader
- to more specific sources of documentation.</para>
+ There are many aspects of the i18n implementation in both the
+ system and application levels, so where applicable we refer
+ the reader to more specific sources of documentation.</para>
<para>After reading this chapter, you will know:</para>
<itemizedlist>
<listitem><para>How different languages and locales are encoded
- on modern operating systems.</para></listitem>
+ on modern operating systems.</para></listitem>
<listitem><para>How to set the locale for your login
- shell.</para></listitem>
+ shell.</para></listitem>
<listitem><para>How to configure your console for non-English
- languages.</para></listitem>
- <listitem><para>How to use X Window System effectively with different
- languages.</para></listitem>
+ languages.</para></listitem>
+ <listitem><para>How to use X Window System effectively with
+ different languages.</para></listitem>
<listitem><para>Where to find more information about writing
- i18n-compliant applications.</para></listitem>
- </itemizedlist>
+ i18n-compliant applications.</para></listitem>
+ </itemizedlist>
<para>Before reading this chapter, you should:</para>
<itemizedlist>
<listitem><para>Know how to install additional third-party
- applications (<xref linkend="ports"/>).</para></listitem>
+ applications (<xref linkend="ports"/>).</para></listitem>
</itemizedlist>
</sect1>
@@ -64,48 +64,51 @@
<sect2>
<title>What Is I18N/L10N?</title>
- <indexterm>
- <primary>internationalization</primary>
- <see>localization</see>
- </indexterm>
- <indexterm><primary>localization</primary></indexterm>
- <para>Developers shortened internationalization into the term I18N,
- counting the number of letters between the first and the last
- letters of internationalization. L10N uses the same naming
- scheme, coming from <quote>localization</quote>. Combined
- together, I18N/L10N methods, protocols, and applications allow
- users to use languages of their choice.</para>
+ <indexterm>
+ <primary>internationalization</primary>
+ <see>localization</see>
+ </indexterm>
+ <indexterm><primary>localization</primary></indexterm>
+
+ <para>Developers shortened internationalization into the term
+ I18N, counting the number of letters between the first and
+ the last letters of internationalization. L10N uses the
+ same naming scheme, coming from <quote>localization</quote>.
+ Combined together, I18N/L10N methods, protocols, and
+ applications allow users to use languages of their
+ choice.</para>
<para>I18N applications are programmed using I18N kits under
- libraries. It allows for developers to write a simple file and
- translate displayed menus and texts to each language. We strongly
- encourage programmers to follow this convention.</para>
+ libraries. It allows for developers to write a simple file
+ and translate displayed menus and texts to each language.
+ We strongly encourage programmers to follow this
+ convention.</para>
</sect2>
<sect2>
<title>Why Should I Use I18N/L10N?</title>
- <para>I18N/L10N is used whenever you wish to either view, input, or
- process data in non-English languages.</para>
+ <para>I18N/L10N is used whenever you wish to either view,
+ input, or process data in non-English languages.</para>
</sect2>
<sect2>
<title>What Languages Are Supported in the I18N Effort?</title>
- <para>I18N and L10N are not FreeBSD specific. Currently, one can
- choose from most of the major languages of the World, including
- but not limited to: Chinese, German, Japanese, Korean, French,
- Russian, Vietnamese and others.</para>
+ <para>I18N and L10N are not FreeBSD specific. Currently, one
+ can choose from most of the major languages of the World,
+ including but not limited to: Chinese, German, Japanese,
+ Korean, French, Russian, Vietnamese and others.</para>
</sect2>
</sect1>
<sect1 id="using-localization">
<title>Using Localization</title>
- <para>In all its splendor, I18N is not FreeBSD-specific and is a
- convention. We encourage you to help FreeBSD in following this
- convention.</para>
+ <para>In all its splendor, I18N is not FreeBSD-specific and is
+ a convention. We encourage you to help FreeBSD in following
+ this convention.</para>
<indexterm><primary>locale</primary></indexterm>
<para>Localization settings are based on three main terms:
@@ -116,16 +119,18 @@
<sect2>
<title>Language and Country Codes</title>
+
<indexterm><primary>language codes</primary></indexterm>
<indexterm><primary>country codes</primary></indexterm>
- <para>In order to localize a FreeBSD system to a specific language
- (or any other I18N-supporting &unix; like systems), the user needs to find out
- the codes for the specific country and language (country
- codes tell applications what variation of given
- language to use). In addition, web
- browsers, SMTP/POP servers, web servers, etc. make decisions based on
- them. The following are examples of language/country codes:</para>
+ <para>In order to localize a FreeBSD system to a specific
+ language (or any other I18N-supporting &unix; like systems),
+ the user needs to find out the codes for the specific country
+ and language (country codes tell applications what variation
+ of given language to use). In addition, web browsers,
+ SMTP/POP servers, web servers, etc. make decisions based on
+ them. The following are examples of language/country
+ codes:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
@@ -164,32 +169,36 @@
<sect2>
<title>Encodings</title>
+
<indexterm><primary>encodings</primary></indexterm>
<indexterm><primary>ASCII</primary></indexterm>
- <para>Some languages use non-ASCII encodings that are 8-bit, wide
- or multibyte characters, see &man.multibyte.3; for more
- details. Older applications do not recognize them
- and mistake them for control characters. Newer applications
- usually do recognize 8-bit characters. Depending on the
- implementation, users may be required to compile an application
- with wide or multibyte characters support, or configure it correctly.
- To be able to input and process wide or multibyte characters, the <ulink
- url="&url.base;/ports/index.html">FreeBSD Ports Collection</ulink> has provided
- each language with different programs. Refer to the I18N
- documentation in the respective FreeBSD Port.</para>
+ <para>Some languages use non-ASCII encodings that are 8-bit,
+ wide or multibyte characters, see &man.multibyte.3; for more
+ details. Older applications do not recognize them and mistake
+ them for control characters. Newer applications usually do
+ recognize 8-bit characters. Depending on the implementation,
+ users may be required to compile an application with wide or
+ multibyte characters support, or configure it correctly.
+ To be able to input and process wide or multibyte characters,
+ the <ulink
+ url="&url.base;/ports/index.html">FreeBSD Ports
+ Collection</ulink> has provided each language with different
+ programs. Refer to the I18N documentation in the respective
+ FreeBSD Port.</para>
<para>Specifically, the user needs to look at the application
- documentation to decide on how to configure it correctly or to
- pass correct values into the configure/Makefile/compiler.</para>
+ documentation to decide on how to configure it correctly or
+ to pass correct values into the
+ configure/Makefile/compiler.</para>
<para>Some things to keep in mind are:</para>
<itemizedlist>
<listitem>
<para>Language specific single C chars character sets
- (see &man.multibyte.3;), e.g.
- ISO8859-1, ISO8859-15, KOI8-R, CP437.</para>
+ (see &man.multibyte.3;), e.g. ISO8859-1, ISO8859-15,
+ KOI8-R, CP437.</para>
</listitem>
<listitem>
@@ -199,10 +208,11 @@
<para>You can check the active list of character sets at the
<ulink
- url="http://www.iana.org/assignments/character-sets">IANA Registry</ulink>.</para>
+ url="http://www.iana.org/assignments/character-sets">IANA Registry</ulink>.</para>
<note>
- <para>&os; uses X11-compatible locale encodings instead.</para>
+ <para>&os; uses X11-compatible locale encodings
+ instead.</para>
</note>
</sect2>
@@ -211,67 +221,71 @@
<title>I18N Applications</title>
<para>In the FreeBSD Ports and Package system, I18N applications
- have been named with <literal>I18N</literal> in their names for
- easy identification. However, they do not always support the
- language needed.</para>
+ have been named with <literal>I18N</literal> in their names
+ for easy identification. However, they do not always support
+ the language needed.</para>
</sect2>
<sect2 id="setting-locale">
<title>Setting Locale</title>
- <para>Usually it is sufficient to export the value of the locale name
- as <envar>LANG</envar> in the login shell. This could be done in
- the user's <filename>~/.login_conf</filename> file or in the
- startup file of the user's shell (<filename>~/.profile</filename>,
- <filename>~/.bashrc</filename>, <filename>~/.cshrc</filename>).
- There is no need to set the locale subsets such as
- <envar>LC_CTYPE</envar>, <envar>LC_CTIME</envar>. Please
- refer to language-specific FreeBSD documentation for more
- information.</para>
+ <para>Usually it is sufficient to export the value of the
+ locale name as <envar>LANG</envar> in the login shell. This
+ could be done in the user's <filename>~/.login_conf</filename>
+ file or in the startup file of the user's shell
+ (<filename>~/.profile</filename>,
+ <filename>~/.bashrc</filename>,
+ <filename>~/.cshrc</filename>). There is no need to set the
+ locale subsets such as <envar>LC_CTYPE</envar>,
+ <envar>LC_CTIME</envar>. Please refer to language-specific
+ FreeBSD documentation for more information.</para>
- <para>You should set the following two environment variables in your configuration
- files:</para>
+ <para>You should set the following two environment variables
+ in your configuration files:</para>
<itemizedlist>
- <indexterm><primary>POSIX</primary></indexterm>
- <listitem>
- <para><envar>LANG</envar> for &posix; &man.setlocale.3; family
- functions</para>
+ <indexterm><primary>POSIX</primary></indexterm>
+ <listitem>
+ <para><envar>LANG</envar> for &posix; &man.setlocale.3;
+ family functions</para>
</listitem>
<listitem>
<indexterm><primary>MIME</primary></indexterm>
- <para><envar>MM_CHARSET</envar> for applications' MIME character
- set</para>
+ <para><envar>MM_CHARSET</envar> for applications' MIME
+ character set</para>
</listitem>
</itemizedlist>
- <para>This includes the user shell configuration, the specific application
- configuration, and the X11 configuration.</para>
+ <para>This includes the user shell configuration, the specific
+ application configuration, and the X11 configuration.</para>
<sect3>
<title>Setting Locale Methods</title>
- <indexterm><primary>locale</primary></indexterm>
- <indexterm><primary>login class</primary></indexterm>
+
+ <indexterm><primary>locale</primary></indexterm>
+ <indexterm><primary>login class</primary></indexterm>
<para>There are two methods for setting locale, and both are
- described below. The first (recommended one) is by assigning
- the environment variables in <link linkend="login-class">login
- class</link>, and the second is by adding the environment
- variable assignments to the system's shell <link
- linkend="startup-file">startup file</link>.</para>
+ described below. The first (recommended one) is by
+ assigning the environment variables in
+ <link linkend="login-class">login class</link>, and the
+ second is by adding the environment variable assignments
+ to the system's shell
+ <link linkend="startup-file">startup file</link>.</para>
<sect4 id="login-class">
<title>Login Classes Method</title>
- <para>This method allows environment variables needed for locale
- name and MIME character sets to be assigned once for every
- possible shell instead of adding specific shell assignments to
- each shell's startup file. <link linkend="usr-setup">User
- Level Setup</link> can be done by an user himself and <link
- linkend="adm-setup">Administrator Level Setup</link> require
- superuser privileges.</para>
+ <para>This method allows environment variables needed for
+ locale name and MIME character sets to be assigned once
+ for every possible shell instead of adding specific shell
+ assignments to each shell's startup file.
+ <link linkend="usr-setup">User Level Setup</link> can be
+ done by an user himself and
+ <link linkend="adm-setup">Administrator Level Setup</link>
+ require superuser privileges.</para>
<sect5 id="usr-setup">
<title>User Level Setup</title>
@@ -285,12 +299,14 @@
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:</programlisting>
- <indexterm><primary>Traditional Chinese</primary><secondary>BIG-5 encoding</secondary></indexterm>
+ <indexterm><primary>Traditional Chinese</primary>
+ <secondary>BIG-5 encoding</secondary></indexterm>
<para>Here is an example of a
- <filename>.login_conf</filename> that sets the variables
- for Traditional Chinese in BIG-5 encoding. Notice the many
- more variables set because some software does not respect
- locale variables correctly for Chinese, Japanese, and Korean.</para>
+ <filename>.login_conf</filename> that sets the variables
+ for Traditional Chinese in BIG-5 encoding. Notice the
+ many more variables set because some software does not
+ respect locale variables correctly for Chinese,
+ Japanese, and Korean.</para>
<programlisting>#Users who do not wish to use monetary units or time formats
#of Taiwan can manually change each variable
@@ -307,7 +323,8 @@ me:\
:xmodifiers="@im=gcin": #Set gcin as the XIM Input Server</programlisting>
<para>See <link linkend="adm-setup">Administrator Level
- Setup</link> and &man.login.conf.5; for more details.</para>
+ Setup</link> and &man.login.conf.5; for more
+ details.</para>
</sect5>
<sect5 id="adm-setup">
@@ -323,8 +340,8 @@ me:\
:lang=<replaceable>locale_name</replaceable>:\
:tc=default:</programlisting>
- <para>So sticking with our previous example using Latin-1, it
- would look like this:</para>
+ <para>So sticking with our previous example using Latin-1,
+ it would look like this:</para>
<programlisting>german|German Users Accounts:\
:charset=ISO-8859-1:\
@@ -337,58 +354,65 @@ me:\
<screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen>
<para>to make new configuration in
- <filename>/etc/login.conf</filename> visible to the system.</para>
+ <filename>/etc/login.conf</filename> visible to the
+ system.</para>
- <bridgehead renderas="sect4">Changing Login Classes with &man.vipw.8;</bridgehead>
+ <bridgehead renderas="sect4">Changing Login Classes with
+ &man.vipw.8;</bridgehead>
<indexterm>
- <primary><command>vipw</command></primary>
- </indexterm>
- <para>Use <command>vipw</command> to add new users, and make
- the entry look like this:</para>
+ <primary><command>vipw</command></primary>
+ </indexterm>
+ <para>Use <command>vipw</command> to add new users, and
+ make the entry look like this:</para>
<programlisting>user:password:1111:11:<replaceable>language</replaceable>:0:0:User Name:/home/user:/bin/sh</programlisting>
- <bridgehead renderas="sect4">Changing Login Classes with &man.adduser.8;</bridgehead>
+ <bridgehead renderas="sect4">Changing Login Classes with
+ &man.adduser.8;</bridgehead>
<indexterm>
- <primary><command>adduser</command></primary>
- </indexterm>
+ <primary><command>adduser</command></primary>
+ </indexterm>
<indexterm><primary>login class</primary></indexterm>
- <para>Use <command>adduser</command> to add new users, and do
- the following:</para>
+ <para>Use <command>adduser</command> to add new users,
+ and do the following:</para>
<itemizedlist>
<listitem>
<para>Set <literal>defaultclass =
- <replaceable>language</replaceable></literal> in
- <filename>/etc/adduser.conf</filename>. Keep in mind
- you must enter a <literal>default</literal> class for
- all users of other languages in this case.</para>
+ <replaceable>language</replaceable></literal> in
+ <filename>/etc/adduser.conf</filename>. Keep in
+ mind you must enter a <literal>default</literal>
+ class for all users of other languages in this
+ case.</para>
</listitem>
<listitem>
- <para>An alternative variant is answering the specified
- language each time that
-<screen><prompt>Enter login class: default []: </prompt></screen>
+ <para>An alternative variant is answering the
+ specified language each time that
+
+ <screen><prompt>Enter login class: default []:</prompt></screen>
+
appears from &man.adduser.8;.</para>
</listitem>
<listitem>
- <para>Another alternative is to use the following for each
- user of a different language that you wish to
+ <para>Another alternative is to use the following for
+ each user of a different language that you wish to
add:</para>
<screen>&prompt.root; <userinput>adduser -class <replaceable>language</replaceable></userinput></screen>
</listitem>
</itemizedlist>
- <bridgehead renderas="sect4">Changing Login Classes with &man.pw.8;</bridgehead>
+ <bridgehead renderas="sect4">Changing Login Classes with
+ &man.pw.8;</bridgehead>
<indexterm>
- <primary><command>pw</command></primary>
- </indexterm>
- <para>If you use &man.pw.8; for adding new users, call it in
- this form:</para>
+ <primary><command>pw</command></primary>
+ </indexterm>
+ <para>If you use &man.pw.8; for adding new users, call
+ it in this form:</para>
<screen>&prompt.root; <userinput>pw useradd <replaceable>user_name</replaceable> -L <replaceable>language</replaceable></userinput></screen>
</sect5>
@@ -398,19 +422,20 @@ me:\
<title>Shell Startup File Method</title>
<note>
- <para>This method is not recommended because it requires a
- different setup for each possible shell program chosen. Use
- the <link linkend="login-class">Login Class Method</link>
- instead.</para>
+ <para>This method is not recommended because it requires
+ a different setup for each possible shell program
+ chosen. Use the <link linkend="login-class">Login Class
+ Method</link> instead.</para>
</note>
<indexterm><primary>MIME</primary></indexterm>
<indexterm><primary>locale</primary></indexterm>
- <para>To add the locale name and MIME character set, just set
- the two environment variables shown below in the
+ <para>To add the locale name and MIME character set, just
+ set the two environment variables shown below in the
<filename>/etc/profile</filename> and/or
- <filename>/etc/csh.login</filename> shell startup files. We
- will use the German language as an example below:</para>
+ <filename>/etc/csh.login</filename> shell startup files.
+ We will use the German language as an example
+ below:</para>
<para>In <filename>/etc/profile</filename>:</para>
@@ -423,11 +448,11 @@ me:\
<envar>setenv MM_CHARSET ISO-8859-1</envar></programlisting>
<para>Alternatively, you can add the above instructions to
- <filename>/usr/share/skel/dot.profile</filename> (similar to
- what was used in <filename>/etc/profile</filename> above), or
- <filename>/usr/share/skel/dot.login</filename> (similar to
- what was used in <filename>/etc/csh.login</filename>
- above).</para>
+ <filename>/usr/share/skel/dot.profile</filename> (similar
+ to what was used in <filename>/etc/profile</filename>
+ above), or <filename>/usr/share/skel/dot.login</filename>
+ (similar to what was used in
+ <filename>/etc/csh.login</filename> above).</para>
<para>For X11:</para>
@@ -456,33 +481,37 @@ me:\
font8x14=<replaceable>font_name</replaceable>
font8x8=<replaceable>font_name</replaceable></programlisting>
- <para>The <replaceable>font_name</replaceable> here is taken from
- the <filename>/usr/share/syscons/fonts</filename> directory,
- without the <filename>.fnt</filename> suffix.</para>
+ <para>The <replaceable>font_name</replaceable> here is taken
+ from the <filename>/usr/share/syscons/fonts</filename>
+ directory, without the <filename>.fnt</filename>
+ suffix.</para>
<indexterm>
- <primary><application>sysinstall</application></primary>
+ <primary><application>sysinstall</application></primary>
</indexterm>
<indexterm><primary>keymap</primary></indexterm>
<indexterm><primary>screenmap</primary></indexterm>
<para>If required, set the keymap and screenmap for your
single C chars character set through
<command>sysinstall</command>.
- Once inside <application>sysinstall</application>, choose <guimenuitem>Configure</guimenuitem>, then
- <guimenuitem>Console</guimenuitem>. Alternatively, you can add the
- following to <filename>/etc/rc.conf</filename>:</para>
+ Once inside <application>sysinstall</application>, choose
+ <guimenuitem>Configure</guimenuitem>, then
+ <guimenuitem>Console</guimenuitem>. Alternatively, you can
+ add the following to <filename>/etc/rc.conf</filename>:</para>
<programlisting>scrnmap=<replaceable>screenmap_name</replaceable>
keymap=<replaceable>keymap_name</replaceable>
keychange="<replaceable>fkey_number sequence</replaceable>"</programlisting>
- <para>The <replaceable>screenmap_name</replaceable> here is taken
- from the <filename>/usr/share/syscons/scrnmaps</filename>
- directory, without the <filename>.scm</filename> suffix. A
- screenmap with a corresponding mapped font is usually needed as a
- workaround for expanding bit 8 to bit 9 on a VGA adapter's font
- character matrix in pseudographics area, i.e., to move letters out
- of that area if screen font uses a bit 8 column.</para>
+ <para>The <replaceable>screenmap_name</replaceable> here is
+ taken from the
+ <filename>/usr/share/syscons/scrnmaps</filename> directory,
+ without the <filename>.scm</filename> suffix. A screenmap
+ with a corresponding mapped font is usually needed as a
+ workaround for expanding bit 8 to bit 9 on a VGA adapter's
+ font character matrix in pseudographics area, i.e., to move
+ letters out of that area if screen font uses a bit 8
+ column.</para>
<para>If you have the <application>moused</application> daemon
enabled by setting the following
@@ -494,29 +523,31 @@ keychange="<replaceable>fkey_number sequ
paragraph.</para>
<indexterm>
- <primary><application>moused</application></primary>
+ <primary><application>moused</application></primary>
</indexterm>
- <para>By default the mouse cursor of the &man.syscons.4; driver occupies the
- 0xd0-0xd3 range in the character set. If your language uses this
- range, you need to move the cursor's range outside of it. To enable
- the workaround for &os;, add the following line to
- <filename>/etc/rc.conf</filename>:</para>
+ <para>By default the mouse cursor of the &man.syscons.4; driver
+ occupies the 0xd0-0xd3 range in the character set. If your
+ language uses this range, you need to move the cursor's range
+ outside of it. To enable the workaround for &os;, add the
+ following line to <filename>/etc/rc.conf</filename>:</para>
<programlisting>mousechar_start=3</programlisting>
- <para>The <replaceable>keymap_name</replaceable> here is taken from
- the <filename>/usr/share/syscons/keymaps</filename> directory,
- without the <filename>.kbd</filename> suffix. If you are
- uncertain which keymap to use, you use can &man.kbdmap.1; to test
- keymaps without rebooting.</para>
-
- <para>The <literal>keychange</literal> is usually needed to program
- function keys to match the selected terminal type because
- function key sequences cannot be defined in the key map.</para>
-
- <para>Also be sure to set the correct console terminal type in
- <filename>/etc/ttys</filename> for all <literal>ttyv*</literal>
- entries. Current pre-defined correspondences are:</para>
+ <para>The <replaceable>keymap_name</replaceable> here is taken
+ from the <filename>/usr/share/syscons/keymaps</filename>
+ directory, without the <filename>.kbd</filename> suffix. If
+ you are uncertain which keymap to use, you use can
+ &man.kbdmap.1; to test keymaps without rebooting.</para>
+
+ <para>The <literal>keychange</literal> is usually needed to
+ program function keys to match the selected terminal type
+ because function key sequences cannot be defined in the key
+ map.</para>
+
+ <para>Also be sure to set the correct console terminal type
+ in <filename>/etc/ttys</filename> for all
+ <literal>ttyv*</literal> entries. Current pre-defined
+ correspondences are:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
@@ -566,13 +597,14 @@ keychange="<replaceable>fkey_number sequ
</tgroup>
</informaltable>
- <para>For wide or multibyte characters languages, use the correct
- FreeBSD port in your
+ <para>For wide or multibyte characters languages, use the
+ correct FreeBSD port in your
<filename>/usr/ports/<replaceable>language</replaceable></filename>
- directory. Some ports appear as console while the system sees it
- as serial vtty's, hence you must reserve enough vtty's for both
- X11 and the pseudo-serial console. Here is a partial list of
- applications for using other languages in console:</para>
+ directory. Some ports appear as console while the system
+ sees it as serial vtty's, hence you must reserve enough vtty's
+ for both X11 and the pseudo-serial console. Here is a partial
+ list of applications for using other languages in
+ console:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
@@ -586,18 +618,22 @@ keychange="<replaceable>fkey_number sequ
<tbody>
<row>
<entry>Traditional Chinese (BIG-5)</entry>
- <entry><filename role="package">chinese/big5con</filename></entry>
+ <entry><filename
+ role="package">chinese/big5con</filename></entry>
</row>
<row>
<entry>Japanese</entry>
- <entry><filename role="package">japanese/kon2-16dot</filename> or
- <filename role="package">japanese/mule-freewnn</filename></entry>
+ <entry><filename
+ role="package">japanese/kon2-16dot</filename> or
+ <filename
+ role="package">japanese/mule-freewnn</filename></entry>
</row>
<row>
<entry>Korean</entry>
- <entry><filename role="package">korean/han</filename></entry>
+ <entry><filename
+ role="package">korean/han</filename></entry>
</row>
</tbody>
</tgroup>
@@ -610,30 +646,36 @@ keychange="<replaceable>fkey_number sequ
<para>Although X11 is not part of the FreeBSD Project, we have
included some information here for FreeBSD users. For more
details, refer to the <ulink
- url="http://www.x.org/">&xorg;
+ url="http://www.x.org/">&xorg;
web site</ulink> or whichever X11 Server you use.</para>
- <para>In <filename>~/.Xresources</filename>, you can additionally
- tune application specific I18N settings (e.g., fonts, menus,
- etc.).</para>
+ <para>In <filename>~/.Xresources</filename>, you can
+ additionally tune application specific I18N settings (e.g.,
+ fonts, menus, etc.).</para>
<sect3>
<title>Displaying Fonts</title>
- <indexterm><primary>X11 True Type font server</primary></indexterm>
+
+ <indexterm><primary>X11 True Type font
+ server</primary></indexterm>
<para>Install <application>&xorg;</application> server
- (<filename role="package">x11-servers/xorg-server</filename>),
- then install the language &truetype; fonts. Setting the correct
- locale should allow you to view your selected language in menus
- and such.</para>
+ (<filename
+ role="package">x11-servers/xorg-server</filename>),
+ then install the language &truetype; fonts. Setting the
+ correct locale should allow you to view your selected
+ language in menus and such.</para>
</sect3>
<sect3>
<title>Inputting Non-English Characters</title>
- <indexterm><primary>X11 Input Method (XIM)</primary></indexterm>
- <para>The X11 Input Method (XIM) Protocol is a new standard for
- all X11 clients. All X11 applications should be written as XIM
- clients that take input from XIM Input servers. There are
- several XIM servers available for different languages.</para>
+
+ <indexterm><primary>X11 Input Method
+ (XIM)</primary></indexterm>
+ <para>The X11 Input Method (XIM) Protocol is a new standard
+ for all X11 clients. All X11 applications should be written
+ as XIM clients that take input from XIM Input servers.
+ There are several XIM servers available for different
+ languages.</para>
</sect3>
</sect2>
@@ -641,44 +683,45 @@ keychange="<replaceable>fkey_number sequ
<title>Printer Setup</title>
<para>Some single C chars character sets are usually hardware
- coded into printers. Wide or multibyte
- character sets require special setup and we recommend using
- <application>apsfilter</application>. You may also convert the
- document to &postscript; or PDF formats using language specific
- converters.</para>
+ coded into printers. Wide or multibyte character sets require
+ special setup and we recommend using
+ <application>apsfilter</application>. You may also convert
+ the document to &postscript; or PDF formats using language
+ specific converters.</para>
</sect2>
<sect2>
<title>Kernel and File Systems</title>
- <para>The FreeBSD fast filesystem (FFS) is 8-bit clean, so it can be used
- with any single C chars character set (see &man.multibyte.3;),
- but there is no character set
- name stored in the filesystem; i.e., it is raw 8-bit and does not
- know anything about encoding order. Officially, FFS does not
- support any form of wide or multibyte character sets yet. However, some
- wide or multibyte character sets have independent patches for FFS
- enabling such support. They are only temporary unportable
- solutions or hacks and we have decided to not include them in the
- source tree. Refer to respective languages' web sites for more
- information and the patch files.</para>
+ <para>The FreeBSD fast filesystem (FFS) is 8-bit clean, so it
+ can be used with any single C chars character set (see
+ &man.multibyte.3;), but there is no character set name stored
+ in the filesystem; i.e., it is raw 8-bit and does not know
+ anything about encoding order. Officially, FFS does not
+ support any form of wide or multibyte character sets yet.
+ However, some wide or multibyte character sets have
+ independent patches for FFS enabling such support. They are
+ only temporary unportable solutions or hacks and we have
+ decided to not include them in the source tree. Refer to
+ respective languages' web sites for more information and the
+ patch files.</para>
<indexterm><primary>DOS</primary></indexterm>
<indexterm><primary>Unicode</primary></indexterm>
- <para>The FreeBSD &ms-dos; filesystem has the configurable ability to
- convert between &ms-dos;, Unicode character sets and chosen
- FreeBSD filesystem character sets. See &man.mount.msdosfs.8; for
- details.</para>
+ <para>The FreeBSD &ms-dos; filesystem has the configurable
+ ability to convert between &ms-dos;, Unicode character sets
+ and chosen FreeBSD filesystem character sets. See
+ &man.mount.msdosfs.8; for details.</para>
</sect2>
</sect1>
<sect1 id="l10n-compiling">
<title>Compiling I18N Programs</title>
- <para>Many FreeBSD Ports have been ported with I18N support. Some
- of them are marked with -I18N in the port name. These and many
- other programs have built in support for I18N and need no special
- consideration.</para>
+ <para>Many FreeBSD Ports have been ported with I18N support.
+ Some of them are marked with -I18N in the port name. These
+ and many other programs have built in support for I18N and
+ need no special consideration.</para>
<indexterm>
<primary><application>MySQL</application></primary>
@@ -705,14 +748,15 @@ keychange="<replaceable>fkey_number sequ
</authorgroup>
</sect2info>
<title>Russian Language (KOI8-R Encoding)</title>
+
<indexterm>
<primary>localization</primary>
<secondary>Russian</secondary>
</indexterm>
- <para>For more information about KOI8-R encoding, see the <ulink
- url="http://koi8.pp.ru/">KOI8-R References
- (Russian Net Character Set)</ulink>.</para>
+ <para>For more information about KOI8-R encoding, see the
+ <ulink url="http://koi8.pp.ru/">KOI8-R References
+ (Russian Net Character Set)</ulink>.</para>
<sect3>
<title>Locale Setup</title>
@@ -724,8 +768,8 @@ keychange="<replaceable>fkey_number sequ
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:</programlisting>
- <para>See earlier in this chapter for examples of setting up the
- <link linkend="setting-locale">locale</link>.</para>
+ <para>See earlier in this chapter for examples of setting
+ up the <link linkend="setting-locale">locale</link>.</para>
</sect3>
<sect3>
@@ -758,18 +802,20 @@ font8x8="cp866-8x8"</programlisting>
</listitem>
</itemizedlist>
- <para>See earlier in this chapter for examples of setting up the
- <link linkend="setting-console">console</link>.</para>
+ <para>See earlier in this chapter for examples of setting up
+ the <link linkend="setting-console">console</link>.</para>
</sect3>
<sect3>
<title>Printer Setup</title>
+
<indexterm><primary>printers</primary></indexterm>
<para>Since most printers with Russian characters come with
hardware code page CP866, a special output filter is needed
- to convert from KOI8-R to CP866. Such a filter is installed by
- default as <filename>/usr/libexec/lpr/ru/koi2alt</filename>.
- A Russian printer <filename>/etc/printcap</filename> entry
+ to convert from KOI8-R to CP866. Such a filter is installed
+ by default as
+ <filename>/usr/libexec/lpr/ru/koi2alt</filename>. A
+ Russian printer <filename>/etc/printcap</filename> entry
should look like:</para>
<programlisting>lp|Russian local line printer:\
@@ -782,16 +828,17 @@ font8x8="cp866-8x8"</programlisting>
<sect3>
<title>&ms-dos; FS and Russian Filenames</title>
- <para>The following example &man.fstab.5; entry enables support
- for Russian filenames in mounted &ms-dos; filesystems:</para>
+ <para>The following example &man.fstab.5; entry enables
+ support for Russian filenames in mounted &ms-dos;
+ filesystems:</para>
<programlisting>/dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0</programlisting>
<para>The option <option>-L</option> selects the locale name
used, and <option>-W</option> sets the character conversion
table. To use the <option>-W</option> option, be sure to
- mount <filename>/usr</filename> before the &ms-dos; partition
- because the conversion tables are located in
+ mount <filename>/usr</filename> before the &ms-dos;
+ partition because the conversion tables are located in
<filename>/usr/libdata/msdosfs</filename>. For more
information, see the &man.mount.msdosfs.8; manual
page.</para>
@@ -803,30 +850,30 @@ font8x8="cp866-8x8"</programlisting>
<orderedlist>
<listitem>
<para>Do <link linkend="setting-locale">non-X locale
- setup</link> first as described.</para>
+ setup</link> first as described.</para>
</listitem>
<listitem>
<para>If you use <application>&xorg;</application>,
- install
- <filename role="package">x11-fonts/xorg-fonts-cyrillic</filename>
- package.</para>
-
- <para>Check the <literal>"Files"</literal> section
- in your <filename>/etc/X11/xorg.conf</filename> file.
- The following
- line must be added <emphasis>before</emphasis> any other
- <literal>FontPath</literal> entries:</para>
+ install <filename
+ role="package">x11-fonts/xorg-fonts-cyrillic</filename>
+ package.</para>
+
+ <para>Check the <literal>"Files"</literal> section in
+ your <filename>/etc/X11/xorg.conf</filename> file. The
+ following line must be added <emphasis>before</emphasis>
+ any other <literal>FontPath</literal> entries:</para>
<programlisting>FontPath "/usr/local/lib/X11/fonts/cyrillic"</programlisting>
<note>
- <para>See ports for more cyrillic fonts.</para></note>
+ <para>See ports for more cyrillic fonts.</para>
+ </note>
</listitem>
<listitem>
- <para>To activate a Russian keyboard, add the following to the
- <literal>"Keyboard"</literal> section of your
+ <para>To activate a Russian keyboard, add the following
+ to the <literal>"Keyboard"</literal> section of your
<filename>xorg.conf</filename> file:</para>
<programlisting>Option "XkbLayout" "us,ru"
@@ -837,36 +884,38 @@ Option "XkbOptions" "grp:toggle"</progr
<para>For <literal>grp:toggle</literal>
the RUS/LAT switch will be <keycap>Right Alt</keycap>,
- for <literal>grp:ctrl_shift_toggle</literal> switch will be
- <keycombo action="simul"><keycap>Ctrl</keycap><keycap>Shift</keycap></keycombo>.
- For <literal>grp:caps_toggle</literal>
- the RUS/LAT switch will be <keycap>CapsLock</keycap>.
- The old <keycap>CapsLock</keycap> function is still
- available via <keycombo action="simul"><keycap>Shift</keycap><keycap>CapsLock</keycap></keycombo> (in LAT mode
- only).
- <literal>grp:caps_toggle</literal> does not work in
- <application>&xorg;</application> for unknown reason.</para>
-
- <para>If you have <quote>&windows;</quote> keys on your keyboard,
- and notice that some non-alphabetical keys are mapped
- incorrectly in RUS mode, add the following line in your
- <filename>xorg.conf</filename> file:</para>
+ for <literal>grp:ctrl_shift_toggle</literal> switch
+ will be <keycombo
+ action="simul"><keycap>Ctrl</keycap><keycap>Shift</keycap></keycombo>.
+ For <literal>grp:caps_toggle</literal> the RUS/LAT
+ switch will be <keycap>CapsLock</keycap>. The old
+ <keycap>CapsLock</keycap> function is still available
+ via <keycombo
+ action="simul"><keycap>Shift</keycap><keycap>CapsLock</keycap></keycombo>
+ (in LAT mode only). <literal>grp:caps_toggle</literal>
+ does not work in <application>&xorg;</application> for
+ unknown reason.</para>
+
+ <para>If you have <quote>&windows;</quote> keys on your
+ keyboard, and notice that some non-alphabetical keys
+ are mapped incorrectly in RUS mode, add the following
+ line in your <filename>xorg.conf</filename> file:</para>
<programlisting>Option "XkbVariant" ",winkeys"</programlisting>
<note>
- <para>The Russian XKB keyboard may not work with non-localized
- applications.</para>
+ <para>The Russian XKB keyboard may not work with
+ non-localized applications.</para>
</note>
</listitem>
</orderedlist>
<note>
<para>Minimally localized applications
should call a <function>XtSetLanguageProc (NULL, NULL,
- NULL);</function> function early in the program.</para>
- <para>See <ulink
- url="http://koi8.pp.ru/xwin.html">
- KOI8-R for X Window</ulink> for more instructions on
+ NULL);</function> function early in the program.</para>
+
+ <para>See <ulink url="http://koi8.pp.ru/xwin.html">
+ KOI8-R for X Window</ulink> for more instructions on
localizing X11 applications.</para>
</note>
</sect3>
@@ -874,27 +923,31 @@ Option "XkbOptions" "grp:toggle"</progr
<sect2>
<title>Traditional Chinese Localization for Taiwan</title>
+
<indexterm>
<primary>localization</primary>
<secondary>Traditional Chinese</secondary>
</indexterm>
<para>The FreeBSD-Taiwan Project has an Chinese HOWTO for
- FreeBSD at <ulink url="http://netlab.cse.yzu.edu.tw/~statue/freebsd/zh-tut/"></ulink>
- using many Chinese ports.
- Current editor for the <literal>FreeBSD Chinese HOWTO</literal> is
- Shen Chuan-Hsing <email>statue at freebsd.sinica.edu.tw</email>.
- </para>
-
- <para>Chuan-Hsing Shen <email>statue at freebsd.sinica.edu.tw</email> has
- created the <ulink url="http://netlab.cse.yzu.edu.tw/~statue/cfc/">
- Chinese FreeBSD Collection (CFC)</ulink> using FreeBSD-Taiwan's
- <literal>zh-L10N-tut</literal>. The packages and the script files
- are available at <ulink url="ftp://freebsd.csie.nctu.edu.tw/pub/taiwan/CFC/"></ulink>.</para>
+ FreeBSD at <ulink
+ url="http://netlab.cse.yzu.edu.tw/~statue/freebsd/zh-tut/"></ulink>
+ using many Chinese ports. Current editor for the
+ <literal>FreeBSD Chinese HOWTO</literal> is Shen Chuan-Hsing
+ <email>statue at freebsd.sinica.edu.tw</email>.</para>
+
+ <para>Chuan-Hsing Shen
+ <email>statue at freebsd.sinica.edu.tw</email> has created the
+ <ulink url="http://netlab.cse.yzu.edu.tw/~statue/cfc/">
+ Chinese FreeBSD Collection (CFC)</ulink> using
+ FreeBSD-Taiwan's <literal>zh-L10N-tut</literal>. The packages
+ and the script files are available at <ulink
+ url="ftp://freebsd.csie.nctu.edu.tw/pub/taiwan/CFC/"></ulink>.</para>
</sect2>
<sect2>
<title>German Language Localization (for All ISO 8859-1
Languages)</title>
+
<indexterm>
<primary>localization</primary>
<secondary>German</secondary>
@@ -902,8 +955,8 @@ Option "XkbOptions" "grp:toggle"</progr
<para>Slaven Rezic <email>eserte at cs.tu-berlin.de</email> wrote a
tutorial on using umlauts on a FreeBSD machine. The tutorial
- is written in German and is available at
- <ulink url="http://user.cs.tu-berlin.de/~eserte/FreeBSD/doc/umlaute/umlaute.html"></ulink>.</para>
+ is written in German and is available at <ulink
+ url="http://user.cs.tu-berlin.de/~eserte/FreeBSD/doc/umlaute/umlaute.html"></ulink>.</para>
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-doc-head
mailing list