Eu vi desativar completamente o mouse no console vim no Stack Overflow. Parecia exatamente o que eu queria, mas o problema estava relacionado ao Cygwin, então o título era impróprio.
Quero saber como desativar completamente todas as interações do mouse no vim no console. Não quero rolar, selecionar, clicar ou olhar o mouse para ter algum efeito no vim.
Eu gosto de ter o mouse no console, mas não quando estou usando o vim. Isso é possível?
Eu tenho um laptop com o ubuntu instalado e, quando digito, ocasionalmente o mouse do touch pad decide clicar ou arrastar aleatoriamente entre algumas coordenadas aleatórias na tela, mesmo quando tento ao máximo não tocar na coisa maldita. Isso tem o efeito de eu digitar código nos lugares errados o tempo todo, e está ficando muito antigo porque às vezes introduz bugs irreversíveis sutis no meu código.
Consegui me livrar da rolagem e da seleção visual usando os comandos abaixo no meu .vimrc
, mas ele ainda realocará o cursor quando clicar.
" disable mouse interactions "
set mouse=nicr
map <ScrollWheelUp> <nop>
map <S-ScrollWheelUp> <nop>
map <C-ScrollWheelUp> <nop>
map <ScrollWheelDown> <nop>
map <S-ScrollWheelDown> <nop>
map <C-ScrollWheelDown> <nop>
map <ScrollWheelLeft> <nop>
map <S-ScrollWheelLeft> <nop>
map <C-ScrollWheelLeft> <nop>
map <ScrollWheelRight> <nop>
map <S-ScrollWheelRight> <nop>
map <C-ScrollWheelRight> <nop>
O que mais eu preciso fazer?
PS eu tentei set mouse=
, mas isso parece reativar visual select ...
set mouse=
desativa efetivamente todas as interações do mouse com o Vim , mas não com o emulador de terminal. Você tem certeza de que "visual select" é do Vim?/etc/vimrc
. Veja minha resposta aqui: unix.stackexchange.com/a/506723/194822Respostas:
Você deve adicionar as duas linhas a seguir no final de / etc / vim / vimrc:
fonte
ttymouse
todos os sites mencionados,mouse
masttymouse
era o que estava faltando. Obrigado !Isso pode funcionar se você colocá-lo no final do seu arquivo .vimrc
set mouse=c
Provavelmente não é o Vim que recebe a entrada do mouse, mas o seu emulador de terminal. Para desativar o suporte do mouse no seu terminal, isso pode ajudar.
fonte
c
e não completamente em branco?Essa é apenas uma solução parcial, na melhor das hipóteses, mas você pode desativar globalmente o mouse / touchpad enquanto o vim estiver sendo executado
xinput
em um script de shell:E depois
Quando você estiver pronto para que o touchpad funcione novamente.
Use
xinput --list
para obter o ID do seu dispositivo apontador.fonte
FocusGained
eFocusLost
, embora pareça haver algum desafio em encontrar uma configuração de terminal + Vim onde esses eventos possam ser detectados.