// ZQuake/FuhQuake keymap file
// vi: set ic noai ts=2 sts=2 sw=2 et:
//--------------------------------------------------------------------------
// Original Dvorak-keymap was made by Tonik for ZQuake;
// I (Massa) just ported it to the changed syntax and 
// Rowdy added entries for shifted versions of the non-alphabetic keys
// last change: 2003/04/29
//--------------------------------------------------------------------------

keymap_name "Dvorak"

//--------------------------------------------------------------------------
//Syntax:
//  keycode [ext] <scancode> <key> [<shiftkey>] [<altgrkey>]
//    ext       means, that the extended flag is set for this (raw) scancode.
//    scancode  is a number between 1 and 127.
//    key       is either
//              a character, which will be used when pressed the key or
//              a special name (like ESCAPE, TAB, ...)
//              a number > 31 and < 128, prefixed with a #;
//                this represents the decimal value in the character table.
//    shiftkey  this is the key which will be used when pressed together
//                with one of the SHIFT-keys (SHIFT, LSHIFT, RSHIFT)
//    altgrkey  this is the key which will be displayed when pressed together
//                with the ALTGR-key
//Note: the characters a-z used as unshifted key will automatically converted
//      to uppercase as shifted key when no other one is set.
//The following special names for keys are known (some are only present on
//  and 102-105 keys international keyboard):
// ALT           = Alt-Key (use this if no separate mappings for left and
//                 right key is needed).
// LALT          = left Alt-Key (use this if separate mappings for left and
//                 right key is needed).
// RALT          = right Alt-Key (use this if separate mappings for left and
//                 right key and NO third level of keymappings is needed).
// ALTGR         = right Alt-Key; this IS the switch-key for the third level
//                 of keymappings (if the third level mapping is needed, one
//                   scancode MUST be set to this key).
// ALTCHAR       = this is another name for ALTGR.
// BACKSPACE
// CAPSLOCK
// CTRL          = Control-Key (use this if no separate mappings for left
//                 and right key is needed).
// LCTRL         = Left Control-Key (use this if separate mappings for left
//                 and right key is needed).
// RCTRL         = Right Control-Key (use this, if separate mappings for left
//                 and right key is needed).
// DEL						= Delete.
// DOWNARROW     = Cursor down.
// END           = End.
// ENTER.
// ESCAPE.
// F1 ... F12    = Function keys F1 - F12.
// HOME          = Home.
// INS           = Insert.
// LEFTARROW     = Cursor left.
// KP_0          = '0' at keypad (same as KP_INS).
// KP_1          = '1' at keypad (same as KP_END).
// KP_2          = '2' at keypad (same as KP_DOWNARROW).
// KP_3          = '3' at keypad (same as KP_PGDN).
// KP_4          = '4' at keypad (same as KP_LEFTARROW).
// KP_5          = '5' at keypad.
// KP_6          = '6' at keypad (same as KP_RIGHTARROW).
// KP_7          = '7' at keypad (same as KP_HOME).
// KP_8          = '8' at keypad (same as KP_UPARROW).
// KP_9          = '9' at keypad (same as KP_PGUP).
// KP_DEL        = Del at keypad.
// DEL						= Delete.
// KP_DIVIDE     = '/' at keypad (same as KP_SLASH).
// KP_DOWNARROW  = Cursor down at keypad (same as KP_2).
// KP_END        = End at keypad (same as KP_1).
// KP_ENTER      = Enter at keypad.
// KP_HOME       = Keypad-Home (same as KP_7).
// KP_INS        = Insert at keypad (same as KP_0).
// KP_LEFTARROW  = Cursor left at keypad (same as KP_4).
// KP_MINUS      = '-' at keypad.
// KP_MULTIPLY   = '*' at keypad (same as KP_STAR).
// KP_NUMLCK     = Keypad-Numlock (same as NUMLOCK).
// KP_NUMLOCK    = Keypad-Numlock (same as NUMLOCK).
// KP_PGDN       = Page down at keypad (same as KP_3).
// KP_PGUP       = Page-Up at keypad (same as KP_9).
// KP_PLUS       = '+' at keypad.
// KP_RIGHTARROW = Cursor right at keypad (same as KP_6).
// KP_SLASH      = '/' at keypad (same as KP_DIVIDE).
// KP_STAR       = '*' at keypad (same as KP_MULTIPLY).
// KP_UPARROW    = Cursor up at keypad (same as KP_8).
// MENU          = Windows-Menu key.
// NUMLOCK.
// PAUSE.
// PGDN          = Page down.
// PGUP          = Page up.
// PRINTSCR.
// RIGHTARROW    = Cursor right.
// SCRLCK        = Scroll-Lock (same as SCROLLOCK).
// SCROLLOCK     = Scroll-Lock (same as SCRLCK).
// SHIFT         = Shift-Key (this is the switch-key for the second level
//                 of keymappings; use this if NO separate mappings for
//                 left and right key is needed).
// LSHIFT        = Left Shift-Key (use this, if separate mappings for left
//                 and right key is needed).
// RSHIFT        = Right Shift-Key (use this, if separate mappings for left
//                 and right key is needed).
// SPACE.
// TAB.
// UPARROW       = Cursor up.
// WIN           = Windows-Key (use this, if no separate mappings for left
//                 and right key is needed).
// LWIN          = Left Windows-Key (use this, if separate mappings for left
//                 and right key is needed).
// RWIN          = Right Windows-Key (use this, if separate mappings for left
//                 and right key is needed).
//--------------------------------------------------------------------------
//ATTENTION: to use the second level of mappings, at least one scancode needs
//             to be set to one of the Shift-Keys (SHIFT, LSHIFT or RSHIFT).
//           to use the third level of mappings, at least one scancode needs
//             to be set to the ALTGR-key (or ALTCHAR, which is an alias).
//--------------------------------------------------------------------------

keycode      001  ESCAPE
keycode      002  1 !
keycode      003  2 @
keycode      004  3 #
keycode      005  4 $
keycode      006  5 %
keycode      007  6 ^
keycode      008  7 &
keycode      009  8 *
keycode      010  9 (
keycode      011  0 )
keycode      012  [ {
keycode      013  ] }
keycode      014  BACKSPACE
keycode      015  TAB
keycode      016  ' #34
keycode      017  , <
keycode      018  . >
keycode      019  p
keycode      020  y
keycode      021  f
keycode      022  g
keycode      023  c
keycode      024  r
keycode      025  l
keycode      026  / ?
keycode      027  = +
keycode      028  ENTER
keycode  ext 028  KP_ENTER
keycode      029  LCTRL                                    // use CTRL if no different mapping for left/right is needed
keycode  ext 029  RCTRL                                    // use CTRL if no different mapping for left/right is needed
keycode      030  a
keycode      031  o
keycode      032  e
keycode      033  u
keycode      034  i
keycode      035  d
keycode      036  h
keycode      037  t
keycode      038  n
keycode      039  s
keycode      040  - _
keycode      041  ` ~
keycode      042  LSHIFT                                   // use SHIFT if no different mapping for left/right is needed
keycode      043  \ |
keycode      044  ; :
keycode      045  q
keycode      046  j
keycode      047  k
keycode      048  x
keycode      049  b
keycode      050  m
keycode      051  w
keycode      052  v
keycode      053  z
keycode  ext 053  KP_SLASH
keycode      054  RSHIFT                                   // use SHIFT if no different mapping for left/right is needed
keycode      055  KP_STAR
keycode      056  LALT                                     // use ALT if no different mapping for left/right is needed
keycode  ext 056  RALT                                     // use ALT if no different mapping for left/right is needed
keycode      057  SPACE
keycode      058  CAPSLOCK
keycode      059  F1
keycode      060  F2
keycode      061  F3
keycode      062  F4
keycode      063  F5
keycode      064  F6
keycode      065  F7
keycode      066  F8
keycode      067  F9
keycode      068  F10
keycode      069  PAUSE
keycode  ext 069  NUMLOCK
keycode      070  SCRLCK
keycode      071  KP_HOME
keycode  ext 071  HOME
keycode      072  KP_UPARROW
keycode  ext 072  UPARROW
keycode      073  KP_PGUP
keycode  ext 073  PGUP
keycode      074  KP_MINUS
keycode      075  KP_LEFTARROW
keycode  ext 075  LEFTARROW
keycode      076  KP_5
keycode      077  KP_RIGHTARROW
keycode  ext 077  RIGHTARROW
keycode      078  KP_PLUS
keycode      079  KP_END
keycode  ext 079  END
keycode      080  KP_DOWNARROW
keycode  ext 080  DOWNARROW
keycode      081  KP_PGDN
keycode  ext 081  PGDN
keycode      082  KP_INS
keycode  ext 082  INS
keycode      083  KP_DEL
keycode  ext 083  DEL
keycode      087  F11
keycode      088  F12
keycode  ext 091  LWIN                                     // use WIN if no different mapping for left/right key is needed
keycode  ext 092  RWIN                                     // use WIN if no different mapping for left/right key is needed
keycode  ext 093  MENU
// END OF KEYMAP FILE
