all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: allan gottlieb <gottlieb@nyu.edu>
To: help-gnu-emacs@gnu.org
Subject: Re: query: remapping a mouse press
Date: Sun, 26 Aug 2018 18:13:15 -0400	[thread overview]
Message-ID: <87va7wu684.fsf@nyu.edu> (raw)
In-Reply-To: <87lg8szu3c.fsf@himinbjorg.adminart.net> (hw's message of "Sun, 26 Aug 2018 23:38:47 +0200")

On Sun, Aug 26 2018, hw wrote:

> allan gottlieb <gottlieb@nyu.edu> writes:
>
>> On Sun, Aug 26 2018, hw wrote:
>>
>>> allan gottlieb <gottlieb@nyu.edu> writes:
>>>
>>>> I am having trouble enabling mouse-wheel-tilt-scroll
>> [...]
>>> You can use xinput to configure which physical button on a mouse
>>> (or trackball,
>>> in this example) is being mapped to which logical button like so:
>> [...]
>>
>> Thank you.
>>
>> I believe that this use of xinput I accomplish with xmodmap.
>
> How did you do that?  I prefer xmodmap because it's way less
> complicated, but there seem to be things that can not be done with it,
> and mapping mouse buttons seemed to be one of them.

I used xev to find our which "logic buttons" is generated by each of the
mouse's "physical buttons".  Then I used xmodmap to change the logical
buttons (this is easy with xmodmap), but probable that was not necessary.

>> My question is "downstream" of that.  Assuming I have configured the
>> mouse (in my case via xmodmap) and when I push a certain physical button
>> it generates a pair of x events
>>
>> ButtonPress event, serial 36, synthetic NO, window 0x4200001,
>>     root 0x13b, subw 0x0, time 28609618, (45,96), root:(464,877),
>>     state 0x10, button 13, same_screen YES
>>
>> ButtonRelease event, serial 36, synthetic NO, window 0x4200001,
>>     root 0x13b, subw 0x0, time 28609820, (54,94), root:(473,875),
>>     state 0x10, button 13, same_screen YES
>>
>> How do I tell emacs to do something (say end-of-buffer) when button 13
>> is pressed?
>
> Does Emacs receive the event?  You can test with (describe-key).  I
> could probably use something like this:
>
> (global-set-key (kbd "<down-mouse-1>") 'end-of-buffer)

Bingo!  (It worked better with just mouse-1 not down-mouse-1)

> That might work if Emacs gets <down-mouse-13>.  If it doesn't know that
> many buttons and you're not running out of button numbers, perhaps you
> can re-map the buttons with xinput so they have lower button mumbers
> Emacs can understand.

That remapping is what I use xmodmap for (see above).  But it is
necessary emacs is delighted with

   (global-set-key (kbd "<mouse-8>") 'beginning-of-buffer)

Now I have to decide what to do with all the logitech physical buttons!

Thanks again,
allan



  reply	other threads:[~2018-08-26 22:13 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-23 20:58 query: remapping a mouse press allan gottlieb
2018-08-23 23:08 ` Tak Kunihiro
     [not found]   ` <87h8jkzaw2.fsf@nyu.edu>
2018-08-25  5:15     ` Tak Kunihiro
2018-08-25 15:38       ` allan gottlieb
2018-08-26 18:10 ` hw
2018-08-26 21:07   ` allan gottlieb
2018-08-26 21:38     ` hw
2018-08-26 22:13       ` allan gottlieb [this message]
2018-08-27 15:35         ` hw
2018-08-27 21:13           ` allan gottlieb

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87va7wu684.fsf@nyu.edu \
    --to=gottlieb@nyu.edu \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.