Assigning extra mouse buttons (eg. MX Ergo trackball)

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Assigning extra mouse buttons (eg. MX Ergo trackball)

jonetsu
Hello,

Got a 'new' Logitech MX Ergo trackball ... Is there a way to assign the
two extra buttons within emacs ?  When pressed emacs shows 'mouse-8' and
'mouse-9'.  Nothing much so far but I'd like to assign them to page up
and page down.

Another feature that could be useful is that the scroll wheel can also
be clicked sideways, one click when titled left, one click when tilted
right.  In this case however emacs does not show anything at all in its
status bar.

xev will show these as buttons 6 and 7:

ButtonPress event, serial 37, synthetic NO, window 0x5000001,
    root 0x115, subw 0x0, time 7662467, (89,97), root:(800,619),
    state 0x0, button 6, same_screen YES

ButtonRelease event, serial 37, synthetic NO, window 0x5000001,
    root 0x115, subw 0x0, time 7662467, (89,97), root:(800,619),
    state 0x0, button 6, same_screen YES

ButtonPress event, serial 37, synthetic NO, window 0x5000001,
    root 0x115, subw 0x0, time 7663797, (89,97), root:(800,619),
    state 0x0, button 7, same_screen YES

ButtonRelease event, serial 37, synthetic NO, window 0x5000001,
    root 0x115, subw 0x0, time 7663797, (89,97), root:(800,619),
    state 0x0, button 7, same_screen YES

Is it possible to bring buttons 6 and 7 to emacs ?



Reply | Threaded
Open this post in threaded view
|

Re: Assigning extra mouse buttons (eg. MX Ergo trackball)

Michael Heerdegen
jonetsu <[hidden email]> writes:

> Hello,
>
> Got a 'new' Logitech MX Ergo trackball ... Is there a way to assign the
> two extra buttons within emacs ?  When pressed emacs shows 'mouse-8' and
> 'mouse-9'.  Nothing much so far but I'd like to assign them to page up
> and page down.

In principle you can assign mouse events using the same functions as for
"normal" keys, e.g.

  (global-set-key [mouse-8] #'your-command-here)

If you want to scroll with mouse-8 and mouse-9 but with a different
scroll amount, you probably want to bind those to `mwheel-scroll' (like
the normal scroll wheel mouse keys) and setup things in a way that the
different scroll amount is used.  You would probably need to advice the
command `mwheel-scroll' though because the option
`mouse-wheel-scroll-amount' only looks for modifiers but not for the
base event.

> Another feature that could be useful is that the scroll wheel can also
> be clicked sideways, one click when titled left, one click when tilted
> right.  In this case however emacs does not show anything at all in its
> status bar.
>
> xev will show these as buttons 6 and 7:

> Is it possible to bring buttons 6 and 7 to emacs ?

I don't know.  Normally any event gets through to Emacs unless the
window manager or something else is already catching it.

Michael.