!! ~/.Xmodmap 
!!
!! Please note: This file uses keycodes to assign keys.
!! The only problem is that keycodes depend on the architecture.
!! To get keycodes of (your) keys use the program xev.
!! The system Xmodmap is /usr/X11R6/lib/X11/Xmodmap, take a look at it.

!! To try the layout in this file, simply do xmodmap <file>.
!! To load the layout in this file at X startup, simply store it as
!! ~/.Xmodmap (named .Xmodmap in your home directory)
keycode   8 =
keycode   9 = Escape
keycode  10 = 1 exclam onesuperior exclamdown
keycode  11 = 2 quotedbl twosuperior oneeighth
keycode  12 = 3 section threesuperior sterling
keycode  13 = 4 dollar bar
keycode  14 = 5 percent bar
keycode  15 = 6 ampersand brokenbar
keycode  16 = 7 slash braceleft seveneighths
keycode  17 = 8 parenleft bracketleft trademark
keycode  18 = 9 parenright bracketright plusminus
keycode  19 = 0 equal braceright degree
keycode  20 = plus asterisk asciitilde
keycode  21 = less greater grave
keycode  22 = BackSpace
keycode  23 = Tab ISO_Left_Tab
keycode  24 = udiaeresis Udiaeresis at Greek_OMEGA
keycode  25 = comma semicolon
keycode  26 = period colon
keycode  27 = p P
keycode  28 = y Y
keycode  29 = f F
keycode  30 = g G
keycode  31 = c C copyright
keycode  32 = t T trademark
keycode  33 = z Z
keycode  34 = question ssharp
keycode  35 = slash backslash acute
keycode  36 = Return
keycode  37 = Control_L
keycode  38 = a A adiaeresis Adiaeresis
keycode  39 = o O
keycode  40 = e E EuroSign
keycode  41 = i I
keycode  42 = u U
keycode  43 = h H hstroke Hstroke
keycode  44 = d D
keycode  45 = r R paragraph registered
keycode  46 = n N
keycode  47 = s S
keycode  48 = l L
keycode  49 = asciicircum degree notsign
keycode  50 = Shift_L
keycode  51 = minus underscore
keycode  52 = odiaeresis Odiaeresis
keycode  53 = q Q at
keycode  54 = j J
keycode  55 = k K
keycode  56 = x X
keycode  57 = b B
keycode  58 = m M mu masculine
keycode  59 = w W
keycode  60 = v V
keycode  61 = numbersign apostrophe
keycode  62 = Shift_R
keycode  63 = KP_Multiply
keycode  64 = Alt_L Meta_L
!keycode  64 = Mode_switch Meta_L Multi_key
keycode  65 = space
keycode  66 = Control_L
keycode  67 = F1
keycode  68 = F2
keycode  69 = F3
keycode  70 = F4
keycode  71 = F5
keycode  72 = F6
keycode  73 = F7
keycode  74 = F8
keycode  75 = F9
keycode  76 = F10
keycode  77 = Num_Lock Pointer_EnableKeys
keycode  78 = Scroll_Lock
keycode  79 = KP_Home KP_7
keycode  80 = KP_Up KP_8
keycode  81 = KP_Prior KP_9
keycode  82 = KP_Subtract
keycode  83 = KP_Left KP_4
keycode  84 = KP_Begin KP_5
keycode  85 = KP_Right KP_6
keycode  86 = KP_Add
keycode  87 = KP_End KP_1
keycode  88 = KP_Down KP_2
keycode  89 = KP_Next KP_3
keycode  90 = KP_Insert KP_0
keycode  91 = KP_Delete KP_Decimal
keycode  92 = Print Sys_Req
keycode  93 =
keycode  94 = 
keycode  95 = F11
keycode  96 = F12
keycode  97 = Home
keycode  98 = Up
keycode  99 = Prior
keycode 100 = Left
keycode 101 =
keycode 102 = Right
keycode 103 = End
keycode 104 = Down
keycode 105 = Next
keycode 106 = Insert
keycode 107 = Delete
keycode 108 = KP_Enter
keycode 109 = Control_R
keycode 110 = Pause Break
keycode 111 = Print Execute
keycode 112 = KP_Divide
keycode 113 = Mode_switch Multi_key
keycode 114 = Pause Break
keycode 115 = Super_L
keycode 116 = Super_R Multi_key
keycode 117 = Menu
keycode 118 =
keycode 119 =
keycode 120 =
keycode 121 =
keycode 122 =
keycode 123 =
keycode 124 =
keycode 125 =
keycode 126 =
keycode 127 =
keycode 128 =
keycode 129 =
keycode 130 =
keycode 131 =
keycode 132 =
keycode 133 =
keycode 134 =

!make caps lock an additional left control
!remove Lock      = Caps_Lock
!remove Control   = Control_L
!keysym Caps_Lock = Control_L
!keysym Control_L = Caps_Lock
!add    Lock      = Caps_Lock
add    Control   = Control_L

!! Second example: Make left Alt key to left Meta key
!! Note that afterwards no key is assigned anymore to the symbol Alt_L.
!clear  Mod1
!keysym Alt_L = Meta_L
!add    Mod1  = Meta_L

!! Third example: Change right Control key to Compose key.
!! To do Compose Character, press this key and afterwards two
!! characters (e.g. `a' and `^' to get â).
!remove  Control  = Control_R
!keysym Control_R = Multi_key
!add     Control  = Control_R

!! Fourth example: Make Menu key on WIN95 keyboard doing Compose
!keysym Menu = Multi_key
!keysym minus = plus asterisk asciitilde
!keysym equal = less greater grave
!keysym q = udiaeresis Udiaeresis at
!keysym w = comma semicolon
!keysym e = period colon
!keysym r = p P
!keysym t = y Y
!keysym y = f F
!keysym u = g G
!keysym i = c C copyright
!keysym o = t T trademark
!keysym p = z Z
!keysym bracketleft = question ssharp 
!keysym plus = slash backslash acute
!keysym a = a A adiaeresis Adiaeresis
!keysym s = o O odiaeresis Odiaeresis
!keysym d = e E EuroSign
!keysym f = i I
!keysym g = u U
!!keysym h = h H
!keysym j = d D
!keysym k = r R registered
!keysym l = n N
!keysym semicolon = s S
!keysym apostrophe = l L minus
!keysym numbersign = minus underscore
!keysym less = adiaeresis Adiaeresis
!keysym z = odiaeresis Odiaeresis
!keysym x = q Q at
!keysym c = j J
!keysym v = k K
!keysym b = x X
!keysym n = b B
!!keysym m = m M
!keysym comma = w W
!keysym period = v V
!keysym minus = numbersign apostrophe underscore
