Equivalente do AutoHotkey

Existe um produto / método equivalente para o AutoHotkey?

Para aqueles que não sabem, é um produto que permite que você programe os movimentos do mouse e do teclado. Isso me permite “macro” certas funções em programas em vez de ter que fazer isso manualmente. Antigamente, costumavam chamá-los de entupidores de teclado. Mas isso é apenas metade da solução, pois também preciso de um stuffer para “movimento do mouse”.

Existe tal besta?

Resposta

Há “uma porta de AutoHotKey para Linux chamada IronAHK e uma ferramenta semelhante chamada Autokey . Não usei nenhum dos dois, não sei se funcionam bem.

Fora esses programas, você não encontrará exatamente o mesmo tipo de ferramentas de automação . A ferramenta básica de automação do usuário em sistemas unix é o shell. O shell é a cola que combina outras ferramentas: pode lançar programas externos e controlar como eles trocam dados. O shell em si não inclui nada para manipular conceitos de GUI como janelas e o ponteiro do mouse¹. O que você faz é chamar ferramentas especializadas em um script de shell, em particular xdotool para manipular janelas e injetar pressionamentos de tecla e eventos do mouse .

Por exemplo, o script a seguir clica na posição (40,20) na janela do Myapp.

#!/bin/sh xdotool search --class Myapp \ mousemove --window %1 40 20 \ click 1 

¹ Exceto por dtksh , mas nunca vi uma porta Linux dele.

Comentários

  • Belo resumo, pena que o projeto está 4 anos desatualizado e os binários estão todos 404 ‘ s, irá dar uma chance ao xdotool. Obrigado por dedicar seu tempo.
  • experimentei o xdotool, funciona perfeitamente, mas com certeza você deve ler os documentos antes de começar
  • AFAIK, IronAHK nunca foi totalmente implementado e foi abandonado.

Resposta

Existem vários projetos que tratam disso. Os dois mais ativos, AFAIK, são sikuli e AutoKey (um projeto que ajudo a apoiar .)

Não usei o sikuli, mas parece ser baseado na localização de padrões na tela e no acionamento de ações com base neles.

AutoKey permite ao usuário definir frases de gatilho e teclas de atalho que expandem frases (semelhantes a um recurso de autocorreção muito poderoso) ou executam scripts escritos em Python3 que são limitados apenas pelas habilidades de programação do usuário. Fornece uma API para a geração de eventos de teclado e mouse. Também se integra ao Xautomation, que permite para localizar uma pequena imagem na tela e mover o cursor do mouse até ela.

Tenho usado o AutoKey por muitos anos e o suporte em nossa lista . É como uma série de ferramentas de produtividade: você pode sobreviver sem elas, mas assim que começar a usá-las, você se perguntará como conseguiu viver sem elas.

Alguns detalhes:

AutoKey não funciona com AutoH Definições e scripts de otKey. Eles terão que ser reescritos.

Eu escrevi um script bash de prova de conceito (disponível mediante solicitação) que traduz frases AutoHotKey em frases AutoKey, mas é apenas um ponto de partida e ignora a maioria dos AutoHotKey “s options.

Como os scripts AutoKey são escritos em Python3, também é possível chamar ferramentas como xdotool e wmctrl de dentro de um script para fornecer funcionalidade adicional, mas isso normalmente não é necessário. Embora scripts AutoKey são escritos em Python, muitas coisas podem ser realizadas com um conhecimento muito limitado de Python. Você não precisa ser um programador Python fluente para a maioria dos propósitos.

Se você usa uma distribuição baseada em Debian, por favor, não instale a versão do AutoKey fornecida pela sua distribuição. O pacote AutoKey deles não tem manutenção e é muito antigo. Obtenha uma versão atual nós . Editar: Esta foi corrigido nos testes e derivados do Debian em 2020. Eles agora oferecem a versão mais atual.

Resposta

Você pode usar xautomation no Linux. Eu o uso nas telas do Raspberry Pi para enviar atualizações de página F5 e pressionamentos de tecla “Return” (enter) para logins.

Resposta

Use AutohotkeyX, é uma porta WINE recente do autohotkey que, de acordo com os testes do winehq, faz tudo o que Autohokey é capaz de fazer no Windows. É facilmente a melhor e mais direta resposta.

https://appdb.winehq.org/objectManager.php?sClass=version&iId=17738

Eu não testei isso pessoalmente, mas os resultados WINEHQ tendem

Resposta

Baixe o Autohotkey no Linux. Crie um arquivo Autohotkey (exemplo.ahk). Use o wine para executar Ahk2Exe.exe da pasta Autohotkey. Compile seu exemplo.arquivo ahk para example.exe Use wine para executar example.exe

Comentários

  • It ‘ s não é uma boa opção. Por enquanto, a funcionalidade do Autohotkey executado por meio do wine é muito limitada: appdb.winehq.org/… .

Resposta

Aqui “uma solução noob para novatos como eu:

A maioria dos ambientes de desktop (DE) incluem um editor de atalhos de teclado integrado. Usando o editor de atalhos, você pode escrever scripts bash personalizados, comandos de console, etc.

Para obter uma funcionalidade semelhante a AHK além do que seu DE possibilita por meio de atalhos, instale o xdotool (sudo apt install xdotool) e escreva seus comandos xdotool no editor de atalhos (se você tiver opções para vários tipos de atalhos, selecione ” command ” opção):

xdotool [command] 

(Digite man xdotool no terminal para acessar o manual do xdotool.)

Se você usar o xdotool para estender seus atalhos personalizados, é “uma boa idéia inserir seu comando no terminal antes de definir g como uma tecla de atalho, apenas para ter certeza de que funciona conforme o esperado.

Ainda não descobri como obter hotstrings do tipo AHK no Linux, mas vou atualizar se descobrir uma solução viável.

Resposta

Basta usar XEV e XMODMAP. SIMPLES e melhor do que programas dedicados ou emulando aplicativos ruins do Windows. Todas as minhas coisas do LINUX usam scripts para redefinir as teclas e alterar os modos da tela e então, quando o programa terminar e sair, coloque tudo de volta ao normal. É tão fácil usar o XMODMAP e fazer um script quanto um script AHK, mas com a vantagem adicional de não ter que executar um aplicativo emulado do Windows.

Comentários

  • Esta resposta pode, pelo que sei, ser 100% correta e precisa. No entanto, seria muito mais útil se incluísse alguns exemplos e / ou instruções, ou mesmo links para documentação adicional.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *