Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Jan 1999 01:05:22 +0900
From:      Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
To:        current@FreeBSD.ORG
Cc:        yokota@zodiac.mech.utsunomiya-u.ac.jp
Subject:   keymaps
Message-ID:  <199901211605.BAA24511@zodiac.mech.utsunomiya-u.ac.jp>

next in thread | raw e-mail | index | archive | help
I recently looked at keymaps in /usr/share/syscons/keymaps and found
many minor errors.  In addition to that, there is so much
inconsistency among existing keymaps.  True that national keyboards have
different layout of regular keys (alphanumeric keys and symbol keys).
But, it is absurd that functions keys and special keys are handled in
so many different ways.

The syscons keymap can assign special functions to key strokes, such
as `suspend', `next virtual screen'.  However, some keymaps don't have
these special functions assigned to any key strokes.  The other
keymaps may have them but assign them differently.  There is no
standard here.

So, I would propose the following key assignment to be the standard
from now on.  I compiled this list based on existing keymaps and
recent input from a contributer (thanks, J M Alcaide!)

If this assignment is not desirable for some keymaps, such as Russian
and Dvorak maps which are rather unique, they may be made exceptions.

But, unless there is a good reason to make other exceptions, I will
modify the other national keymaps to adapt these key assignments.

Any comments?  I am open to suggestions.

Kazu


* 101/102/104 Enhanced Keyboard support

Key Code	Key Stroke		Function
-----------------------------------------------------------------------------
  1		Ctrl-Alt-Esc		Enter DDB (debug).
 57		Ctrl-Alt-Space		Suspend (susp).
 70		ScrollLock		Backscroll (slock).
 84		Alt-SysRq(PrintScreen)	- (nop)
 92		PrintScreen		Switch to the next vty (next).
104		Pause			Start screen saver (saver).
104		Alt-Pause		Suspend (susp).
105		Left Windows		fkey62
106		Right Windows		fkey63
107		Menu			fkey64
108		Ctrl-Break(Pause)	Enter DDB (debug).

The separate SysRq key doesn't exist on the enhanced keyboard.  It is
combined with the PrintScreen key.  The SysRq code is generated when
the Alt and the PrintScreen keys are pressed together.

The separate Break key doesn't exist on the enhanced keyboard.  It is
combined with the Pause key.  The Break code is generated when the
Ctrl and the Pause keys are pressed together.

The above assignments for the keycodes 1, 57, 70, 84 and 92 are
compatible with many, if not all, existing keymaps.

The assignments for 104 and 108 are new.

Many keymaps lacks entries for 105 through 107.


* 84 Keyboard support

Key Code	Key Stroke		Function
-----------------------------------------------------------------------------
  1		Ctrl-Alt-Esc		Enter DDB (debug).
 57		Ctrl-Alt-Space		Suspend (susp).
 70		ScrollLock		Backscroll (slock).
 84		SysRq			- (nop)
 92		Shift-PrintScreen(*)	Switch to the next vty (next).
104		Ctrl-Pause(NumLock)	Start screen saver (saver).
104		Ctrl-Alt-Pause(NumLock)	Suspend (susp).
108		Ctrl-Break(ScrollLock)	Enter DDB (debug).

The separate PrintScreen key doesn't exist on the 84 keyboard.  It is
combined with the numpad * key.  The PrintScreen code is generated
when the Shift and the numpad * keys are pressed together.

The separate Pause key doesn't exist on the 84 keyboard.  It is
combined with the NumLock key.  The Pause code is generated when the
Ctrl and the NumlLock keys are pressed together.

The separate Break key doesn't exist on the 84 keyboard.  It is
combined with the ScrollLock key.  The Break code is generated when
the Ctrl and the ScrollLock keys are pressed together.


* Proposed keymap

Combining the support for the 84 keyboard and the enhanced keyboard
described above, we will get the following keymap entries.
                                                alt
                        ctrl        alt   alt   ctrl
code  base  shift ctrl  shift alt   shift ctrl  shift
-----------------------------------------------------
  1   esc   esc   esc   esc   esc   esc   debug esc
 57   ' '   ' '   null  ' '   ' '   ' '   susp  ' '
 70   slock slock slock slock slock slock slock slock
 84   nop   nop   nop   nop   nop   nop   nop   nop
 92   next  next  nop   nop   nop   nop   nop   nop
104   saver nop   saver nop   susp  nop   susp  nop
105   nop   nop   nop   nop   nop   nop   nop   nop
106   nop   nop   nop   nop   nop   nop   nop   nop
107   nop   nop   nop   nop   nop   nop   nop   nop
108   nop   nop   debug nop   nop   nop   nop   nop

<<EOF>>



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901211605.BAA24511>