Vim habilitar somente a rolagem do mouse - não o posicionamento do cursor

7

Eu quero ativar a roda do mouse para rolar como ^ee ^yfazer. Eu não quero clicar em um buffer para mover o cursor, então :set mouse=aisso não me ajuda.

Razão é que eu tenho um monte de gui janelas abertas (navegador web, bate-papo etc) e clique para focar vim, mas se eu clicar dentro do buffer, ele move o cursor para onde eu cliquei. Eu também gosto de usar a roda do mouse para rolar porque eu acho que é mais rápido do que ^ee ^y, e mais fácil de controlar se eu sou assim ^de ^uou <pgdn>e <pgup>.

Existe uma maneira de ativar o suporte do mouse para rolagem, mas desativar a mudança de posição do cursor ao clicar em?

Obrigado!

Mateus
fonte

Respostas:

2

Você pode desativar seletivamente os botões do mouse mapeando-os para <nop>. Por exemplo, para desativar o botão esquerdo do mouse:

:nmap <LeftMouse> <nop>
:imap <LeftMouse> <nop>
:vmap <LeftMouse> <nop>

Se você também quiser ignorar os cliques duplos:

:nmap <2-LeftMouse> <nop>
…

Vejo:

:help gui-mouse-mapping
:help map-overview
Heptite
fonte
2
Ótimo, apenas o que eu estava procurando. Alguma chance de ainda permitir seleção de janela / tabulação (sem alterar a posição do cursor)?
Matthew
Não consigo pensar em uma maneira de fazer isso, mas não vou dizer que não pode ser feito.
Heptite