Emular mouse pelo teclado

Como já escrevi em um post anterior, eu comprei um teclado e um mouse wireless para usar o computador a uns 3 metros de distância. Porém o mouse não está funcionando.

Se por um lado a combinação do gerenciador de janelas Awesome com o uso predominante de programas em linha de comando me permitam quase não precisar de um cursor, alguns programas e páginas da web não são muito amigáveis para alguém sem um mouse.

Até eu comprar outro mouse, minha solução temporária foi configurar o teclado numérico para controlar o a movimentação do ponteiro, simular o scroll wheel e os botões.

  1. Baixe o xdotool

    julio@julio-acer ~> sudo pacman -S xdotool
    
  2. Adicione as seguintes linhas ao ~/.xbindkeysrc

    # Move para noroeste (cima-esquerda)
    "xdotool mousemove_relative -- -10 -10"
    KP_Home
    
    # Move para norte (cima)
    "xdotool mousemove_relative 0 -10"
    KP_Up
    
    # Move para nordeste (cima-direita)
    "xdotool mousemove_relative 10 -10"
    KP_Prior
    
    # Move para oeste (esquerda)
    "xdotool mousemove_relative -- -10 0"
    KP_Left
    
    # Move para leste (direita)
    "xdotool mousemove_relative 10 0"
    KP_Right
    
    # Move para sudoeste (baixo-esquerda)
    "xdotool mousemove_relative -- -10 10"
    KP_End
    
    # Move para sul (baixo)
    "xdotool mousemove_relative 0 10"
    KP_Down
    
    # Move para sudeste (baixo-direita)
    "xdotool mousemove_relative 10 10"
    KP_Next
    
    # Clique esquerdo
    "xdotool click 1"
    KP_Insert
    
    # Clique meio
    "xdotool click 2"
    KP_Delete
    
    # Clique direito
    "xdotool click 3"
    KP_Enter
    
    # Scroll para cima
    "xdotool click 4"
    KP_Subtract
    
    # Scroll para baixo
    "xdotool click 5"
    KP_Add
    

Modifique as teclas de acordo com a saída do xev e pronto! Consegui simular as funções básicas do mouse pelo teclado.

Julio Batista Silva
Julio Batista Silva
Engenheiro de Dados

Eu sou um engenheiro de computação apaixonado por ciência, tecnologia, fotografia e idiomas. Atualmente trabalhando como Engenheiro de Dados na Alemanha.

comments powered by Disqus