Aumentar a velocidade de rolagem da roda do mouse


81

Como o título diz, quero aumentar o número de linhas que são passadas quando uso a roda do mouse para rolar. Eu sei que existem maneiras de fazer isso no Firefox e no Chromium, embora eu queira algo para todo o sistema, principalmente por causa do leitor de PDF.

Estou em uma área de trabalho e uso o Microsoft Wireless Mouse 5000.


9
Alguém poderia pensar que isso deveria ser possível a partir da Mouse & Touchpadconfiguração do sistema. Pena que ainda precisamos de software de terceiros (por enquanto).
Domi

A Logitech possui mouses hiper scroll, eles têm uma roda giratória gratuita. Pessoalmente, tenho o m705. Mudar seu hardware geralmente é muito mais simples do que tentar fazer o mesmo com o software. Mas tenha cuidado, você pode querer diminuir a velocidade de rolagem com esses ratos (foi assim que me deparei com essa pergunta)!
Yrogirg

Respostas:


79

Antecipadamente

Com o sistema de driver de entrada usado atualmente, não é possível alterar a velocidade de rolagem do mouse, pelo menos não sem inconvenientes. Você pode ajustar a velocidade de rolagem dos aplicativos Qt usando as configurações do KDE, mas a única maneira atual de alterar a rolagem de maneira genérica é usando o imwheelque parece ser problemático de várias maneiras (consulte os comentários). No futuro, isso será corrigido com libinputo banco de dados de hardware systemd.

Maneira atual

Instale imwheelcom o seguinte comando ou no Centro de Software :

$ sudo apt-get install imwheel

Crie (se necessário) e edite o arquivo de configuração ~/.imwheelrccom um editor de sua escolha (por exemplo gedit). Preencha o seguinte para aumentar a velocidade de rolagem para cada comando. Nota: este arquivo de configuração aplicará essas novas configurações de rolagem a todos os programas (incluindo o terminal, que pode não ser o que você deseja).

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

Se você deseja aplicar apenas essas configurações Chrome, por exemplo, use essas configurações:

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

O 3é um multiplicador de rolagem para aumentar a eficácia da roda de rolagem. No README do projeto, ele é chamado "REPS". O leia-me declara:

[REPS]

Repetições (repetições) permite que você diga um número de quantas vezes deseja pressionar as teclas de saída. Consulte a tabela nas ligações padrão para obter o número padrão de repetições para cada combinação de modificadores (a tabela está próxima ao final deste documento).

Em outras palavras, é um multiplicador de rolagem. Se REPSestiver definido como 3, isso significa que, quando a roda do mouse comanda um comando de rolagem, o software intercepta esse comando e envia 3 comandos ao PC em vez de 1, fazendo com que ele role 3 vezes mais ou mais "rápido".

Para obter mais informações, consulte a página de manual:

$ man imwheel

ou consulte o LEIA - ME do projeto.

Você pode começar imwheeldigitando:

$ imwheel

Certifique-se de não ligar o imwheel duas vezes! Esse é um bug conhecido, mas você pode parar o imwheel com o comando:

$ killall imwheel

Para imwheeliniciar automaticamente sempre que o computador inicializar , você deve adicioná-lo ao menu de inicialização APÓS o carregamento de uma janela x. IMPORTANTE: como o imwheel conta com uma janela x para já estar em execução, NÃO funcionará se você o adicionar ao crontab, /etc/init.d ou /etc/rc.local. Isso significa que você deve fazer desta maneira:

Ubuntu:
Use o editor da GUI "Aplicativos de inicialização" para adicionar imwheelcomo um programa de inicialização: https://askubuntu.com/a/48327/327339

Xubuntu:
Use o editor da GUI "Session and Startup" -> Application Auto Startart -> Add para adicionar imwheelcomo um programa de inicialização.

insira a descrição da imagem aqui

Mais capturas de tela aqui: https://askubuntu.com/a/369443/327339 .

Futuro

Este tutorial está atualmente em desenvolvimento.

libinputparece estar incluído no Wily Werewolf (15.10), onde você precisa instalar o pacote xserver-xorg-input-libinput. Depois de instalar libinputcom

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

deve ser usado para todas as entradas após a reinicialização do Xorg (o logout seria suficiente). Agora que você está usando, libinputpode ajustar as configurações do seu mouse. Você pode encontrar um tutorial completo no arquivo /lib/udev/hwdb.d/70-mouse.hwdb . Deixe-me cobrir aqui apenas o básico.

As etapas a seguir devem ser executadas como root. Por isso, estou lembrando-o de que tudo o que você precisa é responsável.

Primeiro, obtenha o ID do fornecedor <vid>e o ID do produto <pid>usando lsusb. Aqui, com um mouse MX 518 Logitech como exemplo. Se você tiver a seguinte linha na saída de lsusb.

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

O <vid>é 046de o <pid>é c051.

Em seguida, crie um arquivo parecido com o seguinte com gksudo gedit /etc/udev/hwdb.d/71-mouse-local.hwdb

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

Por exemplo, este arquivo para o exemplo Logitech MX 518 acima:

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

Esse arquivo define o ângulo de clique da roda do mouse para 30 ° (o padrão geralmente é 15). Para usar essa configuração, atualize o hwdb com os seguintes comandos:

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

Pode-se descobrir o ${id}uso xinput(procure o id do mouse) e depois execute xinput list-props ${xinput_id}.


2
Funcionou! Obrigado, embora a única coisa que tenho para reclamar é que o uso imwheeldesativa a função de alternar entre janelas, apenas passando o mouse sobre os ícones no Unity Launcher.
Rodrigo Martins

2
De nada. Ontem eu verifiquei o seu problema, se você só precisa o aumento wheelspeed no seu visualizador de PDF você pode substituir o ".*"por "Evince"se você estiver usando Evince. Em seguida, o Unity-Launcher funciona conforme o esperado.
Tv

1
Os números podem diminuir? Minha roda roda muito rápido. Tentar '1' no lugar de '3' ainda é muito rápido.
darenw

6
Este é um mau método hacky que não funciona de verdade. No Nautilus, os arquivos marcados saltam 3 linhas para frente ou para trás, em vez de realmente rolar. Ele rola quando você "ultrapassa as fronteiras", mas é como pressionar o teclado para cima / baixo no teclado três vezes. O mesmo no texto sublime e acho que em muitos outros programas. (Ubuntu 13.10)
redanimalwar

3
Alguém já teve sucesso com a Futuresolução? Eu tentei, mas não consegui funcionar. Eu gostaria de saber uma maneira de saber se isso MOUSE_WHEEL_CLICK_ANGLEfoi alterado com êxito, mas não sei como verificar seu valor atual. O ângulo padrão varia com o mouse btw., Conforme visível /usr/lib/udev/hwdb.d/70-mouse.hwdb, embora a maioria possua 15 no momento.
miyalys

27

Observe que o uso da ~/.imwheelrcresposta recomendada na verdade não aumenta a velocidade da roda de rolagem. Em vez disso, substitui a rolagem por vários pressionamentos de tecla de seta. Isso tem a desvantagem de não poder rolar uma janela até você mudar o foco para ela, não o comportamento padrão. Esta resposta tem como objetivo fornecer uma alternativa que se comporte mais de perto com o comportamento nativo.

Para fornecer uma resposta concisa para o Ubuntu> 14.04 (combinando as respostas de @tvm e @redanimalwar com o comentário de @ aroll605 ), parece que a melhor opção para realmente aumentar a velocidade da roda de rolagem é instalarimwheel

  1. sudo apt install imwheel(substitua aptpor apt-getdependendo do seu sistema)

  2. gedit ~/.imwheelrc e cole

    ".*"
    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
    

    onde você deve tentar valores diferentes #nas linhas

    None,      Up,   Button4, #
    None,      Up,   Button5, #
    
  3. Para testar as configurações, use o comando killall imwheel && imwheel -b "4 5"

  4. Abra Aplicativos de inicialização e adicione imwheel -b "4 5"

Observe que o uso da opção -b "4 5"restringe o imwheel a afetar apenas a roda de rolagem, discutida aqui .


Meu livro é realmente jerky / atrasada com este
Lobo

@ Wolf, você tentou valores menores no lugar de #? 2, 1Ou até mesmo um valor decimal, por exemplo, 0.5?
Steven C. Howell

Sim. Parece gaguejar mesmo em números baixos, como um clique da roda às vezes rola um pouco e depois pula o resto da distância. Eu removo o programa e volto ao amanteigado, mas não ao intervalo de rolagem que eu preferir. Acho que seria útil acrescentar um pouco sobre o significado dos números - a solução funcionou melhor para mim 2, considerando a gagueira.
Wolf

Eu recomendaria tentar outro mouse para comparar o comportamento, não como uma solução, mas para diminuir a origem do problema. Se outro mouse ainda pular, há um problema definido em sua configuração; você pode concluir isso com mais segurança testando com um CD ao vivo, para ver se algo mudou desde a instalação. Se o outro mouse não pular, o mouse escolhido não é, infelizmente, compatível com o Ubuntu; talvez você possa procurar outras pessoas com o mesmo mouse e o que elas fizeram.
Steven C. Howell

^ Isso funcionou para mim
Jamie Hutber

27

// Edit

Como isso acontece de vez em quando: eu não uso mais (por preguiça após a reinstalação) e agora acho que esse script, o controle deslizante e outras coisas, é muito caro. As pessoas também apontaram problemas com isso ao longo do tempo. Então, como um cara minimalista, agora eu mesmo criei a configuração. Provavelmente é uma coisa única para a maioria das pessoas.

Eu editei este para ser um guia de 4 etapas com tudo que você precisa.

E outra atualização: desde que mudei para o KDE, isso realmente tem uma configuração para isso e um milhão de outras coisas que o Gnome não tem (nem percebi o quanto sentia falta do KDE). O problema é que as configurações do mouse do KDE realmente não têm efeito no Firefox (e em outros aplicativos GTK que eu assumo), mas como meu principal objetivo era navegar na Web, agora descobri que você pode ajustar o quanto o mouse rola no próprio Firefox .

about:config
mousewheel.default.delta_multiplier_y

Eu defini-lo para 600 e é perfeito para mim

// Fim da edição

A resposta aceita possui uma configuração que, por qualquer motivo, mapeia a rolagem para cima e para baixo no teclado. Não faz sentido para mim.

Eu encontrei um script perfeito que realmente mapeia o mouse e adiciona uma GUI para configurar a velocidade do mouse.

#!/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

Há também um vídeo onde é apresentado. Eu nem terminei de assistir isso porque consegui rodar em pouco tempo. O seguinte deve instalar os pacotes necessários, fazer o download do script e executá-lo para nós:

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

Defina a velocidade da roda em um bom controle deslizante e seja feliz. Mais tarde, mude com o set-mousewheelcomando.

Não tenho certeza se o imweel é iniciado automaticamente após a instalação; caso contrário, precisamos adicioná-lo aos aplicativos de inicialização.


2
Coisas extraordinárias! O script não funciona imediatamente no Ubuntu 14.04 LTS, mas se eu pegar a configuração diretamente do script e colocá-la em .imwheelrc, ela funcionará como um encanto.
Aroll605

Parece haver um bug no 14.04 LTS. Ocasionalmente, ele parava de funcionar completamente, até eu reiniciar o processo. Acontece apenas na inicialização e o 'imwheel' está incluído na lista de aplicativos de inicialização.
aroll605

1
Eu tive o problema que o imwheel mata os botões voltar / avançar. A correção é iniciar imwheel com as opções imwheel -b "4 5"para restringir-lo para o scrollwheel: askubuntu.com/questions/421645/...
jmiserez

Isso é ótimo, mas você não pode usar back / botões de avançar
Jamie Hutber

bom trabalho no mapeamento, mas o script não foi executado no meu ubuntu: command zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1retornou um erro: This option is not available. Please see --help for all possible usages.
Mobigital

14

Meus dois centavos: meu mouse Microsoft Sculpt Ergonomic estava rolando cerca de meia página por vez no Ubuntu 15.04 (Lenovo ThinkPad x220), o que realmente me incomodava. Tentei várias soluções, mas acabei tendo a idéia de desconectar o mouse da porta USB (o dispositivo sem fio) e reconectá-lo. Voila! ... velocidades de rolagem "normais" se seguiram :). Espero que ajude alguém.


4
Eu tenho a mesma configuração e tive o mesmo problema e obtive os mesmos resultados bem-sucedidos. Fico feliz por ler esta resposta antes de tentar as outras. Obrigado @ sammy34
nic

2
O mesmo aqui, reconectar o dongle resolveu. Microsoft Wireless Mouse 2000
Omer Sabic

1
Como isso pode ser uma solução ???? Mas funcionou :) obrigada :) #
245 Himanshu Bhandari

teve o mesmo problema (microsoft Sculpt + ThinPad + Ubuntu 18.10) desconectar e reconectar apenas funcionou!
jvoigt 9/03

Uau, o mesmo sucesso com a re-conexão do dongle do Microsoft Arc. Mas por que?
lkraav 30/04

9

Embora as imwheelsugestões acima tenham ajudado um pouco, descobri que a remoção do mecanismo de clique com rolagem mecânica tornava a roda do mouse muito mais agradável de usar - não apenas removendo o clique, mas tornando-o mais rápido e preciso de controlar!

E levou apenas 3 minutos - confira estas instruções:

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

Em poucas palavras, você está removendo esta mola esquerda (tenha o cuidado de colocar a mola certa de volta no lugar exatamente):

insira a descrição da imagem aqui

Nota: Eu tenho um mouse barato e padrão - um Logitech B100, outros relatam sucesso em modelos semelhantes. Sua milhagem pode variar.


Muito mais fácil de usar o xmodmap para desativar o botão do meio do mouse. (xmodmap .Xmodmap) em que seu arquivo .Xmodmap contém a linha "ponteiro = 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 16". O zero desliga o botão do meio. Execute xmodmap [caminho para o seu .Xmodmap] na inicialização.
Harryg123 20/03

3

imwheel emitirá eventos de rolagem dupla no chrome, o que é irritante

Por i3wme libinputusuários, sugiro libinput_patch , o que dá uma entrada para mudar delta de rolagem em tempo real, e é muito melhor no meu caso de uso


1

Eu apenas procurei esse problema, porque, após uma reinicialização, a roda do mouse ficou muito lenta. Depois de tentar resolvê-lo com diferentes aplicativos (imwheel, ...), eu apenas desconectei e conectei novamente e funcionou como antes. Portanto, se a velocidade mudar entre as reinicializações sem você fazer nada, pode valer a pena tentar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.