!! ~/.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 onequarter
keycode  14 = 5 percent bar onehalf
keycode  15 = 6 ampersand brokenbar threequarters
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 = ssharp question backslash questiondown
keycode  21 = apostrophe grave cedilla dead_ogonek
keycode  22 = BackSpace
keycode  23 = Tab ISO_Left_Tab
keycode  24 = q Q at Greek_OMEGA
keycode  25 = w W lstroke Lstroke
keycode  26 = e E EuroSign
keycode  27 = r R paragraph registered
keycode  28 = t T tslash Tslash
keycode  29 = z Z leftarrow yen
keycode  30 = u U downarrow uparrow
keycode  31 = i I rightarrow idotless
keycode  32 = o O oslash Ooblique
keycode  33 = p P thorn THORN
keycode  34 = udiaeresis Udiaeresis diaeresis dead_abovering
keycode  35 = plus asterisk asciitilde macron
keycode  36 = Return
keycode  37 = Control_L
keycode  38 = a A
keycode  39 = s S ssharp section
keycode  40 = d D eth ETH
keycode  41 = f F dstroke ordfeminine
keycode  42 = g G eng ENG
keycode  43 = h H hstroke Hstroke
keycode  44 = j J
keycode  45 = k K kra ampersand
keycode  46 = l L lstroke Lstroke
keycode  47 = odiaeresis Odiaeresis acute dead_doubleacute
keycode  48 = adiaeresis Adiaeresis asciicircum dead_caron
keycode  49 = asciicircum degree notsign
keycode  50 = Shift_L
keycode  51 = numbersign apostrophe grave dead_breve
keycode  52 = y Y guillemotleft less
keycode  53 = x X guillemotright greater
keycode  54 = c C cent copyright
keycode  55 = v V leftdoublequotemark grave
keycode  56 = b B rightdoublequotemark apostrophe
keycode  57 = n N
keycode  58 = m M mu masculine
keycode  59 = comma semicolon horizconnector multiply
keycode  60 = period colon periodcentered division
keycode  61 = minus underscore dead_belowdot dead_abovedot
keycode  62 = Shift_R
keycode  63 = KP_Multiply
!keycode  64 = Alt_L Meta_L
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 =
keycode  93 =
keycode  94 = less greater bar brokenbar
!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 113 = ISO_Level3_Shift
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 =

!keycode 236 = F17

!audio keys for acer tm800
!keycode 160 = F14
!keycode 174 = F15
!keycode 176 = F16

!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
!keysym Control_L = Return
!add    Lock      = Caps_Lock

!remove Lock      = Caps_Lock
!remove Control   = Control_L
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 ssharp = plus asterisk asciitilde
keysym apostrophe = less greater grave
keysym q = udiaeresis Udiaeresis at
keysym w = comma semicolon
keysym e = period colon
keysym r = p P KP_Add
keysym t = y Y
keysym z = f F
keysym u = g G
keysym i = c C copyright
keysym o = t T trademark
keysym p = z Z
keysym udiaeresis = question ssharp 
keysym plus = slash backslash acute
keysym a = a A aring Aring
keysym s = o O
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 odiaeresis = s S
keysym adiaeresis = l L
keysym numbersign = minus underscore
keysym less = adiaeresis Adiaeresis
keysym y = 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 KP_Subtract
keysym comma = w W
keysym period = v V
keysym minus = numbersign apostrophe bar brokenbar

clear Mod3
clear Mod4
clear Mod5
! make left windows and right windows (menu-) key additional modifiers
add Mod3 = Mode_switch
add Mod4 = Super_L
add Mod5 = Menu
