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.
89 lines
3.6 KiB
89 lines
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.
|
|
|
|
If you're running the console with the same resolution as
|
|
your X display (which you can, thanks to the frame buffer
|
|
console), you should get a pixel identical display then,
|
|
despite the fact that you're still running an X terminal.
|
|
|
|
|
|
* 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) and 2) make 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.
|
|
|
|
- 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.
|
|
[TODO: to control codec via menu settings is work in progress, meaning not available yet.]
|
|
- set the Linux keyboard to get the F1-F5 function keys right.
|
|
|
|
In general it is NOT advisable to ever modify the above
|
|
indicated settings unless you know what you're doing.
|
|
|
|
Note that 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 in
|
|
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.
|
|
|
|
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).
|
|
|
|
Some application will also assume that the default background
|
|
is black, thereby producing random black background ranges.
|
|
|
|
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.
|