|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
<HTML>
|
|
Packit Service |
50ad14 |
<HEAD>
|
|
Packit Service |
50ad14 |
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
|
|
Packit Service |
50ad14 |
<TITLE>The Linux keyboard and console HOWTO: The console character sets</TITLE>
|
|
Packit Service |
50ad14 |
<LINK HREF="kbd.FAQ-7.html" REL=next>
|
|
Packit Service |
50ad14 |
<LINK HREF="kbd.FAQ-5.html" REL=previous>
|
|
Packit Service |
50ad14 |
<LINK HREF="kbd.FAQ.html#toc6" REL=contents>
|
|
Packit Service |
50ad14 |
</HEAD>
|
|
Packit Service |
50ad14 |
<BODY>
|
|
Packit Service |
50ad14 |
Next
|
|
Packit Service |
50ad14 |
Previous
|
|
Packit Service |
50ad14 |
Contents
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
console character sets
|
|
Packit Service |
50ad14 |
-->
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
character sets, console
|
|
Packit Service |
50ad14 |
-->
|
|
Packit Service |
50ad14 |
The kernel first tries to figure out what symbol is meant by any given
|
|
Packit Service |
50ad14 |
user byte, and next where this symbol is located in the current font.
|
|
Packit Service |
50ad14 |
The kernel knows about 5 translations of bytes into console-screen symbols.
|
|
Packit Service |
50ad14 |
In Unicode (UTF-8) mode, the UTF-8 code is just converted directly into
|
|
Packit Service |
50ad14 |
Unicode. The assumption is that almost all symbols one needs are present
|
|
Packit Service |
50ad14 |
in Unicode, and for the cases where this does not hold the codes
|
|
Packit Service |
50ad14 |
0xf000-0xf1ff are reserved for direct font access.
|
|
Packit Service |
50ad14 |
When not in Unicode mode, one of four translation tables is used.
|
|
Packit Service |
50ad14 |
The four tables are: a) Latin1 -> Unicode, b) VT100 graphics -> Unicode,
|
|
Packit Service |
50ad14 |
c) PC -> Unicode, d) user-defined.
|
|
Packit Service |
50ad14 |
There are two character sets, called G0 and G1, and one of them
|
|
Packit Service |
50ad14 |
is the current character set. (Initially G0.)
|
|
Packit Service |
50ad14 |
Typing Ctrl-N causes G1 to become current, Ctrl-O causes G0 to become current.
|
|
Packit Service |
50ad14 |
These variables G0 and G1 point at a translation table, and can be changed
|
|
Packit Service |
50ad14 |
by the user. Initially they point at tables a) and b), respectively.
|
|
Packit Service |
50ad14 |
The sequences ESC ( B and ESC ( 0 and ESC ( U and ESC ( K cause G0 to point
|
|
Packit Service |
50ad14 |
at translation table a), b), c) and d), respectively.
|
|
Packit Service |
50ad14 |
The sequences ESC ) B and ESC ) 0 and ESC ) U and ESC ) K cause G1 to point
|
|
Packit Service |
50ad14 |
at translation table a), b), c) and d), respectively.
|
|
Packit Service |
50ad14 |
The sequence ESC c causes a terminal reset, which is what you want if the
|
|
Packit Service |
50ad14 |
screen is all garbled. The oft-advised echo ^V^O will only
|
|
Packit Service |
50ad14 |
make G0 current, but there is no guarantee that G0 points at table a).
|
|
Packit Service |
50ad14 |
In some distributions there is a program reset(1) that just does
|
|
Packit Service |
50ad14 |
echo ^[c .
|
|
Packit Service |
50ad14 |
If your termcap entry for the console is correct (and has an entry
|
|
Packit Service |
50ad14 |
:rs=\Ec: ), then also setterm -reset will work.
|
|
Packit Service |
50ad14 |
The user-defined mapping table can be set using mapscrn(8).
|
|
Packit Service |
50ad14 |
The result of the mapping is that if a symbol c is printed, the symbol
|
|
Packit Service |
50ad14 |
s = map[c] is sent to the video memory. The bitmap that corresponds to
|
|
Packit Service |
50ad14 |
s is found in the character ROM, and can be changed using setfont(8).
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
|
|
Packit Service |
50ad14 |
Next
|
|
Packit Service |
50ad14 |
Previous
|
|
Packit Service |
50ad14 |
Contents
|
|
Packit Service |
50ad14 |
</BODY>
|
|
Packit Service |
50ad14 |
</HTML>
|