Thought I'd add a hard won tip to the hive mind:
I rock an eee PC 901. I don't like the OEM keyboard setup, so I run the following script via the xfce "Session and Startup" page:
# This script sets up the SE corner of the keyboard to exchange the Shift and Up keys, and the Down and Right keys. # # # # Key Key Original Modified # xmodmap -e "remove control = Control_R" # Enables consistent autorepeat behavior for the old Fn-Shift_R key xmodmap -e "keycode 62 = Up" # Shift => Up xmodmap -e "keycode 105 = Prior" # Fn-Shift => PgUp xmodmap -e "keycode 111 = Shift_R" # Up => Shift xmodmap -e "keycode 112 = Shift_R" # PgUp => Fn-Shift (can also now be used as a Shift key) xmodmap -e "keycode 116 = Right" # Down => Right xmodmap -e "keycode 117 = End" # PgDn => End xmodmap -e "keycode 114 = Down" # Right => Down xmodmap -e "keycode 115 = Next" # End => PgDn xmodmap -e "add shift = Shift_R" # Make the new Shift key shift xmodmap -e "remove shift = Up" # Prevent the old Shift key (i.e. the new Up key) from shifting xset r 62 # Make the new Up key autorepeat xset r 105 # Make the new PgUp key autorepeat xset -r 111 # Prevent the new Shift key from autorepeating xset -r 112 # Prevent the new Fn-Shift key from autorepeating
I also like to use lots of keyboard shortcuts, set up via the xfce gui window. Among other things, I like to control volume using the "Up" and "Down" arrow keys. However, as you can see, the position of the those arrow keys is changed from the OEM keyboard. Somehow, my keyboard shortcuts for volume control were not working.
I devised a workaround thusly:
I have another script that runs on startup that includes a 8 second "sleep" command. After said sleep command, I added the following four lines:
xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Control>Up" -r xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Control>Down" -r xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Control>Up" -n -t string -s "amixer set Master 1+ unmute" xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Control>Down" -n -t string -s "amixer set Master 1- unmute"
Essentially, what this does is to reset the keyboard shortcuts that were acting up.
Xfce 4.6.2; Debian Squeeze