svn commit: r41000 - head/en_US.ISO8859-1/books/handbook/l10n

Dru Lavigne dru at FreeBSD.org
Sun Feb 17 17:49:08 UTC 2013


Author: dru
Date: Sun Feb 17 17:49:08 2013
New Revision: 41000
URL: http://svnweb.freebsd.org/changeset/doc/41000

Log:
  Initial content fix. This patch addresses the following:
  
  - &os;, etc. i.e., e.g., you
  
  - xref and directory tags
  
  - fixes acronym tags and i18n/L10n
  
  - fixes grammos and clarifies some areas
  
  - removes -W as this is deprecated
  
  - removes CFC which no longer exists
  
  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	Sun Feb 17 17:41:05 2013	(r40999)
+++ head/en_US.ISO8859-1/books/handbook/l10n/chapter.xml	Sun Feb 17 17:49:08 2013	(r41000)
@@ -24,38 +24,51 @@
     </authorgroup>
   </chapterinfo>
 
-  <title>Localization - I18N/L10N Usage and Setup</title>
+  <title>Localization -
+    <acronym>i18n</acronym>/<acronym>L10n</acronym> Usage and
+    Setup</title>
 
   <sect1 id="l10n-synopsis">
     <title>Synopsis</title>
 
-    <para>FreeBSD is a very distributed project with users and
-      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>
+    <para>&os; is a distributed project with users and contributors
+      located all over the world.  This chapter discusses the
+      internationalization and localization features of &os; that
+      allow non-English speaking users to get real work done.  Since
+      there are many aspects of the <acronym>i18n</acronym>
+      implementation in both the system and application levels, more
+      specific sources of documentation are referred to, where
+      applicable.</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>
-      <listitem><para>How to set the locale for your login
-	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>
-      <listitem><para>Where to find more information about writing
-	i18n-compliant applications.</para></listitem>
+      <listitem>
+	<para>How different languages and locales are encoded on
+	  modern operating systems.</para>
+      </listitem>
+      <listitem>
+	<para>How to set the locale for a login shell.</para>
+      </listitem>
+      <listitem>
+	<para>How to configure the console for non-English
+	  languages.</para>
+      </listitem>
+      <listitem>
+	<para>How to use <application>Xorg</application>effectively
+	  with different languages.</para>
+      </listitem>
+      <listitem>
+	<para>Where to find more information about writing
+	  <acronym>i18n</acronym>-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>
+      <listitem><para>Know how to <link linkend="ports">install
+	  additional third-party
+	  applications</link>.</para></listitem>
     </itemizedlist>
   </sect1>
 
@@ -63,7 +76,8 @@
     <title>The Basics</title>
 
     <sect2>
-      <title>What Is I18N/L10N?</title>
+      <title>What Is
+	<acronym>i18n</acronym>/<acronym>L10n</acronym>?</title>
 
       <indexterm>
 	<primary>internationalization</primary>
@@ -71,44 +85,45 @@
       </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
+      <para>The term internationalization has been shortened to
+	<acronym>i18n</acronym>, which represents the number of
+	letters between the first and the last letters of
+	internationalization.  <acronym>L10n</acronym> 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>
+	Combined together,
+	<acronym>i18n</acronym>/<acronym>L10n</acronym> 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>
+      <para><acronym>i18n</acronym> applications are programmed using
+	<acronym>i18n</acronym> kits under libraries.  These allow
+	developers to write a simple file and translate displayed
+	menus and texts to each language.</para>
     </sect2>
 
     <sect2>
-      <title>Why Should I Use I18N/L10N?</title>
+      <title>Why Use
+	<acronym>i18n</acronym>/<acronym>L10n</acronym>?</title>
 
-      <para>I18N/L10N is used whenever you wish to either view,
-	input, or process data in non-English languages.</para>
+      <para>Using <acronym>i18n</acronym>/<acronym>L10n</acronym>
+	allows a user to view, input, or process data in non-English
+	languages.</para>
     </sect2>
 
     <sect2>
-      <title>What Languages Are Supported in the I18N Effort?</title>
+      <title>Which Languages Are Supported?</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><acronym>i18n</acronym> and <acronym>L10n</acronym> are
+	not &os; specific.  Currently, one can choose from most of the
+	major languages, including but not limited to:  Chinese,
+	German, Japanese, Korean, French, Russian, and
+	Vietnamese.</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>
     <indexterm><primary>locale</primary></indexterm>
 
     <para>Localization settings are based on three main terms:
@@ -123,14 +138,11 @@
       <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 &os; system to a specific language,
+	the user needs to determine the codes for the specific country
+	and language as the country code tells applications which
+	variation of the given language to use.  The following are
+	examples of language/country codes:</para>
 
       <informaltable frame="none" pgwide="1">
 	<tgroup cols="2">
@@ -174,54 +186,51 @@
       <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>
+	wide, or multibyte characters.  For more information on these
+	encodings, refer to &man.multibyte.3;.  Older applications do
+	not recognize these encodings and mistake them for control
+	characters.  Newer applications usually recognize 8-bit
+	characters.  Depending on the implementation, users may be
+	required to compile an application with wide or multibyte
+	character support, or configure it correctly.  To provide
+	application support for wide or multibyte characters, the
+	<ulink url="&url.base;/ports/index.html">&os; Ports
+	Collection</ulink> contains programs for several languages.
+	Refer to the <acronym>i18n</acronym> documentation in the
+	respective &os; 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 how to configure it correctly or to
+	determine which compile options to use when building the
+	port.</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>
+	    such as ISO8859-1, ISO8859-15, KOI8-R, and CP437.  These
+	    are described in &man.multibyte.3;.</para>
 	</listitem>
 
 	<listitem>
-	  <para>Wide or multibyte encodings, e.g., EUC, Big5.</para>
+	  <para>Wide or multibyte encodings such as EUC and
+	    Big5.</para>
 	</listitem>
       </itemizedlist>
 
-      <para>You can check the active list of character sets at the
+      <para>The active list of character sets can be found 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
+	<para>&os; uses Xorg-compatible locale encodings
 	  instead.</para>
       </note>
 
-    </sect2>
-
-    <sect2>
-      <title>I18N Applications</title>
-
-      <para>In the FreeBSD Ports and Package system, I18N applications
-	have been named with <literal>I18N</literal> in their names
+      <para>In the &os; Ports Collection, <acronym>i18n</acronym>
+	applications include <literal>i18n</literal> in their names
 	for easy identification.  However, they do not always support
 	the language needed.</para>
     </sect2>
@@ -232,16 +241,16 @@
       <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
+	or in the startup file of the user's shell:
 	(<filename>~/.profile</filename>,
-	<filename>~/.bashrc</filename>,
+	<filename>~/.bashrc</filename>, or
 	<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>
+	locale subsets such as <envar>LC_CTYPE</envar> or
+	<envar>LC_CTIME</envar>.  Refer to language-specific &os;
+	documentation for more information.</para>
 
-      <para>You should set the following two environment variables
-	in your configuration files:</para>
+      <para>Each user should set the following two environment
+	variables in their configuration files:</para>
 
       <itemizedlist>
 	<indexterm><primary>POSIX</primary></indexterm>
@@ -258,8 +267,9 @@
 	</listitem>
       </itemizedlist>
 
-      <para>This includes the user shell configuration, the specific
-	application configuration, and the X11 configuration.</para>
+      <para>These should be set in the user's shell configuration, the
+	specific application configuration, and the
+	<application>Xorg</application> configuration.</para>
 
       <sect3>
 	<title>Setting Locale Methods</title>
@@ -267,13 +277,13 @@
 	<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>
+	<para>This section describes the two methods for setting
+	  locale.  The first is recommended and assigns the
+	  environment variables in the <link
+	    linkend="login-class">login class</link>.  The second
+	  method adds 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>
@@ -281,19 +291,19 @@
 	  <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>
+	    assignments to each shell's startup file.  <link
+	      linkend="usr-setup">User Level Setup</link> can be
+	    performed by each user while <link
+	      linkend="adm-setup">Administrator Level Setup</link>
+	    requires superuser privileges.</para>
 
 	  <sect5 id="usr-setup">
 	    <title>User Level Setup</title>
 
-	    <para>Here is a minimal example of a
-	      <filename>.login_conf</filename> file in user's home
-	      directory which has both variables set for Latin-1
-	      encoding:</para>
+	    <para>This provides a minimal example of a
+	      <filename>.login_conf</filename> located in a user's
+	      home directory which has both variables set for the
+	      Latin-1 encoding:</para>
 
 	    <programlisting>me:\
 	:charset=ISO-8859-1:\
@@ -301,11 +311,11 @@
 
 	    <indexterm><primary>Traditional Chinese</primary>
 	      <secondary>BIG-5 encoding</secondary></indexterm>
-	    <para>Here is an example of a
+	    <para>Here is an example of a user's
 	      <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,
+	      for Traditional Chinese in BIG-5 encoding.  More
+	      variables are set because some applications do not
+	      correctly respect locale variables for Chinese,
 	      Japanese, and Korean.</para>
 
 	    <programlisting>#Users who do not wish to use monetary units or time formats
@@ -332,39 +342,35 @@ me:\
 
 	    <para>Verify that the user's login class in
 	      <filename>/etc/login.conf</filename> sets the correct
-	      language.  Make sure these settings
-	      appear in <filename>/etc/login.conf</filename>:</para>
+	      language:</para>
 
 	    <programlisting><replaceable>language_name</replaceable>|<replaceable>Account Type Description</replaceable>:\
 	:charset=<replaceable>MIME_charset</replaceable>:\
 	: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>The previous Latin-1 example would look like
+	      this:</para>
 
 	    <programlisting>german|German Users Accounts:\
 	:charset=ISO-8859-1:\
 	:lang=de_DE.ISO8859-1:\
 	:tc=default:</programlisting>
 
-	    <para>Before changing users Login Classes execute
-	      the following command:</para>
+	    <para>Whenever this file is edited, execute the following
+	      command to update the capability database:</para>
 
 	    <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>
-
 	    <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>
+	    <para>When using <command>vipw</command> to add new users,
+	      use <replaceable>language</replaceable> to set the
+	      language:</para>
 
 	    <programlisting>user:password:1111:11:<replaceable>language</replaceable>:0:0:User Name:/home/user:/bin/sh</programlisting>
 
@@ -375,32 +381,32 @@ me:\
 	      <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>When using <command>adduser</command> to add new
+	      users, configure the language as follows:</para>
 
 	    <itemizedlist>
 	      <listitem>
-		<para>Set <literal>defaultclass =
+		<para>If all new users use the same language, 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>
+		  <filename>/etc/adduser.conf</filename>.</para>
 	      </listitem>
 
 	      <listitem>
-		<para>An alternative variant is answering the
-		  specified language each time that
+		<para>Alternatively, input the specified language at
+		  this prompt:
 
 		  <screen><prompt>Enter login class: default []:</prompt></screen>
 
-		  appears from &man.adduser.8;.</para>
+		  when creating a new user using
+		  &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
-		  add:</para>
+		<para>Another alternative is to use the following
+		  when creating a user that uses a different language
+		  than the one set in
+		  <filename>/etc/adduser.conf</filename>:</para>
 
 		<screen>&prompt.root; <userinput>adduser -class <replaceable>language</replaceable></userinput></screen>
 	      </listitem>
@@ -411,7 +417,7 @@ me:\
 	    <indexterm>
 	      <primary><command>pw</command></primary>
 	    </indexterm>
-	    <para>If you use &man.pw.8; for adding new users, call
+	    <para>If &man.pw.8; is used to add new users, call
 	      it in this form:</para>
 
 	    <screen>&prompt.root; <userinput>pw useradd <replaceable>user_name</replaceable> -L <replaceable>language</replaceable></userinput></screen>
@@ -423,19 +429,18 @@ me:\
 
 	  <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>
+	      a different setup for each shell.  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
-	    <filename>/etc/profile</filename> and/or
+	  <para>To add the locale name and MIME character set, set
+	    the two environment variables shown below in the
+	    <filename>/etc/profile</filename> or
 	    <filename>/etc/csh.login</filename> shell startup files.
-	    We will use the German language as an example
-	    below:</para>
+	    This example sets the German language:</para>
 
 	  <para>In <filename>/etc/profile</filename>:</para>
 
@@ -447,25 +452,19 @@ me:\
 	  <programlisting><envar>setenv LANG de_DE.ISO8859-1</envar>
 <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>
-
-	  <para>For X11:</para>
-
-	  <para>In <filename>$HOME/.xinitrc</filename>:</para>
+	  <para>Alternatively, add the above settings to
+	    <filename>/usr/share/skel/dot.profile</filename> or
+	    <filename>/usr/share/skel/dot.login</filename>.</para>
+
+	  <para>To configure <application>Xorg</application>, add
+	    <emphasis>one</emphasis> of the following to
+	    <filename>~/.xinitrc</filename>, depending upon the
+	    shell:</para>
 
 	  <programlisting><envar>LANG=de_DE.ISO8859-1; export LANG</envar></programlisting>
 
-	  <para>Or:</para>
-
 	  <programlisting><envar>setenv LANG de_DE.ISO8859-1</envar></programlisting>
 
-	  <para>Depending on your shell (see above).</para>
-
 	</sect4>
       </sect3>
     </sect2>
@@ -481,73 +480,67 @@ 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> is taken from
+	<filename
+	  class="directory">/usr/share/syscons/fonts</filename>,
+	without the <filename>.fnt</filename> suffix.</para>
 
       <indexterm>
 	<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
+      <para>The keymap and screenmap for the single C chars character
+	set can be set using <command>sysinstall</command>.  Once
+	inside <application>sysinstall</application>, choose
 	<guimenuitem>Configure</guimenuitem>, then
-	<guimenuitem>Console</guimenuitem>.  Alternatively, you can
+	<guimenuitem>Console</guimenuitem>.  Alternatively,
 	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,
+      <para>The <replaceable>screenmap_name</replaceable> is taken
+	from <filename
+	  class="directory">/usr/share/syscons/scrnmaps</filename>,
 	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
+	font character matrix.  This will move letters out of the
+	pseudographics area if the screen font uses a bit 8
 	column.</para>
 
-      <para>If you have the <application>moused</application> daemon
-	enabled by setting the following
-	in your <filename>/etc/rc.conf</filename>:</para>
-
-<programlisting>moused_enable="YES"</programlisting>
-
-      <para>then examine the mouse cursor information in the next
-	paragraph.</para>
+      <para>If <application>moused</application> is enabled in
+	<filename>/etc/rc.conf</filename>, review the mouse cursor
+	information in the next paragraph.</para>
 
       <indexterm>
 	<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 the
+	language uses this range, move the cursor's range.  To enable
+	this 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 <replaceable>keymap_name</replaceable> in the above
+	example is taken from <filename
+	  class="directory">/usr/share/syscons/keymaps</filename>,
+	without the <filename>.kbd</filename> suffix.  When uncertain
+	as to which keymap to use, &man.kbdmap.1; can be used 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>Be sure to set the correct console terminal type in
+	<filename>/etc/ttys</filename> for all virtual terminal
+	entries.  Current pre-defined correspondences are:</para>
 
       <informaltable frame="none" pgwide="1">
 	<tgroup cols="2">
@@ -597,14 +590,14 @@ keychange="<replaceable>fkey_number sequ
 	</tgroup>
       </informaltable>
 
-      <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>
+      <para>For languages with wide or multibyte characters, use the
+	correct &os; port in <filename
+	  class="directory">/usr/ports/<replaceable>language</replaceable></filename>.
+	Some applications appear as serial terminals to the system.
+	Reserve enough terminals in <filename>/etc/ttys</filename>
+	for both <application>Xorg</application> and the pseudo-serial
+	console.  Here is a partial list of applications for using
+	other languages in the console:</para>
 
       <informaltable frame="none" pgwide="1">
 	<tgroup cols="2">
@@ -641,87 +634,88 @@ keychange="<replaceable>fkey_number sequ
     </sect2>
 
     <sect2>
-      <title>X11 Setup</title>
+      <title>Xorg Setup</title>
 
-      <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;
-	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>Although <application>Xorg</application> is not installed
+	with &os;, it can be installed from the Ports Collection.
+	Refer to <link linkend="x11"></link> for more information on
+	how to do this.  This section discusses how to localize
+	<application>Xorg</application> once it is installed.</para>
+
+      <para>Application specific <acronym>i18n</acronym> settings such
+	as fonts and menus can be tuned in
+	<filename>~/.Xresources</filename>.</para>
 
       <sect3>
 	<title>Displaying Fonts</title>
 
-	<indexterm><primary>X11 True Type font
+	<indexterm><primary>Xorg 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>
+	<para>After installing <filename
+	    role="package">x11-servers/xorg-server</filename>, install
+	  the language's &truetype; fonts.  Setting the correct locale
+	  should allow users to view their selected language in
+	  graphical application menus.</para>
       </sect3>
 
       <sect3>
 	<title>Inputting Non-English Characters</title>
 
-	<indexterm><primary>X11 Input Method
+	<indexterm><primary>X 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>
+
+	<para>The X Input Method (<acronym>XIM</acronym>) protocol
+	  is an input standard for <application>Xorg</application>
+	  clients.  All <application>Xorg</application> 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>
 
     <sect2>
       <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
+      <para>Some single C chars character sets are hardware coded
+	into printers.  Wide or multibyte character sets require
+	special setup using a utility such as
+	<application>apsfilter</application>.  Documents can be
+	converted 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
+      <para>The &os; fast filesystem (<acronym>FFS</acronym>) is 8-bit
+	clean, so it can be used with any single C chars character
+	set.  However, character set names are not stored in the
+	filesystem as it is raw 8-bit and does not understand encoding
+	order.  Officially, <acronym>FFS</acronym> does not support
+	any form of wide or multibyte character sets.  However, some
+	wide or multibyte character sets have independent patches for
+	enabling support on <acronym>FFS</acronym>.  Refer to the
 	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>&os;'s support for the &ms-dos; filesystem has the
+	configurable ability to convert between &ms-dos;, Unicode
+	character sets, and chosen &os; filesystem character sets.
+	Refer to &man.mount.msdosfs.8; for details.</para>
     </sect2>
   </sect1>
 
   <sect1 id="l10n-compiling">
-    <title>Compiling I18N Programs</title>
+    <title>Compiling <acronym>i18n</acronym> 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 applications in the &os; Ports Collection have been
+      ported with <acronym>i18n</acronym> support.  Some of these
+      include <literal>-i18n</literal> in the port name.  These
+      and many other programs have built in support for
+      <acronym>i18n</acronym> and need no special
+      consideration.</para>
 
     <indexterm>
       <primary><application>MySQL</application></primary>
@@ -729,13 +723,13 @@ keychange="<replaceable>fkey_number sequ
     <para>However, some applications such as
       <application>MySQL</application> need to have their
       <filename>Makefile</filename> configured with the specific
-      charset.  This is usually done in the
-      <filename>Makefile</filename> or done by passing a value to
+      charset.  This is usually done in the port's
+      <filename>Makefile</filename> or by passing a value to
       <application>configure</application> in the source.</para>
   </sect1>
 
   <sect1 id="lang-setup">
-    <title>Localizing FreeBSD to Specific Languages</title>
+    <title>Localizing &os; to Specific Languages</title>
 
     <sect2 id="ru-localize">
       <sect2info>
@@ -754,22 +748,20 @@ keychange="<replaceable>fkey_number sequ
 	<secondary>Russian</secondary>
       </indexterm>
 
-      <para>For more information about KOI8-R encoding, see the
+      <para>For more information about KOI8-R encoding, refer to
 	<ulink url="http://koi8.pp.ru/">KOI8-R References
 	  (Russian Net Character Set)</ulink>.</para>
 
       <sect3>
 	<title>Locale Setup</title>
 
-	<para>Put the following lines into your
-	  <filename>~/.login_conf</filename> file:</para>
+	<para>To set this locale, put the following lines into each
+	  user's <filename>~/.login_conf</filename>:</para>
 
 	<programlisting>me:My Account:\
 	: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>
       </sect3>
 
       <sect3>
@@ -777,33 +769,24 @@ keychange="<replaceable>fkey_number sequ
 
 	<itemizedlist>
 	  <listitem>
-	    <para>Add the following line
-	      to your <filename>/etc/rc.conf</filename> file:</para>
-
-	    <programlisting>mousechar_start=3</programlisting>
-	  </listitem>
-
-	  <listitem>
-	    <para>Also, use following settings in
+	    <para>Add the following lines to
 	      <filename>/etc/rc.conf</filename>:</para>
 
 	    <programlisting>keymap="ru.koi8-r"
 scrnmap="koi8-r2cp866"
 font8x16="cp866b-8x16"
 font8x14="cp866-8x14"
-font8x8="cp866-8x8"</programlisting>
+font8x8="cp866-8x8"
+mousechar_start=3</programlisting>
 
 	  </listitem>
 
 	  <listitem>
-	    <para>For each <literal>ttyv*</literal> entry in
+	    <para>For each <literal>ttyv</literal> entry in
 	      <filename>/etc/ttys</filename>, use
 	      <literal>cons25r</literal> as the terminal type.</para>
 	  </listitem>
 	</itemizedlist>
-
-	<para>See earlier in this chapter for examples of setting up
-	  the <link linkend="setting-console">console</link>.</para>
       </sect3>
 
       <sect3>
@@ -812,94 +795,89 @@ font8x8="cp866-8x8"</programlisting>
 	<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.  &os; installs a default
+	  filter 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:\
 	:sh:of=/usr/libexec/lpr/ru/koi2alt:\
 	:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:</programlisting>
 
-	<para>See &man.printcap.5; for a detailed description.</para>
+	<para>Refer to &man.printcap.5; for a more detailed
+	  description.</para>
       </sect3>
 
       <sect3>
-	<title>&ms-dos; FS and Russian Filenames</title>
+	<title>&ms-dos; and Russian Filenames</title>
 
 	<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>
+	<programlisting>/dev/ad0s2      /dos/c  msdos   rw,-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
-	  <filename>/usr/libdata/msdosfs</filename>.  For more
-	  information, see the &man.mount.msdosfs.8; manual
-	  page.</para>
+	<para><option>-L</option> selects the locale name.  Refer to
+	  &man.mount.msdosfs.8; for more details.</para>
       </sect3>
 
       <sect3>
-	<title>X11 Setup</title>
+	<title><application>Xorg</application> Setup</title>
 
 	<orderedlist>
 	  <listitem>
-	    <para>Do <link linkend="setting-locale">non-X locale
-		setup</link> first as described.</para>
+	    <para>First, configure the <link
+		linkend="setting-locale">non-X locale
+		setup</link>.</para>
 	  </listitem>
 
 	  <listitem>
-	    <para>If you use <application>&xorg;</application>,
-	      install <filename
+	    <para>When using <application>&xorg;</application>,
+	      install the <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
+	      <filename>/etc/X11/xorg.conf</filename>.  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>
+	      <para>Search the Ports Collection 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
-	      <filename>xorg.conf</filename> file:</para>
+	      to the <literal>"Keyboard"</literal> section of
+	      <filename>/etc/xorg.conf</filename>:</para>
 
 	    <programlisting>Option "XkbLayout"   "us,ru"
 Option "XkbOptions"  "grp:toggle"</programlisting>
 
-	    <para>Also make sure that <literal>XkbDisable</literal> is
-	      turned off (commented out) there.</para>
+	    <para>Make sure that <literal>XkbDisable</literal> is
+	      commented out in that file.</para>
 
-	    <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
+	    <para>For <literal>grp:toggle</literal> use <keycap>Right
+		Alt</keycap>, for
+	      <literal>grp:ctrl_shift_toggle</literal> use <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
+	      For <literal>grp:caps_toggle</literal> use
+	      <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>
+	      in LAT mode only using <keycombo
+		action="simul"><keycap>Shift</keycap><keycap>CapsLock</keycap></keycombo>.
+	      <literal>grp:caps_toggle</literal>
 	      does not work in <application>&xorg;</application> for
-	      unknown reason.</para>
+	      some 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>
+	    <para>If the keyboard has <quote>&windows;</quote> keys,
+	      and some non-alphabetical keys are mapped incorrectly,
+	      add the following line to
+	      <filename>/etc/xorg.conf</filename>:</para>
 
 	<programlisting>Option "XkbVariant" ",winkeys"</programlisting>
 
@@ -910,13 +888,14 @@ Option "XkbOptions"  "grp:toggle"</progr
 	  </listitem>
 	</orderedlist>
 	<note>
-	  <para>Minimally localized applications
-	    should call a <function>XtSetLanguageProc (NULL, NULL,
-	      NULL);</function> function early in the program.</para>
+	  <para>Minimally localized applications should call a

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-doc-all mailing list