web-dev-qa-db-ja.com

マウスボタンへの戻る/進むのバインド

左、右、左ホイール、ホイール、右ホイールの5つのボタンがある基本的なロジクールマウスがあります。

以前は、ブラウザまたはナビゲーターで前後にホイールを使用していました。現在、これは機能しません。私は多くの解決策を見つけました。このプログラムをインストールするように言っている人たちは、うまくいかないようです。

13
Brent Roose
  1. パッケージxautomationをインストールします。コマンドxteが必要です

    Sudo apt-get install xautomation
    
  2. パッケージx11-utilsをインストールします。コマンドxevが必要です

    Sudo apt-get install x11-utils
    
  3. 2つのマウスボタンのコードを確認します。

    • ターミナルでコマンドxevを開始します。

      xev
      
    • 新しいウィンドウでマウスを移動します

    • 左ホイールおよび右ホイールを押します

    私の場合、出力button 6およびbutton 7に注意してください。

    ButtonRelease event, serial 36, synthetic NO, window 0x2e00001,
        root 0x233, subw 0x0, time 9222464, (94,21), root:(1774,85),
        state 0x10, button 6, same_screen YES
    
    ButtonPress event, serial 36, synthetic NO, window 0x2e00001,
        root 0x233, subw 0x0, time 9223854, (94,21), root:(1774,85),
        state 0x10, button 7, same_screen YES
    
  4. xbindkeys設定を編集します。例:

    nano ~/.xbindkeysrc
    

    以下の行を追加します

    "xte 'keydown Alt_L' 'keydown Left' 'keyup Left' 'keyup Alt_L'"
         b:6
    
    "xte 'keydown Alt_L' 'keydown Right' 'keyup Right' 'keyup Alt_L'"
         b:7
    

    b:6b:7xev出力の番号に置き換えます

    • man xteから

      key k
            Press and release key k
      
      keydown  k
            Press key k down
      
      keyup k
            Release key k
      
  5. すべてのkbindkeysプロセスを強制終了します

    killall xbindkeys
    
  6. 設定でxbindkeysを再起動します。例:

    xbindkeys -f ~/.xbindkeysrc
    
16
A.B.

マルチマウスボタンの手順はこちらxorg.confの情報はこちら があります。

基本的に、xinputをいじります。 (または、より多くのオプションのために動かします。)

まず、ターミナルを開きます。入力デバイスをリストします。

# show all input devices
xinput list

次のようなものが得られます。

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Microsoft Natural® Ergonomic Keyboard 4000        id=11   [slave  pointer  (2)]
⎜   ↳ Evoluent VerticalMouse 4                  id=12   [slave  pointer  (2)]

Evoluent VerticalMouseがあります。識別子番号が12であることがわかります: "id = 12"。

マウスを次の方法でテストできます。

# show all input from device with identifier number 12
xinput test 12

マウスを動かすかクリックすると、どのボタンを押したかを示す出力が端末に表示されます。ヒット Ctrl-c テストを終了します。

戻る/進むボタンで出力が得られない場合は、set-button-mapを使用してボタンマップをデフォルトにリセットしてみてください。 xinput listによって出力されたデバイス名を使用していることに注意してください。

xinput set-button-map "Evoluent VerticalMouse 4" 1 2 3 4 5 6 7 8 9 10 11 12 13 14

IDを使用してxinput testを実行してみてください。ここで正しいボタン応答を取得している場合は、必要なマッピングを見つけてxorg.confを更新するだけです。 (私はまだそれをする方法を知りません。)

3
idbrii

マウスの前後ボタンで上下にスクロールします

まず、必要なパッケージをインストールします。

$ Sudo apt install x11-utils xbindkeys xautomation

次に、x11-utilsが提供するxevを使用して、マウスの戻るボタンと進むボタンの正確なボタン番号を検出します。

$ xev |grep -A2 ButtonPress

有線の垂直アンカーマウス の場合、戻ると進むはそれぞれボタン8と9です。

ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1708382, (68,54), root:(939,498),
    state 0x10, button 8, same_screen YES
--
ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1711030, (69,48), root:(940,492),
    state 0x10, button 9, same_screen YES

wired vertical Anker mouse

次の内容の.xbindkeysrcという名前の隠しファイルをホームディレクトリに作成して続行します。

"xte 'keydown Down'"
b:8

"xte 'keyup Down'"
b:8 + Release

"xte 'keydown Up'"
b:9

"xte 'keyup Up'"
b:9 + Release

xteコマンドは、xautomationパッケージによって提供されます。

最後に、ログアウトし、これらの変更を有効にするためにデスクトップから再度ログインします。マウスの戻るボタンと進むボタンを押したままにすることで、ブラウザーやその他のプログラムで上下にスクロールできるようになりました。

0