You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

3.6 KiB

Konsole and the Linux console


From a technical point of view, the Linux console differes
so substantially from any other terminal, that it impossible
to fully emulate it. This is because the Linux console lives
in kernel space and interfaces by kernel means, which cannot
be simulated by any user space application.

Contrary to this fact, konsole can be configured to appear
and function console like to a degree that makes it virtually
undistinguishable from the original. To do so, switch off the
menubar, scrollbar and frame, select the Linux colors and font
and set the full screen mode.

You should get a pixel identical display then, despite the
fact that you're still running an X terminal. In case you're
getting confused whether running console or konsole then,
note that the mouse cursor looks different. Use the right
mouse button menu to switch between fullscreen and regular
mode. You might find the ALT-Tab and CTRL-Tab keys helpful
then, too.


* What make the Linux console so unique?

The central differences between the Linux console and xterm
like emulations are:

1) The Linux console uses some special devices (vcs,vcsa)
and ioctls for some purposes, for which no correspondent
escape codes exist.
2) The Linux console uses gpm for the mouse.
3) The Linux console does not have an application screen.
Xterm like application switch from a primary screen to
the application screen when running in full screen mode,
keeping the shell session apart from the application.
Application like MC emulation the application screen on
the Linux console using the devices mentioned in 1).
4) The Linux console may use a character map different from
the one used in X11.
5) The TERM environment variable is "linux"
6) A few key codes (F1-F5) differ.
7) The Linux console occupies the whole display.

Clearly, 1) to 3) makes the Linux console so distinct that
an explicit Linux console simulation cannot exist.


* Running Konsole in true Linux console mode:

To some degree, one can run application with Linux console
emulation, too (BUT THERE SHOULD BE NO NEED TO DO SO):

- export TERM=linux to trigger ncurses aware applications
to expect a linux console.
- set the appropriate codec (this is cp437 on my installation)
to get graphical and international characters properly.
- set the Linux keyboard to get the F1-F5 function keys right.
[TODO: to control the the above two points via menu settings
is work in progress, meaning not available yet.]

Please note that these applications then may not react properly
on changing the window size anymore. Often they ignore it
completely or behave strange in other ways. I even saw one
application dying from the shock of noticing that the linux
console has simply changed it's size (Debian's dselect). Since
the Linux console can be resized, this behavior is to be
considered a bug of these applications, i cannot help it.

Mouse-aware application will most probably not recognize
mouse events (especially mc) since they might try to get
these events from gpm instead from the console.

MC will not be able to access the special console devices
then and cannot simulate a secondary screen, treating the
emulation as "dummy" with respect to it (^O).

The linux console can some funny quirks with special graphic
characters and i will not teach Konsole all of them. In rare
cases, they might display differently. Affected to my knowledge
are especially non-VT100 extensions taken from the AT&T 4410v1,
these are arrow symbols, a full block and a checker board. Most
other tricks that the linux console is able to do with character
sets are eventually not even used in a single instance, so you
will hardly be disturbed by it.