Ця функція Windows ніколи не пробивалась у світ Unix. У світі Unix головна мета середньої кнопки миші - це вставлення вмісту буфера обміну (а точніше, тексту, вибраного мишею, який автоматично копіюється). Кілька крос-платформних додатків, таких як Firefox та Chrome, які підтримують середню клавішу миші в стилі Linux під Windows та навпаки, окрім більшості програм не підтримують такого роду дрібнозернисті прокрутки.
Тим не менш, ви можете досить близько наблизитися на системному рівні. Можна встановити кнопку миші таким чином, щоб при її натисканні рухи миші перетворювалися на події колеса. Це та сама функція, до якої ви звикли, але ви, швидше за все, вважаєте рух порушеним, оскільки програми отримують події на колесі, які, як правило, інтерпретуються як прокрутка одним цілим рядком або стовпцем.
Щоб грати з цією конфігурацією, використовуйте програму 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'
Набір властивостей, які ви шукаєте, - це «емуляція колеса Евдева». З наступними налаштуваннями при натисканні середньої кнопки миші (кнопка 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