CrunchBang Logo

Today I decided to dust off the old CR-48 Chromebook I had lying around. I wasn't happy with the performance on it using Chrome OS, Windows 7, or Ubuntu but I thought I'd give it one more chance using a lightweight Linux distribution. I'm really impressed with CrunchBang Linux! Overall it's much more responsive and can handle many more tabs open in Chrome. I rarely go above 1GB of RAM and whole installation is only a few gigabytes.

Although, some annoyances I've found is the missing keys PgDn, PgUp, Home, End, and Delete on the keyboard as well as the display brightness and audio hotkeys. I didn't realize how much I use these until they were missing. I also was having trouble Right-Clicking and could use a Middle-Click button. Fear not! It's easy to get these buttons back using xmodmap to re-map the keyboard. First make sure you have xkbset and xbacklight installed, sudo apt-get install xkbset xbacklight (xmodmap should already be installed). Then, add this to your ~/.profile in your home directory:

# Enable xkbset for mouse buttons
xkbset m
xkbset exp =m

# Update key mappings
xmodmap -e "keysym Control_R = Mode_switch"
xmodmap -e "keysym Left = Left NoSymbol Home"
xmodmap -e "keysym Up = Up NoSymbol Prior"
xmodmap -e "keysym Right = Right NoSymbol End"
xmodmap -e "keysym Down = Down NoSymbol Next"
xmodmap -e "keysym BackSpace = BackSpace NoSymbol Delete"
xmodmap -e "keysym Alt_R = Pointer_Button3 NoSymbol Pointer_Button2"
xmodmap -e "keysym F6 = XF86MonBrightnessDown NoSymbol F6"
xmodmap -e "keysym F7 = XF86MonBrightnessUp NoSymbol F7"
xmodmap -e "keysym F8 = XF86AudioMute NoSymbol F8"
xmodmap -e "keysym F9 = XF86AudioLowerVolume NoSymbol F9"
xmodmap -e "keysym F10 = XF86AudioRaiseVolume NoSymbol F10"

You also need to update the Openbox keyboard bindings for the audio and brightness. Open rc.xml by going to Super+Space Bar -> Settings -> Openbox -> Edit rc.xml. Right after <keyboard> add:

<!-- Keybindings for brightness and audio -->
<keybind key="XF86MonBrightnessDown">
    <action name="Execute">
        <command>xbacklight -steps 1 -dec 20</command>
<keybind key="XF86MonBrightnessUp">
    <action name="Execute">
        <command>xbacklight -steps 1 -inc 20</command>
<keybind key="XF86AudioMute">
    <action name="Execute">
        <command>amixer sset Master,0 toggle</command>
<keybind key="XF86AudioLowerVolume">
    <action name="Execute">
        <command>amixer sset Master,0 5-</command>
<keybind key="XF86AudioRaiseVolume">
    <action name="Execute">
        <command>amixer sset Master,0 5+</command>

This turns your right Control key (Control_R) into a function key. The missing keys are added to the directional arrows, backspace, and right Alt (Alt_R) keys. Now:

  • PgUp = Control_R + Up
  • PgDn = Control_R + Down
  • Home = Control_R + Left
  • End = Control_R + Right
  • Delete = Control_R + BackSpace
  • Right-Click = Alt_R
  • Middle-Click = Control_R + Alt_R
  • Decrease/Increase Brightness = F6/F7
  • Mute/Decrease/Increase Audio = F8/F9/F10
  • F6-F10 = Control_R + F6-F10

Feel free to change these to match your preference. Run man xmodmap to find out the syntax and xev to look-up your key codes.


comments powered by Disqus