lfs/chapter08/kbd.xml
2024-01-18 20:53:23 +01:00

392 lines
13 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-system-kbd" role="wrap">
<?dbhtml filename="kbd.html"?>
<sect1info condition="script">
<productname>kbd</productname>
<productnumber>&kbd-version;</productnumber>
<address>&kbd-url;</address>
</sect1info>
<title>Kbd-&kbd-version;</title>
<indexterm zone="ch-system-kbd">
<primary sortas="a-Kbd">Kbd</primary>
</indexterm>
<sect2 role="package">
<title/>
<para>The Kbd package contains key-table files, console fonts, and keyboard
utilities.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
<seg>&kbd-fin-sbu;</seg>
<seg>&kbd-fin-du;</seg>
</seglistitem>
</segmentedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Kbd</title>
<para>The behavior of the backspace and delete keys is not consistent
across the keymaps in the Kbd package. The following patch fixes this
issue for i386 keymaps:</para>
<screen><userinput remap="pre">patch -Np1 -i ../&kbd-backspace-patch;</userinput></screen>
<para>After patching, the backspace key generates the character with code 127,
and the delete key generates a well-known escape sequence.</para>
<para>Remove the redundant <command>resizecons</command> program (it requires
the defunct svgalib to provide the video mode files - for normal use
<command>setfont</command> sizes the console appropriately) together with its
manpage.</para>
<screen><userinput remap="pre">sed -i '/RESIZECONS_PROGS=/s/yes/no/' configure
sed -i 's/resizecons.8 //' docs/man/man8/Makefile.in</userinput></screen>
<para>Prepare Kbd for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/usr --disable-vlock</userinput></screen>
<variablelist>
<title>The meaning of the configure option:</title>
<varlistentry>
<term><parameter>--disable-vlock</parameter></term>
<listitem>
<para>This option prevents the vlock utility from being built because it
requires the PAM library, which isn't available in the chroot
environment.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Compile the package:</para>
<screen><userinput remap="make">make</userinput></screen>
<para>To test the results, issue:</para>
<screen><userinput remap="test">make check</userinput></screen>
<para>Install the package:</para>
<screen><userinput remap="install">make install</userinput></screen>
<note>
<para>For some languages (e.g., Belarusian) the Kbd package doesn't
provide a useful keymap where the stock <quote>by</quote> keymap assumes
the ISO-8859-5 encoding, and the CP1251 keymap is normally used. Users of
such languages have to download working keymaps separately.</para>
</note>
<para>If desired, install the documentation:</para>
<screen><userinput remap="install">cp -R -v docs/doc -T /usr/share/doc/kbd-&kbd-version;</userinput></screen>
</sect2>
<sect2 id="contents-kbd" role="content">
<title>Contents of Kbd</title>
<segmentedlist>
<segtitle>Installed programs</segtitle>
<segtitle>Installed directories</segtitle>
<seglistitem>
<seg>chvt, deallocvt, dumpkeys, fgconsole, getkeycodes, kbdinfo,
kbd_mode, kbdrate, loadkeys, loadunimap,
mapscrn, openvt, psfaddtable (link to psfxtable), psfgettable (link to
psfxtable), psfstriptable (link to psfxtable), psfxtable, <!--resizecons,-->
setfont, setkeycodes, setleds, setmetamode, setvtrgb,
showconsolefont, showkey, unicode_start, and unicode_stop</seg>
<seg>/usr/share/consolefonts, /usr/share/consoletrans, /usr/share/keymaps,
/usr/share/doc/kbd-&kbd-version;, and /usr/share/unimaps</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="chvt">
<term><command>chvt</command></term>
<listitem>
<para>Changes the foreground virtual terminal</para>
<indexterm zone="ch-system-kbd chvt">
<primary sortas="b-chvt">chvt</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="deallocvt">
<term><command>deallocvt</command></term>
<listitem>
<para>Deallocates unused virtual terminals</para>
<indexterm zone="ch-system-kbd deallocvt">
<primary sortas="b-deallocvt">deallocvt</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="dumpkeys">
<term><command>dumpkeys</command></term>
<listitem>
<para>Dumps the keyboard translation tables</para>
<indexterm zone="ch-system-kbd dumpkeys">
<primary sortas="b-dumpkeys">dumpkeys</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="fgconsole">
<term><command>fgconsole</command></term>
<listitem>
<para>Prints the number of the active virtual terminal</para>
<indexterm zone="ch-system-kbd fgconsole">
<primary sortas="b-fgconsole">fgconsole</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="getkeycodes">
<term><command>getkeycodes</command></term>
<listitem>
<para>Prints the kernel scancode-to-keycode mapping table</para>
<indexterm zone="ch-system-kbd getkeycodes">
<primary sortas="b-getkeycodes">getkeycodes</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kbdinfo">
<term><command>kbdinfo</command></term>
<listitem>
<para>Obtains information about the status of a console</para>
<indexterm zone="ch-system-kbd kbdinfo">
<primary sortas="b-kbdinfo">kbdinfo</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kbd_mode">
<term><command>kbd_mode</command></term>
<listitem>
<para>Reports or sets the keyboard mode</para>
<indexterm zone="ch-system-kbd kbd_mode">
<primary sortas="b-kbd_mode">kbd_mode</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kbdrate">
<term><command>kbdrate</command></term>
<listitem>
<para>Sets the keyboard repeat and delay rates</para>
<indexterm zone="ch-system-kbd kbdrate">
<primary sortas="b-kbdrate">kbdrate</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="loadkeys">
<term><command>loadkeys</command></term>
<listitem>
<para>Loads the keyboard translation tables</para>
<indexterm zone="ch-system-kbd loadkeys">
<primary sortas="b-loadkeys">loadkeys</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="loadunimap">
<term><command>loadunimap</command></term>
<listitem>
<para>Loads the kernel unicode-to-font mapping table</para>
<indexterm zone="ch-system-kbd loadunimap">
<primary sortas="b-loadunimap">loadunimap</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="mapscrn">
<term><command>mapscrn</command></term>
<listitem>
<para>An obsolete program that used to load a user-defined output
character mapping table into the console driver; this is now done
by <command>setfont</command></para>
<indexterm zone="ch-system-kbd mapscrn">
<primary sortas="b-mapscrn">mapscrn</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="openvt">
<term><command>openvt</command></term>
<listitem>
<para>Starts a program on a new virtual terminal (VT)</para>
<indexterm zone="ch-system-kbd openvt">
<primary sortas="b-openvt">openvt</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="psfaddtable">
<term><command>psfaddtable</command></term>
<listitem>
<para>Adds a Unicode character table to a console font</para>
<indexterm zone="ch-system-kbd psfaddtable">
<primary sortas="b-psfaddtable">psfaddtable</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="psfgettable">
<term><command>psfgettable</command></term>
<listitem>
<para>Extracts the embedded Unicode character table from a console
font</para>
<indexterm zone="ch-system-kbd psfgettable">
<primary sortas="b-psfgettable">psfgettable</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="psfstriptable">
<term><command>psfstriptable</command></term>
<listitem>
<para>Removes the embedded Unicode character table from a console
font</para>
<indexterm zone="ch-system-kbd psfstriptable">
<primary sortas="b-psfstriptable">psfstriptable</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="psfxtable">
<term><command>psfxtable</command></term>
<listitem>
<para>Handles Unicode character tables for console fonts</para>
<indexterm zone="ch-system-kbd psfxtable">
<primary sortas="b-psfxtable">psfxtable</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="setfont">
<term><command>setfont</command></term>
<listitem>
<para>Changes the Enhanced Graphic Adapter (EGA) and Video Graphics
Array (VGA) fonts on the console</para>
<indexterm zone="ch-system-kbd setfont">
<primary sortas="b-setfont">setfont</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="setkeycodes">
<term><command>setkeycodes</command></term>
<listitem>
<para>Loads kernel scancode-to-keycode mapping table entries; this is
useful if there are unusual keys on the keyboard</para>
<indexterm zone="ch-system-kbd setkeycodes">
<primary sortas="b-setkeycodes">setkeycodes</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="setleds">
<term><command>setleds</command></term>
<listitem>
<para>Sets the keyboard flags and Light Emitting Diodes (LEDs)</para>
<indexterm zone="ch-system-kbd setleds">
<primary sortas="b-setleds">setleds</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="setmetamode">
<term><command>setmetamode</command></term>
<listitem>
<para>Defines the keyboard meta-key handling</para>
<indexterm zone="ch-system-kbd setmetamode">
<primary sortas="b-setmetamode">setmetamode</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="setvtrgb">
<term><command>setvtrgb</command></term>
<listitem>
<para>Sets the console color map in all virtual terminals</para>
<indexterm zone="ch-system-kbd setvtrgb">
<primary sortas="b-setvtrgb">setvtrgb</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="showconsolefont">
<term><command>showconsolefont</command></term>
<listitem>
<para>Shows the current EGA/VGA console screen font</para>
<indexterm zone="ch-system-kbd showconsolefont">
<primary sortas="b-showconsolefont">showconsolefont</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="showkey">
<term><command>showkey</command></term>
<listitem>
<para>Reports the scancodes, keycodes, and ASCII codes of the keys
pressed on the keyboard</para>
<indexterm zone="ch-system-kbd showkey">
<primary sortas="b-showkey">showkey</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="unicode_start">
<term><command>unicode_start</command></term>
<listitem>
<para>Puts the keyboard and console in UNICODE mode [Don't use this
program unless your keymap file is in the ISO-8859-1 encoding. For
other encodings, this utility produces incorrect results.]</para>
<indexterm zone="ch-system-kbd unicode_start">
<primary sortas="b-unicode_start">unicode_start</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="unicode_stop">
<term><command>unicode_stop</command></term>
<listitem>
<para>Reverts keyboard and console from UNICODE mode</para>
<indexterm zone="ch-system-kbd unicode_stop">
<primary sortas="b-unicode_stop">unicode_stop</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>