source: chapter06/kbd.xml@ cddcb23

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since cddcb23 was cddcb23, checked in by Randy McMurchy <randy@…>, 16 years ago

Added documentation installation commands to the Chapter 6 Kbd instructions

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@8635 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 13.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-system-kbd" role="wrap">
9 <?dbhtml filename="kbd.html"?>
10
11 <sect1info condition="script">
12 <productname>kbd</productname>
13 <productnumber>&kbd-version;</productnumber>
14 <address>&kbd-url;</address>
15 </sect1info>
16
17 <title>Kbd-&kbd-version;</title>
18
19 <indexterm zone="ch-system-kbd">
20 <primary sortas="a-Kbd">Kbd</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <para>The Kbd package contains key-table files and keyboard utilities.</para>
27
28 <segmentedlist>
29 <segtitle>&buildtime;</segtitle>
30 <segtitle>&diskspace;</segtitle>
31
32 <seglistitem>
33 <seg>&kbd-ch6-sbu;</seg>
34 <seg>&kbd-ch6-du;</seg>
35 </seglistitem>
36 </segmentedlist>
37
38 </sect2>
39
40 <sect2 role="installation">
41 <title>Installation of Kbd</title>
42
43 <para>The behaviour of the Backspace and Delete keys is not consistent
44 across the keymaps in the Kbd package. The following patch fixes this
45 issue for i386 keymaps:</para>
46
47<screen><userinput remap="pre">patch -Np1 -i ../&kbd-backspace-patch;</userinput></screen>
48
49 <para>After patching, the Backspace key generates the character with code 127,
50 and the Delete key generates a well-known escape sequence.</para>
51
52 <para>In this version of Kbd the instructions to build
53 <filename>getkeycodes</filename>, <filename>setkeycodes</filename> and
54 <filename>resizecons</filename> do not get passed over to the generated
55 <filename>Makefile</filename> as they should. So that these programs
56 are built and installed add two lines to the top of
57 <filename>src/Makefile.in</filename>:
58 </para>
59
60<screen><userinput remap="pre">sed -i -e '1i KEYCODES_PROGS = @KEYCODES_PROGS@' \
61 -e '1i RESIZECONS_PROGS = @RESIZECONS_PROGS@' src/Makefile.in</userinput></screen>
62
63 <para>This version of Kbd will also install man pages for optional programs
64 even if we don't use the <parameter>--enable-optional-progs</parameter>
65 option to build them. Fix this behavior:</para>
66
67<screen><userinput remap="pre">var=OPTIONAL_PROGS
68sed -i "s/ifdef $var/ifeq (\$($var),yes)/" man/Makefile.in
69unset var</userinput></screen>
70
71 <para>Prepare Kbd for compilation:</para>
72
73<screen><userinput remap="configure">./configure --prefix=/usr --datadir=/lib/kbd</userinput></screen>
74
75 <variablelist>
76 <title>The meaning of the configure options:</title>
77
78 <varlistentry>
79 <term><parameter>--datadir=/lib/kbd</parameter></term>
80 <listitem>
81 <para>This option puts keyboard layout data in a directory that will
82 always be on the root partition instead of the default <filename
83 class="directory">/usr/share/kbd</filename>.</para>
84 </listitem>
85 </varlistentry>
86
87 </variablelist>
88
89 <para>Compile the package:</para>
90
91<screen><userinput remap="make">make</userinput></screen>
92
93 <para>This package does not come with a test suite.</para>
94
95 <para>Install the package:</para>
96
97<screen><userinput remap="install">make install</userinput></screen>
98
99 <note>
100 <para>For some languages (e.g., Belarusian) the Kbd package doesn't
101 provide a useful keymap where the stock <quote>by</quote> keymap assumes
102 the ISO-8859-5 encoding, and the CP1251 keymap is normally used. Users of
103 such languages have to download working keymaps separately.</para>
104 </note>
105
106 <para>Some of the scripts in the LFS-Bootscripts package depend on
107 <command>kbd_mode</command>, <command>loadkeys</command>,
108 <command>openvt</command>, and
109 <command>setfont</command>. As <filename class="directory">/usr</filename>
110 may not be available during the early stages of booting, those binaries
111 need to be on the root partition:</para>
112
113<screen><userinput remap="install">mv -v /usr/bin/{kbd_mode,loadkeys,openvt,setfont} /bin</userinput></screen>
114
115 <para>If desired, install the documentation:</para>
116
117<screen><userinput remap="install">mkdir -v /usr/share/doc/kbd-&kbd-version;
118cp -R -v doc/* \
119 /usr/share/doc/kbd-&kbd-version;</userinput></screen>
120
121 </sect2>
122
123 <sect2 id="contents-kbd" role="content">
124 <title>Contents of Kbd</title>
125
126 <segmentedlist>
127 <segtitle>Installed programs</segtitle>
128
129 <seglistitem>
130 <seg>chvt, deallocvt, dumpkeys, fgconsole, getkeycodes, kbd_mode,
131 kbdrate, loadkeys, loadunimap,
132 mapscrn, openvt, psfaddtable (link to psfxtable), psfgettable (link to
133 psfxtable), psfstriptable (link to psfxtable), psfxtable, resizecons,
134 setfont, setkeycodes, setleds, setmetamode,
135 showconsolefont, showkey, unicode_start, and unicode_stop</seg>
136 </seglistitem>
137 </segmentedlist>
138
139 <variablelist>
140 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
141 <?dbfo list-presentation="list"?>
142 <?dbhtml list-presentation="table"?>
143
144 <varlistentry id="chvt">
145 <term><command>chvt</command></term>
146 <listitem>
147 <para>Changes the foreground virtual terminal</para>
148 <indexterm zone="ch-system-kbd chvt">
149 <primary sortas="b-chvt">chvt</primary>
150 </indexterm>
151 </listitem>
152 </varlistentry>
153
154 <varlistentry id="deallocvt">
155 <term><command>deallocvt</command></term>
156 <listitem>
157 <para>Deallocates unused virtual terminals</para>
158 <indexterm zone="ch-system-kbd deallocvt">
159 <primary sortas="b-deallocvt">deallocvt</primary>
160 </indexterm>
161 </listitem>
162 </varlistentry>
163
164 <varlistentry id="dumpkeys">
165 <term><command>dumpkeys</command></term>
166 <listitem>
167 <para>Dumps the keyboard translation tables</para>
168 <indexterm zone="ch-system-kbd dumpkeys">
169 <primary sortas="b-dumpkeys">dumpkeys</primary>
170 </indexterm>
171 </listitem>
172 </varlistentry>
173
174 <varlistentry id="fgconsole">
175 <term><command>fgconsole</command></term>
176 <listitem>
177 <para>Prints the number of the active virtual terminal</para>
178 <indexterm zone="ch-system-kbd fgconsole">
179 <primary sortas="b-fgconsole">fgconsole</primary>
180 </indexterm>
181 </listitem>
182 </varlistentry>
183
184 <varlistentry id="getkeycodes">
185 <term><command>getkeycodes</command></term>
186 <listitem>
187 <para>Prints the kernel scancode-to-keycode mapping table</para>
188 <indexterm zone="ch-system-kbd getkeycodes">
189 <primary sortas="b-getkeycodes">getkeycodes</primary>
190 </indexterm>
191 </listitem>
192 </varlistentry>
193
194 <varlistentry id="kbd_mode">
195 <term><command>kbd_mode</command></term>
196 <listitem>
197 <para>Reports or sets the keyboard mode</para>
198 <indexterm zone="ch-system-kbd kbd_mode">
199 <primary sortas="b-kbd_mode">kbd_mode</primary>
200 </indexterm>
201 </listitem>
202 </varlistentry>
203
204 <varlistentry id="kbdrate">
205 <term><command>kbdrate</command></term>
206 <listitem>
207 <para>Sets the keyboard repeat and delay rates</para>
208 <indexterm zone="ch-system-kbd kbdrate">
209 <primary sortas="b-kbdrate">kbdrate</primary>
210 </indexterm>
211 </listitem>
212 </varlistentry>
213
214 <varlistentry id="loadkeys">
215 <term><command>loadkeys</command></term>
216 <listitem>
217 <para>Loads the keyboard translation tables</para>
218 <indexterm zone="ch-system-kbd loadkeys">
219 <primary sortas="b-loadkeys">loadkeys</primary>
220 </indexterm>
221 </listitem>
222 </varlistentry>
223
224 <varlistentry id="loadunimap">
225 <term><command>loadunimap</command></term>
226 <listitem>
227 <para>Loads the kernel unicode-to-font mapping table</para>
228 <indexterm zone="ch-system-kbd loadunimap">
229 <primary sortas="b-loadunimap">loadunimap</primary>
230 </indexterm>
231 </listitem>
232 </varlistentry>
233
234 <varlistentry id="mapscrn">
235 <term><command>mapscrn</command></term>
236 <listitem>
237 <para>An obsolete program that used to load a user-defined output
238 character mapping table into the console driver; this is now done
239 by <command>setfont</command></para>
240 <indexterm zone="ch-system-kbd mapscrn">
241 <primary sortas="b-mapscrn">mapscrn</primary>
242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 <varlistentry id="openvt">
247 <term><command>openvt</command></term>
248 <listitem>
249 <para>Starts a program on a new virtual terminal (VT)</para>
250 <indexterm zone="ch-system-kbd openvt">
251 <primary sortas="b-openvt">openvt</primary>
252 </indexterm>
253 </listitem>
254 </varlistentry>
255
256 <varlistentry id="psfaddtable">
257 <term><command>psfaddtable</command></term>
258 <listitem>
259 <para>A link to <command>psfxtable</command></para>
260 <indexterm zone="ch-system-kbd psfaddtable">
261 <primary sortas="b-psfaddtable">psfaddtable</primary>
262 </indexterm>
263 </listitem>
264 </varlistentry>
265
266 <varlistentry id="psfgettable">
267 <term><command>psfgettable</command></term>
268 <listitem>
269 <para>A link to <command>psfxtable</command></para>
270 <indexterm zone="ch-system-kbd psfgettable">
271 <primary sortas="b-psfgettable">psfgettable</primary>
272 </indexterm>
273 </listitem>
274 </varlistentry>
275
276 <varlistentry id="psfstriptable">
277 <term><command>psfstriptable</command></term>
278 <listitem>
279 <para>A link to <command>psfxtable</command></para>
280 <indexterm zone="ch-system-kbd psfstriptable">
281 <primary sortas="b-psfstriptable">psfstriptable</primary>
282 </indexterm>
283 </listitem>
284 </varlistentry>
285
286 <varlistentry id="psfxtable">
287 <term><command>psfxtable</command></term>
288 <listitem>
289 <para>Handle Unicode character tables for console fonts</para>
290 <indexterm zone="ch-system-kbd psfxtable">
291 <primary sortas="b-psfxtable">psfxtable</primary>
292 </indexterm>
293 </listitem>
294 </varlistentry>
295
296 <varlistentry id="resizecons">
297 <term><command>resizecons</command></term>
298 <listitem>
299 <para>Changes the kernel idea of the console size</para>
300 <indexterm zone="ch-system-kbd resizecons">
301 <primary sortas="b-resizecons">resizecons</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="setfont">
307 <term><command>setfont</command></term>
308 <listitem>
309 <para>Changes the Enhanced Graphic Adapter (EGA) and Video Graphics
310 Array (VGA) fonts on the console</para>
311 <indexterm zone="ch-system-kbd setfont">
312 <primary sortas="b-setfont">setfont</primary>
313 </indexterm>
314 </listitem>
315 </varlistentry>
316
317 <varlistentry id="setkeycodes">
318 <term><command>setkeycodes</command></term>
319 <listitem>
320 <para>Loads kernel scancode-to-keycode mapping table entries; this is
321 useful if there are unusual keys on the keyboard</para>
322 <indexterm zone="ch-system-kbd setkeycodes">
323 <primary sortas="b-setkeycodes">setkeycodes</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="setleds">
329 <term><command>setleds</command></term>
330 <listitem>
331 <para>Sets the keyboard flags and Light Emitting Diodes (LEDs)</para>
332 <indexterm zone="ch-system-kbd setleds">
333 <primary sortas="b-setleds">setleds</primary>
334 </indexterm>
335 </listitem>
336 </varlistentry>
337
338 <varlistentry id="setmetamode">
339 <term><command>setmetamode</command></term>
340 <listitem>
341 <para>Defines the keyboard meta-key handling</para>
342 <indexterm zone="ch-system-kbd setmetamode">
343 <primary sortas="b-setmetamode">setmetamode</primary>
344 </indexterm>
345 </listitem>
346 </varlistentry>
347
348 <varlistentry id="showconsolefont">
349 <term><command>showconsolefont</command></term>
350 <listitem>
351 <para>Shows the current EGA/VGA console screen font</para>
352 <indexterm zone="ch-system-kbd showconsolefont">
353 <primary sortas="b-showconsolefont">showconsolefont</primary>
354 </indexterm>
355 </listitem>
356 </varlistentry>
357
358 <varlistentry id="showkey">
359 <term><command>showkey</command></term>
360 <listitem>
361 <para>Reports the scancodes, keycodes, and ASCII codes of the keys
362 pressed on the keyboard</para>
363 <indexterm zone="ch-system-kbd showkey">
364 <primary sortas="b-showkey">showkey</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 <varlistentry id="unicode_start">
370 <term><command>unicode_start</command></term>
371 <listitem>
372 <para>Puts the keyboard and console in UNICODE mode. Don't use this
373 program unless your keymap file is in the ISO-8859-1 encoding. For
374 other encodings, this utility produces incorrect results.</para>
375 <indexterm zone="ch-system-kbd unicode_start">
376 <primary sortas="b-unicode_start">unicode_start</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
381 <varlistentry id="unicode_stop">
382 <term><command>unicode_stop</command></term>
383 <listitem>
384 <para>Reverts keyboard and console from UNICODE mode</para>
385 <indexterm zone="ch-system-kbd unicode_stop">
386 <primary sortas="b-unicode_stop">unicode_stop</primary>
387 </indexterm>
388 </listitem>
389 </varlistentry>
390
391 </variablelist>
392
393 </sect2>
394
395</sect1>
Note: See TracBrowser for help on using the repository browser.