Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save voznik/92b3200e7a2cd9df48c09dc34dda5ff1 to your computer and use it in GitHub Desktop.
Save voznik/92b3200e7a2cd9df48c09dc34dda5ff1 to your computer and use it in GitHub Desktop.
Custom keymap for Logitech MX Master 2S mouse on Ubuntu

First, install Solaar to see the battery level on the taskbar

sudo apt-get install solaar

To remap the keys, install

sudo apt-get install xbindkeys xautomation

Then, launch xev to get the keyboard or mouse event to bind

xev

# grep button
xev | grep -i button

Create the configuration file for xbindkeys

nano ~/.xbindkeysrc

Here is an exemple of this file that map the Back and Forward buttons to BackSpace and Return respectively

# thumb wheel up => increase volume and unmute      
"amixer -D pulse set Master 4000+ unmute"
 b:6
                                        
# thumb wheel down => lower volume       
"amixer -D pulse set Master 4000-"       
 b:7
                                        
# backward button => previous song       
"xte 'key XF86AudioPrev'"                
 b:8
                                        
# forward button => next song            
"xte 'key XF86AudioNext'"                
 b:9
 
# Example backspace
#"xte 'keydown BackSpace'"
#b:8

#"xte 'keyup BackSpace'"
# b:8 + Release
 
# Alt tab to previous app
"xte 'keydown Alt_L' 'key Tab' 'keyup Alt_L'"
 b:9

To test your binding

xbindkeys -v

To start xbindkeys

xbindkeys

To find key code

xbindkeys --key

// or

xbindkeys --multikey

If you change the key map, you have to restart xbindkeys by following command

killall xbindkeys && xbindkeys
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment