#
# This is the configuration file for the twiddler keyboard as used under
# the gpm mouse server
#
# Empty lines and comments are ignored, other lines must follow either
# of the following conventions:
# chord = value (e.g. "L000 = a" )
# mod chord = value (e.g. "Shift L000 = a" )
#
# The "mod" is one of "Shift" "Numeric" "Function" "Control" "Ctrl" "Alt",
# or any abbreviation of those (case independent)
# The special case "Ctrl+Shift" (or "Shift+Ctrl" ) is supported, but note
# that it can't be abbreviated like C+S or anything like that.
#
# The "chord" value is one of the usual specifications, uppercase only
#
# Value can be a single byte (also as escape sequence), a string with
# double quotes (with escape sequences) or a special name (one of those
# appearing as "string" in dumpkeys, and Up Down Left Right).
# In addition, the strings "Console" and "Exec" are supported. See the
# sample case below.
#
# Escape sequences are \n \r \e \t \a \b, octal ("\243" ) or hex ("\xff" )
# numbers. Any other char is returned unchanged, like \" or \\.
######## Lowercase
R000 = a
0R00 = b
00R0 = c
000R = d
M000 = e
0M00 = f
00M0 = g
000M = h
LR00 = i
L0R0 = j
L00R = k
LM00 = l
L0M0 = m
L00M = n
LL00 = o
L0L0 = p
L00L = q
MR00 = r
M0R0 = s
M00R = t
MM00 = u
M0M0 = v
M00M = w
ML00 = x
M0L0 = y
M00L = z
############## Uppercase
Shift R000 = A
Shift 0R00 = B
Shift 00R0 = C
Shift 000R = D
Shift M000 = E
Shift 0M00 = F
Shift 00M0 = G
Shift 000M = H
Shift LR00 = I
Shift L0R0 = J
Shift L00R = K
Shift LM00 = L
Shift L0M0 = M
Shift L00M = N
Shift LL00 = O
Shift L0L0 = P
Shift L00L = Q
Shift MR00 = R
Shift M0R0 = S
Shift M00R = T
Shift MM00 = U
Shift M0M0 = V
Shift M00M = W
Shift ML00 = X
Shift M0L0 = Y
Shift M00L = Z
######## Control
Ctrl R000 = \x01
Ctrl 0R00 = \x02
Ctrl 00R0 = \x03
Ctrl 000R = \x04
Ctrl M000 = \x05
Ctrl 0M00 = \x06
Ctrl 00M0 = \x07
Ctrl 000M = \x08
Ctrl LR00 = \x09
Ctrl L0R0 = \x0a
Ctrl L00R = \x0b
Ctrl LM00 = \x0c
Ctrl L0M0 = \x0d
Ctrl L00M = \x0e
Ctrl LL00 = \x0f
Ctrl L0L0 = \x10
Ctrl L00L = \x11
Ctrl MR00 = \x12
Ctrl M0R0 = \x13
Ctrl M00R = \x14
Ctrl MM00 = \x15
Ctrl M0M0 = \x16
Ctrl M00M = \x17
Ctrl ML00 = \x18
Ctrl M0L0 = \x19
Ctrl M00L = \x1a
######## Meta (Alt)
Meta R000 = "\ea"
Meta 0R00 = "\eb"
Meta 00R0 = "\ec"
Meta 000R = "\ed"
Meta M000 = "\ee"
Meta 0M00 = "\ef"
Meta 00M0 = "\eg"
Meta 000M = "\eh"
Meta LR00 = "\ei"
Meta L0R0 = "\ej"
Meta L00R = "\ek"
Meta LM00 = "\el"
Meta L0M0 = "\em"
Meta L00M = "\en"
Meta LL00 = "\eo"
Meta L0L0 = "\ep"
Meta L00L = "\eq"
Meta MR00 = "\er"
Meta M0R0 = "\es"
Meta M00R = "\et"
Meta MM00 = "\eu"
Meta M0M0 = "\ev"
Meta M00M = "\ew"
Meta ML00 = "\ex"
Meta M0L0 = "\ey"
Meta M00L = "\ez"
##### 1b is escape, etc...
RRR0 = \x1b
############### Numbers and symbols (ascii 0x20 to 0x40)
L000 = " "
R0L0 = !
R0M0 = "
0M0L = #
0LR0 = $
00RM = %
0L0L = &
RM00 = '
0LL0 = (
0RL0 = )
00LM = *
00ML = +
R0R0 = ,
R00L = -
RR00 = .
MMM0 = /
Num 0L00 = 0
Num R000 = 1
Num 0R00 = 2
Num 00R0 = 3
Num 000R = 4
Num M000 = 5
Num 0M00 = 6
Num 00M0 = 7
Num 000M = 8
Num L000 = 9
00RL = :
R00R = ;
Num M00L = <
00MR = =
Num R0R0 = >
RL00 = ?
00LR = @
############## Other symbols (ascii 0x5b to 0x60 and 0x7b to 0x7f)
Num RM00 = [
LLL0 = \
Num R00M = ]
Num LM00 = ^
0R0L = _
Num R0L0 = `
Num R00L = {
Num LLR0 = |
Num LL0R = }
Num LLM0 = ~
0L00 = \x7f
00L0 = \x08
############## In addition to ascii, here are the special keys
# return, tab
000L = \x0a
MM0M = \x09
# arrows
0MR0 = Up
0ML0 = Down
0MM0 = Left
0M0M = Right
# pageup/down
00RR = Prior
00LL = Next
############## Functions
Fun R000 = F1
Fun 0R00 = F2
Fun 00R0 = F3
Fun 000R = F4
Fun M000 = F5
Fun 0M00 = F6
Fun 00M0 = F7
Fun 000M = F8
Fun L000 = F9
Fun 0L00 = F10
Fun 00L0 = F11
Fun 000L = F12
############## Console switching
Ctrl+Shift R000 = Console 1
Ctrl+Shift 0R00 = Console 2
Ctrl+Shift 00R0 = Console 3
Ctrl+Shift 000R = Console 4
Ctrl+Shift M000 = Console 5
Ctrl+Shift 0M00 = Console 6
Ctrl+Shift 00M0 = Console 7
Ctrl+Shift 000M = Console 8
Ctrl+Shift L000 = Console 9
Ctrl+Shift 0L00 = Console 10
Ctrl+Shift 00L0 = Console 11
Ctrl+Shift 000L = Console 12
############## Executing commands (be careful: this is root)
# This is just an example: t for "time" and s for "space"
# The empty line is used to align text on console border
F M00R = Exec echo > /dev/tty0; date > /dev/tty0
F M0R0 = Exec echo > /dev/tty0; df > /dev/tty0
# you can put shutdown, reboot or anything here.
############## Macros
0RR0 = "the"
0RM0 = "of"
0R0R = "to"
0M0R = "ed"
R00M = "and"
0R0M = "in"
0L0M = "ion"
00MM = "ing"
############## Add accented letters here below....
|