Como posso fazer com que as teclas de atalho movam o mouse, como alternativa ao touchpad?

0

Devido a grandes quantidades de bolo de chocolate caindo no touchpad do meu computador, ele não responde às vezes (embora o botão esquerdo e o botão direito funcionem bem) e eu gostaria de fazê-lo quando pressionar CTRL e ao mesmo tempo segure uma ou duas das teclas de seta para que o mouse se mova de acordo. Então, se a tecla seta para cima for pressionada, ela se moverá para cima, se a tecla seta para a esquerda e depois para a esquerda, e se a seta para a direita A tecla e as teclas de seta para cima estão sendo ajudadas juntas para que se mova na diagonal (e assim por diante para o resto das teclas).

Estou executando o Ubuntu GNOME 15.10 com o GNOME 3.18, isso pode ser feito? E se sim como? Eu aceitaria um script que faz isso.

    
por Jacob Vlijm 11.12.2015 / 15:28

1 resposta

1

Alternativa com script para acesso universal (para mover o mouse)

Não é 100% exatamente como você descreve, mas uma alternativa para usar o mouse ou o touchpad. A resposta abaixo, na verdade, é uma cópia quase exata de uma resposta que eu postei há muito tempo em esta questão . Eu deletei, no entanto, desde que eu nunca tive a chance de descobrir se era o que OP estava procurando (sem resposta ).

No seu caso, uma vez que você só quer usá-lo para mover o mouse, você pode deixar de fora um número de teclas de atalho (as três últimas) que também impedirão as opções mais "arriscadas" . As opções scriptted devem funcionar bem de qualquer maneira, sem riscos em situações conflitantes.

Alternativa das teclas do mouse

Como mencionado, o script oferece a funcionalidade básica do mouse, como uma alternativa à opção padrão de teclas do mouse em Configurações do sistema > Acesso Universal . Ao contrário das teclas do mouse, o ponteiro do mouse é movido (seja x ou y) por cliques repetidos , em dois modos:

  • etapas maiores (como agora é definido: 50px)
  • etapas menores para "terminar" (como está definido agora: 3 px)

Para minha própria surpresa, achei razoavelmente confortável de usar. Definitivamente não é o mesmo nível de um mouse "real", mas (muito) mais confortável que o uso de Mouse Keys, pelo menos na minha experiência. Após cinco minutos para me acostumar, pude realizar praticamente todas as ações "normais"; abrir aplicativos, arrastar janelas, editar texto etc.

Desvantagem

Há, no entanto, uma desvantagem de mencionar:

Ao contrário das teclas do mouse, a configuração não "reivindica" o teclado numérico exclusivamente. A desvantagem disso é que há uma chance maior de conflitos importantes, especialmente com o clique esquerdo / direito, e mantenha pressionada a funcionalidade do clique esquerdo. Embora não tenha me deparado com situações intransponíveis, você pode se deparar com alguns conflitos e estar familiarizado com as teclas de atalho gerais é uma vantagem.
Você terá que tentar e ver se funciona para você.

A configuração

  1. O script precisa de xdotool:

    sudo apt-get install xdotool
    
  2. Desativar teclas do mouse (provavelmente já são)

  3. Copie o script abaixo em um arquivo vazio, salve-o como mouse (sem extensão) em ~/bin (crie o diretório, se necessário).

    #!/usr/bin/env python3
    import subprocess
    import sys
    #--- Don't change these lines:
    direction = sys.argv[1]
    speed = sys.argv[2]
    #--- Change the steps below if you'd like to
    big_step = 50
    small_step = 3
    #---
    
    step = big_step if speed == "fast" else small_step
    step = -step if direction == "left" or direction == "up" else step
    get = lambda cmd: subprocess.check_output(cmd).decode("utf-8")
    
    def move():
        coords = [int(it.split(":")[1]) for it in get(["xdotool", "getmouselocation"]).split()[:2]]
        if direction in ["left", "right"]:
            cmd = "xdotool", "mousemove", str(coords[0]+step), str(coords[1])
        elif direction in ["up", "down"]:
            cmd = "xdotool", "mousemove", str(coords[0]), str(coords[1]+step)
        subprocess.call(cmd)
    move()
    
  4. Torne o script executável.

  5. Se você acabou de criar ~/bin , efetue logout / in ou execute source ~/.profile , para tornar o diretório "visível" em $PATH .
  6. Agora adicione um número de teclas de atalho. Todas as teclas de atalho que eu configurei visam o uso do teclado numérico, em combinação com Shift + Ctrl (movimento rápido), Ctrl (movimento lento, clique com o botão esquerdo do mouse), Ctrl + Super , (clique direito, mouse para baixo).

    Adicione as seguintes teclas de atalho: Configurações do sistema > "Teclado" > "Atalhos" > "Atalhos personalizados". Clique no botão "+" e adicione os comandos (11 no total, incluindo as teclas do mouse):

    mouse left fast 
    
    Combinação de teclas

    : Shift + Ctrl + Número à esquerda

    mouse right fast    
    
    Combinação de teclas

    : Shift + Ctrl + Num Right

    mouse up fast       
    
    Combinação de teclas

    : Shift + Ctrl + Num-Up

    mouse down fast     
    
    Combinação de teclas

    : Shift + Ctrl + Núm.

    E:

    mouse left slow 
    
    Combinação de teclas

    : Ctrl + Número à esquerda

    mouse right slow 
    
    Combinação de teclas

    : Ctrl + Num Right

    mouse up slow       
    
    Combinação de teclas

    : Ctrl + Num.

    mouse down slow     
    
    Combinação de teclas

    : Ctrl + Núm.

    Além disso, defino teclas de atalho para:

    • clique com o botão esquerdo:

      xdotool click 1 
      
    Combinação de teclas

    : Ctrl + *

    • clique com o botão direito do mouse:

      xdotool click 3 
      
    Combinação de teclas

    : Ctrl + Super + * )

    • segure o botão esquerdo (por exemplo, para agarrar, use clique para soltar):

      xdotool mousedown 1 
      
    Combinação de teclas

    : Ctrl + Super + / )

por Jacob Vlijm 11.12.2015 / 16:37