Ekvivalent AutoHotkey

Existuje ekvivalentní produkt / metoda pro AutoHotkey?

Pro ty, kteří neví, je to produkt, který umožňuje programovat pohyby myši a klávesnici. To mi umožňuje „makrovat“ určité funkce programů, místo toho, abych to dělal ručně. Za starých časů jim říkali vycpávky klávesnic. Ale to je jen polovina řešení, protože potřebuji také výplň „pohybu myší“.

Existuje takové zvíře?

Odpovědět

Existuje port AutoHotKey pro Linux s názvem IronAHK a podobný nástroj s názvem Autokey . Ani jsem je nepoužíval, nevím, jak dobře fungují.

Kromě těchto programů nenajdete přesně stejný druh automatizačních nástrojů . Základním nástrojem pro automatizaci uživatelů v systémech unix je shell. Shell je lepidlo, které kombinuje další nástroje: může spouštět externí programy a řídit, jak si vyměňují data. Samotný shell neobsahuje nic, co by manipulovalo s koncepty grafického uživatelského rozhraní, jako jsou okna a ukazatel myši¹. To, co děláte, je nazývat specializované nástroje ve skriptu prostředí, zejména xdotool pro manipulaci s okny a vkládání stisknutí kláves a události myši .

Například následující skript klikne na pozici (40,20) v okně Myapp.

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

¹ Kromě dtksh , ale nikdy jsem neviděl jeho linuxový port.

Komentáře

  • Pěkné shrnutí, škoda, že projekt je zastaralý 4 roky a všech binárních souborů je 404 ' s, pokusí se však xdotool. Děkujeme, že jste si našli čas.
  • vyzkoušeli xdotool, fungují jako kouzlo, ale určitě byste si měli přečíst jejich dokumenty před spuštěním
  • AFAIK, IronAHK nikdy nebyl plně implementován a byl opuštěn.

Odpověď

Existuje několik projektů, které to řeší. Dva nejaktivnější, AFAIK, jsou sikuli a AutoKey (projekt, který pomáhám podporovat .)

Nepoužíval jsem sikuli, ale zdá se, že je založen na hledání vzorů na obrazovce a spouštění akcí na jejich základě.

AutoKey umožňuje uživateli definovat spouštěcí fráze a klávesové zkratky, které rozšiřují fráze (podobně jako velmi výkonná funkce automatické opravy) nebo spouští skripty napsané v Pythonu3, které jsou omezeny pouze programovacími schopnostmi uživatele. Poskytuje API pro generování událostí klávesnice a myši. Integruje se také s Xautomation, který vám umožňuje najít na obrazovce malý obrázek a přesunout na něj kurzor myši.

AutoKey používám již mnoho let a podporuji ho v našem seznamu . Je to jako celá řada nástrojů produktivity: obejdete se bez ní, ale jakmile ji začnete používat, budete se divit, jak jste si bez ní vůbec poradili.

Některá specifika:

AutoKey nefunguje s AutoH otKey definice a skripty. Budou muset být přepsány.

Napsal jsem důkaz konceptu bash skriptu (k dispozici na vyžádání), který překládá fráze AutoHotKey do frází AutoKey, ale je to jen výchozí bod a ignoruje většinu AutoHotKey možnosti.

Vzhledem k tomu, že skripty AutoKey jsou psány v jazyce Python3, je také možné vyvolat nástroje, jako je xdotool a wmctrl, ze skriptu, aby poskytly další funkce, ale obvykle to není nutné. Ačkoli skripty AutoKey jsou psány v Pythonu, s velmi omezenou znalostí Pythonu toho lze dosáhnout hodně. Pro většinu účelů nemusíte být plynulým programátorem Pythonu.

Pokud používáte distribuci založenou na Debianu, Nainstalujte prosím verzi AutoKey poskytovanou vaší distribucí. Jejich balíček AutoKey je neudržovaný a velmi starý. Získejte aktuální verzi od nás . Upravit: Toto bylo opraveno v testování a derivátech Debianu v roce 2020. Nyní nabízejí nejnovější verzi.

Odpověď

V systému Linux můžete použít xautomation . Používám ho na obrazovkách Raspberry Pi k odesílání obnovy stránky F5 a klávesových zkratek „Návrat“ (zadávání) pro přihlášení.

Odpovědět

Použijte AutohotkeyX, je to poslední WINE port autohotkey, který podle testování winehq dělá vše, co Autohokey dokáže v systému Windows. Je to snadno nejlepší a nejpřímější odpověď.

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

Osobně jsem to netestoval, ale výsledky WINEHQ mají tendenci

Odpověď

Stáhněte si Autohotkey pro Linux. Vytvořte soubor Autohotkey (example.ahk). Ke spuštění Ahk2Exe.exe ze složky Autohotkey použijte víno. Zkompilujte svůj příklad.soubor ahk to example.exe Použijte víno ke spuštění example.exe

Komentáře

  • Je to ' s není dobrá volba. Prozatím je funkce funkce Autohotkey spuštěná přes víno velmi omezená: appdb.winehq.org/… .

Odpovědět

Zde je řešení noob pro noobs jako já:

Většina desktopových prostředí (DE) obsahují vestavěný editor klávesových zkratek. Pomocí editoru klávesových zkratek můžete psát vlastní bash skripty, příkazy konzoly atd.

Chcete-li získat funkce podobné AHK nad rámec toho, co váš DE umožňuje pomocí vlastních zkratky, nainstalujte xdotool (sudo apt install xdotool) a napište své příkazy xdotool do editoru zkratek (pokud máte možnosti pro několik typů zkratek, vyberte " příkaz " možnost):

xdotool [command] 

(Zadejte man xdotool v terminálu pro přístup k příručce xdotool.)

Pokud používáte xdotool k rozšíření vlastních zkratek, je dobré zadat příkaz v terminálu před nastavením Používám ji jako klávesovou zkratku, jen abych se ujistil, že funguje podle očekávání.

Musím ještě přijít na to, jak získat horké řetězce podobné AHK v Linuxu, ale aktualizuji je, pokud objevím funkční řešení.

Odpověď

Stačí použít XEV a XMODMAP. JEDNODUCHÉ a lepší než dedikované programy nebo emulace mizerných aplikací pro Windows. Všechny mé věci LINUX používají skripty k předefinování kláves a změně režimů obrazovky a poté, když je program hotový a skončí, vše nastaví zpět do normálu. Použití XMODMAP a vytvoření skriptu je stejně snadné jako vytvoření skriptu AHK, ale s bonusem, že nemusíte spouštět emulovanou aplikaci pro Windows.

Komentáře

  • Tato odpověď může být, pro mě, vše, co vím, 100% správná a přesná. Bylo by však mnohem užitečnější, kdyby obsahovala některé příklady a / nebo pokyny nebo dokonce odkazy na další dokumentaci.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *