Увеличьте скорость прокрутки колесика мыши

Как говорится в заголовке, я хочу увеличить количество строк, которые передаются, когда я использую колесо мыши для прокрутки. Я знаю, что существуют способы сделать это для Firefox и Chromium, хотя я хочу что-то для всей системы, в основном из-за чтения PDF.

Я нахожусь на рабочем столе и использую Microsoft Wireless Mouse 5000.

9 ответов

Решение

заранее

В используемой в настоящее время системе ввода драйверов невозможно изменить скорость прокрутки мыши, по крайней мере, без недостатков. Вы можете отрегулировать скорость прокрутки для Qt-Applications с помощью настроек KDE, но единственный текущий способ изменить прокрутку - это использовать imwheel что кажется проблематичным во многих отношениях (см. комментарии). В будущем это будет исправлено libinput и системная база данных оборудования.

Текущий путь

устанавливать imwheel с помощью следующей команды или из Центра программного обеспечения:

$ sudo apt-get install imwheel

Создайте (при необходимости) и отредактируйте файл конфигурации ~/.imwheelrc с редактором по вашему выбору (например, gedit). Заполните следующее для увеличения скорости прокрутки для каждой команды. NB. Этот файл конфигурации будет применять эти новые настройки прокрутки ко всем программам (включая терминал, который может не соответствовать вашим требованиям).

".*"
None,       Up,     Up,     3
None,       Down,   Down,   3

Если вы хотите применить эти настройки только к Chrome Например, используйте эти настройки вместо:

".*-chrome*"
None,       Up,     Up,     3
None,       Down,   Down,   3

3 является множителем прокрутки для увеличения эффективности колеса прокрутки. В README проекта это называется "REPS". В файле readme говорится:

[REPS]

Reps (Повторения) позволяет вам сказать число, сколько раз вы хотите, чтобы были нажаты выходные клавиши. См. Диаграмму привязок по умолчанию для количества повторений по умолчанию для каждого комбинированного модификатора (диаграмма находится в конце этого документа).

Другими словами, это множитель прокрутки. Если REPS установлен в 3 Это означает, что когда колесо мыши управляет одной командой прокрутки, программное обеспечение перехватывает эту команду и отправляет на ПК 3 команды вместо 1, что приводит к прокрутке в 3 раза дальше или "быстрее".

Для получения дополнительной информации также взгляните на справочную страницу:

$ man imwheel

или обратитесь к README проекта.

Вы можете начать imwheel набрав:

$ imwheel

Будьте уверены, что вы не запускаете imwheel дважды! Это известная ошибка, но вы можете остановить imwheel с помощью команды:

$ killall imwheel

Получить imwheel чтобы автоматически запускаться каждый раз при загрузке компьютера, вы должны добавить его в меню запуска ПОСЛЕ загрузки x-окна. ВАЖНО: поскольку imwheel полагается на уже запущенное x-окно, оно НЕ будет работать, если вы добавите его в crontab, /etc/init.d или /etc/rc.local. Это означает, что вы должны сделать это следующим образом:

Ubuntu:
Используйте редактор GUI "Автозагрузка приложений" для добавления imwheel как программа запуска: /questions/362201/kak-avtomaticheski-zapuskat-prilozheniya-pri-vhode-v-sistemu/362222#362222

Xubuntu:
Используйте редактор графического интерфейса "Сеанс и запуск" -> Автозапуск приложения -> Добавить, чтобы добавить imwheel в качестве программы запуска.

Больше скриншотов здесь: /questions/240823/xubuntu-zagruzka-prilozhenij-pri-zapuske/240825#240825.

Будущее

Этот учебник находится в стадии разработки.

libinput кажется, входит в Wily Werewolf (15.10), где вам нужно установить пакет xserver-xorg-input-libinput, После того, как вы установили libinput с

$ sudo apt-get install xserver-xorg-input-libinput

он должен использоваться для каждого ввода после перезапуска Xorg (достаточно выхода из системы). Теперь, когда вы используете libinput Вы можете настроить параметры вашей мыши. Вы можете найти полное руководство в файле /lib/udev/hwdb.d/70-mouse.hwdb. Позвольте мне осветить здесь только основы.

Следующие шаги необходимо сделать как root, В связи с этим я дружески напоминаю вам, что все, что вы делаете, нужно для того, чтобы взять на себя ответственность.

Сначала получите идентификатор продавца <vid> и идентификатор продукта <pid> с помощью lsusb, Вот, например, мышь MX 518 Logitech. Если у вас есть следующая строка в выводе lsusb,

Bus 005 Device 002: ID 046d:c051 Logitech, Inc. G3 (MX518) Optical Mouse

<vid> является 046d и <pid> является c051,

Затем создайте файл, который выглядит следующим образом: gksudo gedit /etc/udev/hwdb.d/71-mouse-local.hwdb

mouse:usb:v<vid>p<pid>:name:*:
    MOUSE_WHEEL_CLICK_ANGLE=??

Например этот файл для примера Logitech MX 518 выше:

mouse:usb:v046dpc051:name:*:
    MOUSE_WHEEL_CLICK_ANGLE=30

Этот файл устанавливает угол щелчка колеса мыши на 30° (по умолчанию обычно 15). Чтобы использовать этот параметр, обновите hwdb с помощью следующих команд:

udevadm hwdb --update
udevadm trigger /dev/input/event${id}

Можно выяснить ${id} с помощью xinput (обратите внимание на идентификатор вашей мыши), а затем запустите xinput list-props ${xinput_id},

Обратите внимание, что с помощью ~/.imwheelrc Рекомендуемый в принятом ответе фактически не увеличивает скорость колеса прокрутки. Скорее, он заменяет прокрутку несколькими нажатиями клавиш со стрелками. Это имеет недостаток, заключающийся в невозможности прокручивать окно, пока вы не измените на него фокус, а не поведение по умолчанию. Этот ответ направлен на то, чтобы предоставить альтернативу, которая в большей степени соответствует нативному поведению.

Чтобы дать краткий ответ для Ubuntu >14.04 (объединяя ответы @tvm и @redanimalwar с комментарием @ aroll605), кажется, что лучший вариант для фактического увеличения скорости колеса прокрутки - установить imwheel

  1. sudo apt install imwheel (заменить apt с apt-get в зависимости от вашей системы)

  2. gedit ~/.imwheelrc и вставить

    ".*"
    None,      Up,   Button4, 3
    None,      Down, Button5, 3
    Control_L, Up,   Control_L|Button4
    Control_L, Down, Control_L|Button5
    Shift_L,   Up,   Shift_L|Button4
    Shift_L,   Down, Shift_L|Button5
    

    где вы должны попробовать разные значения для # в строках

    None,      Up,   Button4, #
    None,      Up,   Button5, #
    
  3. Для проверки настроек используйте команду killall imwheel && imwheel -b "4 5"

  4. Откройте Startup Applications и добавьте imwheel -b "4 5"

Обратите внимание, что с помощью опции -b "4 5" ограничивает использование imwheel только колесом прокрутки, обсуждаемым здесь.

// Редактировать

Поскольку время от времени это вызывает некоторые положительные отзывы: я больше этим не пользуюсь (из-за лени после переустановок), и теперь я думаю, что в этом скрипте слайдер и другие вещи слишком загружены. Также люди указали на проблемы с течением времени. Поэтому, будучи минималистичным парнем, я сам создал конфиг. Это, вероятно, разовая вещь для большинства людей.

Я отредактировал это как руководство с 4 шагами со всем, что вам нужно.

И еще одно обновление: с тех пор, как я перешел на KDE, у него есть настройки для этого и миллиона других вещей, которых нет в Gnome (даже не осознавал, как сильно я скучал по KDE). Проблема в том, что настройки мыши KDE фактически не влияют на Firefox (и другие приложения GTK, я полагаю), но так как моей основной целью для этого был на самом деле просмотр веб-страниц, я теперь обнаружил, что вы на самом деле можете настроить, сколько мышь прокручивает в самом Firefox,

about:config
mousewheel.default.delta_multiplier_y

Я установил на 600, и это идеально подходит для меня

// Конец редактирования

Принятый ответ имеет конфигурацию, которая по какой-либо причине отображает прокрутку на клавиатуре ВВЕРХ и ВНИЗ. Не имеет смысла для меня.

Я нашел идеальный сценарий, который на самом деле отображается на мышь и добавляет графический интерфейс для настройки скорости мыши.

#!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then

cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
EOF

fi
##########################################################

CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)

NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)

if [ "$NEW_VALUE" == "" ];
then exit 0
fi

sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.

cat ~/.imwheelrc
imwheel -kill

Также есть видео, где оно представлено. Я даже не закончил смотреть это, потому что я запустил его в кратчайшие сроки. Следующее установит необходимые пакеты, скачает скрипт и выполнит его для нас:

sudo apt-get install -y imwheel
wget http://www.nicknorton.net/mousewheel.sh ~/bin/set-mousewheel
chmod +x ~/bin/set-mousewheel
~/bin/set-mousewheel

Установите скорость вращения колеса на красивый слайдер и будьте счастливы. Позже просто поменяю с set-mousewheel команда.

Не уверен, что imweel автоматически запускается после установки, иначе нам нужно добавить его в автозагрузку приложений.

Мои два цента: моя эргономичная мышь Microsoft Sculpt прокручивала примерно полстраницы за раз в Ubuntu 15.04 (Lenovo ThinkPad x220), что меня очень раздражало. Я пробовал разные решения, но в итоге у меня возникла идея отключить мышь от USB-порта (беспроводного ключа) и снова подключить его. Вуаля!... последовали "нормальные" скорости прокрутки:). Надеюсь, это кому-нибудь поможет.

Хотя выше imwheel предложения немного помогли, я обнаружил, что удаление механического механизма щелчка прокрутки сделало мое колесо мыши более приятным в использовании - не только снятие щелчка, но и более быстрое и точное управление!

И это заняло всего 3 минуты - ознакомьтесь с этими инструкциями:

http://www.instructables.com/id/Making-a-mouse-wheel-not-click./

Короче говоря, вы удаляете эту левую пружину (будьте осторожны, чтобы правильно установить правильную пружину):

введите описание здесь

Примечание: у меня есть стандартная дешевая мышь - Logitech B100, другие сообщают об успехе на подобных моделях. Ваш пробег может варьироваться.

Я также хотел увеличить ускорение колеса прокрутки мыши, а не только абсолютную скорость. Это функция MacOSX, но пока не встроенная в Xorg (также Wayland).

Я реализовал такую ​​фичу в пользовательском пространстве здесь (mouse-scroll-wheel-acceleration-userspace). Это увеличит скорость прокрутки или ускорит скорость прокрутки. Вы просто запустите это в фоновом режиме с вашими предпочтительными параметрами. Код представляет собой довольно простой код Python, и его также легко модифицировать.

Монтаж:

      # get the tool
git clone https://github.com/albertz/mouse-scroll-wheel-acceleration-userspace.git
cd mouse-scroll-wheel-acceleration-userspace

# install Python dependencies
pip3 install --user -r requirements.txt  # (basically pynput)

# run the tool
./main.py -v --exp 1  # example flags. see --help
# (leave this running in background)

imwheel будет генерировать события двойной прокрутки в Chrome, что раздражает

За i3wm а также libinput пользователям, я предлагаю libinput_patch, который дает запись для изменения дельты прокрутки в реальном времени, и намного лучше в моем случае использования

Я просто искал эту проблему, потому что после перезагрузки мое колесо мыши стало очень медленным. После попытки решить его с помощью различных приложений (imwheel, ...) я просто отключил его и подключил снова, и он работал как прежде. Так что, если скорость меняется между перезапусками без каких-либо действий, возможно, стоит попробовать.

Я изменил mousewheel.sh, чтобы включить регулировку скорости горизонтальной прокрутки:

  • Строки 21 и 22: добавлено ', 1' в конце строки.

  • Строка 26: добавлен '[|]', чтобы код мог искать ярлыки горизонтальной прокрутки (Shift_L|Button4).

  • Строка 34: добавлено '-kill -b "4 5"', чтобы боковые кнопки мыши назад и вперед не переставали работать при запуске скрипта.

Вы можете добавить последнюю строку imwheel -kill -b «4 5» в качестве команды запуска приложений, чтобы сделать изменения постоянными после перезагрузки.

      #!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then
cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4, 1
Shift_L,   Down, Shift_L|Button5, 1
EOF
fi
##########################################################
CURRENT_VALUE=$(awk -F '[|]Button4,' '{print $2}' ~/.imwheelrc)
NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)
if [ "$NEW_VALUE" == "" ];
then exit 0
fi
sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.
cat ~/.imwheelrc
imwheel -kill -b "4 5"
Другие вопросы по тегам