Windowsでは、中央のボタンをクリックすることに慣れており、上下に「高速スクロール」オプションを提供しています。 Linuxでこの動作を取得するにはどうすればよいですか?現在、センタークリック時に戻るボタンを代わりに使用しているようです。
CentOSでGnomeを使用しています。
承認された回答:
このWindowsの機能は、Unixの世界に実際に浸透したことはありません。 Unixの世界では、マウスの中ボタンの主な目的は、クリップボードのコンテンツ(より正確には、マウスで選択されたテキストで、自動コピーされます)を貼り付けることです。 WindowsでLinuxスタイルの中マウスボタンをサポートするFirefoxやChromeなどのクロスプラットフォームアプリケーションのカップル。ただし、それ以外のほとんどのアプリケーションは、この種のきめ細かいスクロールをサポートしていません。
それでも、システムレベルでかなり近づくことができます。マウスボタンを押すと、マウスの動きがホイールイベントに変換されるように設定することができます。これは以前と同じ機能ですが、アプリケーションはホイールイベントを受信するため、モーションが途切れる可能性があります。ホイールイベントは通常、1行または1列全体のスクロールとして解釈されます。
この構成で遊ぶには、xinputプログラムを使用します(そのためのGUIフロントエンドがあるかどうかはわかりません)。まず、次のコマンドを実行して、ポインティングデバイスの名前を確認します。
$ xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Generic USB Mouse id=8 [slave pointer (2)]
⎜ ↳ Macintosh mouse button emulation id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ USB Keyboard id=9 [slave keyboard (3)]
たとえば、上記の出力では、ポインティングデバイスはGeneric USB mouse
です。 。次のコマンドを実行して、調整可能なプロパティを一覧表示できます。
xinput --list-props 'Generic USB Mouse'
探しているプロパティのセットは、「EvdevWheelEmulation」のものです。次の設定では、マウスの中ボタン(ボタン2)を押すと、マウスを動かすとホイールイベント(4 =上、5 =下、6 =左、7 =右)が送信されます。
xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation' 1
xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation Button' 2
xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation Axes' 6 7 4 5
他のパラメータ(慣性、タイムアウト)を微調整することもできます。
関連:重複するファイル名の大文字と小文字を区別しない検索?
これらのコマンドをスクリプトに入れることができます。 #!/bin/sh
を追加します 最初の行として、スクリプトファイルを実行可能にします(例:chmod +x ~/bin/activate-wheel-emulation.sh
)。次に、そのスクリプトを、セッションの開始時に実行するコマンドのリストに追加します(gnome-session-properties
設定できます)。
ルートアクセス権があり、すべてのユーザーに対して変更を加えたい場合(ホームマシンで受け入れ可能)、X.orgサーバー構成ファイルを介して変更する方が簡単です。ルートとして、/etc/X11/xorg.conf.d/wheel-emulation.conf
というファイルを作成します マウスドライバの設定が含まれています。設定は同じですが、構成が少し異なります。
Section "InputClass"
Identifier "Wheel Emulation"
MatchProduct "Generic USB Mouse"
Option "EmulateWheel" "on"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
EndSection