Contribution to the…
charset – Set an ACM for use in one of the G0/G1 charset slots.
charset [-v] G0|G1 [cp437|iso01|vt100|user|]
The linux console has 2 slots for charsets, labeled G0 and
G1. charset changes the slot in use by the current VT to
either G0 or G1, and fills the slot either with one of the
3 predefined ACMs (cp437, iso01, vt100) or with a user-
You can ask for the current user-defined ACM by specifying
user, or ask a new ACM to be loaded from a file into the
user slot, by specifying a filename.
You will note that, although each VT has its own slot set-
tings, there is only one user-defined ACM for all the VTs.
That is, whereas you can have tty1 using G0=cp437 and
G1=vt100, at the same time as tty2 using G0=iso01 and
G1=iso02 (user-defined), you cannot have at the same time
tty1 using iso02 and tty2 using iso03. This is a limita-
tion of the linux kernel.
Note that you can emulate such a setting using the fil-
term(1) utility, with your console in UTF8-mode, by
telling filterm to translate screen output on-the-fly to
You’ll find filterm(1) in the konwert(1) package, by
Marcin Kowalczyk, which is available from
-v be verbose. charset will then print what it does
as it does it.
charset cannot determine which of the 2 slots is in use at
a given time, so you have to tell him which one you want,
even if you don’t want to change to the other one. This
is a limitation of the console driver.
consolechars(8), unicode_start(1), filterm(1).