浏览代码

Update the description of UTF-8 support in Linux-2.6.18

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7818 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Matthew Burgess 19 年之前
父节点
当前提交
4945149988
共有 2 个文件被更改,包括 33 次插入33 次删除
  1. 5 0
      chapter01/changelog.xml
  2. 28 33
      chapter07/console.xml

+ 5 - 0
chapter01/changelog.xml

@@ -38,6 +38,11 @@
     <listitem>
       <para>2006-10-02</para>
       <itemizedlist>
+        <listitem>
+          <para>[matthew] - Updated the text regarding UTF-8 support in the
+          latest version of Linux.  Thanks to Alexander Patrakov for the patch.
+          </para>
+        </listitem>
         <listitem>
           <para>[matthew] - Remove Linux-Libc-Headers, replacing it with the
           &quot;make headers_install&quot; target now available in the upstream

+ 28 - 33
chapter07/console.xml

@@ -92,31 +92,12 @@
         <para>For many keyboard layouts, there is no stock Unicode keymap in
         the Kbd package. The <command>console</command> bootscript will
         convert an available keymap to UTF-8 on the fly if this variable is
-        set to the encoding of the available non-UTF-8 keymap. Note, however,
-        that dead keys (i.e., keys that don't produce a character by
-	themselves, but put an accent onto a character procuced by the next
-	key; there are no dead keys on the standard US keyboard) and composing
-	(i.e., pressing Ctrl+. A E in order to produce the &AElig; character)
-	will not work in UTF-8 mode without the special kernel patch.
-	This variable is useful only in UTF-8 mode.</para>
-      </listitem>
-    </varlistentry>
-
-    <varlistentry>
-      <term>BROKEN_COMPOSE</term>
-      <listitem>
-        <para>Set this to <quote>0</quote> if you are going to apply the kernel patch in
-        Chapter 8. Note that you also have to add the character set expected
-        by composition rules in your keymap to the FONT variable after the
-        <quote>-m</quote> switch. This variable is useful only in UTF-8 mode.</para>
+	set to the encoding of the available non-UTF-8 keymap.</para>
       </listitem>
     </varlistentry>
 
   </variablelist>
 
-  <para>Support for compiling the keymap directly into the kernel has been
-  removed because there were reports that it leads to incorrect results.</para>
-
   <para>Some examples:</para>
 
   <itemizedlist>
@@ -152,8 +133,8 @@ EOF</userinput></screen>
     </listitem>
 
     <listitem>
-      <para>The following is a Unicode-enabled example for Bulgarian, where a stock
-      UTF-8 keymap exists and defines no dead keys or composition rules:</para>
+      <para>The following is a Unicode-enabled example for Bulgarian, where a
+      stock UTF-8 keymap exists:</para>
 
 <screen role="nodump"><userinput>cat &gt; /etc/sysconfig/console &lt;&lt; "EOF"
 <literal># Begin /etc/sysconfig/console
@@ -186,23 +167,37 @@ EOF</userinput></screen>
     </listitem>
 
     <listitem>
-      <para>The following example illustrates keymap autoconversion from
-      ISO-8859-15 to UTF-8 and enabling dead keys in Unicode mode:</para>
+      <para>There is no pre-made UTF-8 Russian keyamp, therefore it has to be
+      produced by converting the existing KOI8-R keymap as illustrated
+      below:</para>
 
 <screen role="nodump"><userinput>cat &gt; /etc/sysconfig/console &lt;&lt; "EOF"
 <literal># Begin /etc/sysconfig/console
 
 UNICODE="1"
-KEYMAP="de-latin1"
-KEYMAP_CORRECTIONS="euro2"
-LEGACY_CHARSET="iso-8859-15"
-BROKEN_COMPOSE="0"
-FONT="LatArCyrHeb-16 -m 8859-15"
+KEYMAP="ru_ms"
+LEGACY_CHARSET="koi8-r"
+FONT="LatArCyrHeb-16"
 
 # End /etc/sysconfig/console</literal>
 EOF</userinput></screen>
     </listitem>
 
+    <listitem>
+      <para>Some keymaps have dead keys (i.e., keys that don't produce a
+      character by themselves, but put an accent on the character produced
+      by the next key) or define composition rules (such as: <quote>press
+      Ctrl+. A E to get &AElig;</quote> in the default keymap).
+      Linux-&linux-version; in UTF-8 keyboard mode assumes that accented
+      characters produced via dead keys or composing are in the Latin-1 range
+      of Unicode, and it is impossible to change this assumption. Thus,
+      accented characters needed for, e.g., the Czech language, can't be typed
+      on Linux console in UTF-8 mode (but files containing these characters can
+      be displayed correctly). The solution is either to avoid the use of
+      UTF-8, or to install the X window system that doesn't have this
+      limitation in its input handling.</para>
+    </listitem>
+
     <listitem>
       <para>For Chinese, Japanese, Korean and some other languages, the Linux
       console cannot be configured to display the needed characters. Users
@@ -216,10 +211,10 @@ EOF</userinput></screen>
   <!-- Added because folks keep posting their console file with X questions
   to blfs-support list -->
   <note>
-    <para>The <filename>/etc/sysconfig/console</filename> file only controls the
-    Linux text console localization. It has nothing to do with setting the proper
-    keyboard layout and terminal fonts in the X Window System, with ssh sessions
-    or with a serial console.</para>
+    <para>The <filename>/etc/sysconfig/console</filename> file only controls the    Linux text console localization. It has nothing to do with setting the
+    proper keyboard layout and terminal fonts in the X Window System, with ssh
+    sessions or with a serial console. In such situations, limitations mentioned
+    in the last two list items above do not apply.</para>
   </note>
 
 </sect1>