PCKBD(4) Kernel Interfaces Manual PCKBD(4)
NAME
pckbdPC keyboard driver for wscons
SYNOPSIS
pckbc* at isa?
pckbd* at pckbc?
wskbd* at pckbd? console ?
options PCKBD_LAYOUT=XXX
DESCRIPTION
This driver supports PC/AT keyboards within the wscons(4) console framework. It doesn't provide direct device driver entry points but makes its functions available via the internal wskbd(4) interface.
 
The pckbd driver supports a number of different key mappings which can be chosen from with the kernel option PCKBD_LAYOUT at compile time or with the utility wsconsctl(8) (variable: “encoding”) at runtime. Other mappings can be used if the whole keymap is replaced by means of wsconsctl(8). The builtin mappings are at this time:
option
wsconsctl
language
KB_US
us
English/US keyboard mapping (default)
KB_DE
de
German with “dead accents”
KB_FR
fr
French
KB_DK
dk
Danish with “dead accents”
KB_IT
it
Italian
KB_UK
uk
British
KB_JP
jp
Japanese
KB_SV
sv
Swedish with “dead accents”
KB_US|KB_DECLK
us.declk
English/US mapping for DEC
LK400-style keyboards with PC keyboard
interface (e.g., LK461)
KB_US|KB_DVORAK
us.dvorak
English/US keyboard with
“Dvorak” layout
KB_US|KB_COLEMAK
us.colemak
English/US keyboard with
“Colemak” layout
KB_NO
no
Norwegian with “dead accents”
KB_PT
pt
Portuguese
KB_ES
es
Spanish
KB_CZ
cz
Czech (QWERTY)
 
The KB_DE, KB_DK, KB_NO and KB_SV mappings can be used in the KB_NODEAD (“.nodead”) variant. This switches off the “dead accents”.
 
The KB_US, KB_JP and KB_US|KB_DVORAK mappings can be modified to swap the left CTRL and the CAPS LOCK keys by the KB_SWAPCTRLCAPS variant bit or the “.swapctrlcaps” suffix.
 
The KB_METAESC (“.metaesc”) option can be applied to any layout. If set, keys pressed together with the ALT modifier are prefixed by an ESC character. (Standard behaviour is to add 128 to the ASCII value.)
 
Because PC keyboard hardware doesn't contain a beeper, requests for “keyboard beeps” cannot be handled directly. On alpha and i386 a helper device attached to the pcppi(4) driver allows the use of the standard ISA speaker for this purpose. On acorn32, vidcaudio(4) performs this function.
EXAMPLES
To set a German keyboard layout without “dead accents” and sending an ESC character before the key symbol if the ALT key is pressed simultaneously, use wsconsctl -w encoding=de.nodead.metaesc. To set it at kernel build time, add
options PCKBD_LAYOUT="(KB_DE | KB_NODEAD | KB_METAESC)"
to the kernel configuration file.
SEE ALSO
BUGS
The list of builtin mappings doesn't follow any logic. It grew as people submitted what they needed.