2Sep

Ako spájať Global HotKeys s programom WINE pod Linuxom

click fraud protection

Už ste niekedy nainštalovali program Windows v systéme Linux pod WINE, len aby zistili, že už neviaže systémové klávesové skratky? HTG má prácu okolo vás, ktorú ste hľadali.

Obrázok podľa djeucalyptus

Prehľad

Každý, kto dokonca premýšľal o myšlienke prechodu na Linux, pravdepodobne veľmi rýchlo narazil na problém, že je tu jedna aplikácia Windows, ktorú potrebujete na fungovanie. Už sme vám ukázali, že to môžete dosiahnuť použitím WINE.

Táto aplikácia spisovateľa bola aplikácia Text-To-Speech, ktorá využíva motor Microsoft SAPI4.Inštalácia programu pod WINE bola vietor, ale po dokončení som rýchlo zistil, že hot-kľúče používané na spúšťanie rôznych akcií programu( čítanie, zastavenie čítania atď.) Nefungovali a to je známeproblém s WINE.

Som rád, že po skončení vyhľadávania som konečne našiel riešenie vo forme GNU nástroja, ktorý môže manipulovať s rozhraním X.org pomocou natívnych funkcií.Zatiaľ čo nie je jediný svojho druhu, xdotool je ten, ktorý bol najjednoduchší na prácu a bol už v úložiskách Ubuntu / Mint.

instagram viewer

xdotool

Program xdotool môže robiť mnoho úloh súvisiacich s oknami z CLI, s tým, že jediné dva, ktoré budeme využívať, sú "vyhľadávanie" a "kľúč".Funkcia vyhľadávania vyhľadáva ID okna podľa parametrov, ktoré ste nastavili. Funkcia "key" umožňuje simulovať tlkot kľúča na ID okna.

Inštalácia &konfigurácia

Predpokladá sa, že ste už nainštalovali program WINE a program, ktorý potrebujete pod ním. V tomto príklade budeme Balabolku používať ako aplikáciu "Windows", pretože ide o dobrú bezplatnú repliku pôvodného programu, ktorý som potreboval pre toto riešenie( 2. centrum reči).

Ak ste sa rozhodli použiť aj Balabolku, musíte aktivovať jeho schopnosť klávesových skratiek.
Poznámka: Možno budete chcieť nainštalovať TTSReader alebo druhé centrum reči aj v demo režime, aby sa nainštalovali hlasy SAPI.

Otvorte program a prejdite na nastavenia( Shift + F6) pod "Možnosti" - & gt;"Nastavenie".

Prejdite na kartu klávesových skratiek a začiarknite políčko "Používanie globálnych klávesových skratiek".

Kliknite na tlačidlo OK.

Ponechajte ho bežať na pozadí, aby dokázala vykonať svoju úlohu, keď sme na ňu zaviedli klávesové skratky.

Nainštalujte xdotool vydaním:

sudo apt-get install xdotool

Globálna väzba

Samotný program xdotool nám nepomôže globálne viazať sa na klávesové skratky, ale môžeme použiť už existujúci systém rýchlych klávesových skratiek.Čo budeme robiť, je vytvoriť jednoduchý skript, ktorý používa xdotool na odoslanie požadovaných úderov do programu Balabolka a zavoláme ho zo systému rýchlych systémov OS.

Vytvorte skript s názvom "start_read.sh" s nasledujúcim obsahom:

xdotool key - window $( xdotool search - limit 1 - všetko - $ $( pgrep balabolka) - názov Balabolka) "ctrl + alt +F9 "

Vytvorte ďalší skript tentokrát nazvaný" stop_read.sh "s nasledujúcim obsahom:

xdotool key - window $( xdotool search --limit 1 - všetko --pid $( pgrep balabolka) - meno Balabolka)"ctrl + alt + F7 "

Poznámka: Viem, že je to jedna linka, ktorá nevyžaduje skript, ale program Mint / Ubuntu" Keyboard Shortcuts "program nespolupracoval len s výzvou priamo. Ak viete, ako to urobiť, zdieľajte prosím nasledujúce komentáre.

Brzdenie tohto príkazu na jeho komponenty, čo vidíme je:

  • Časť "-pid $( pgrep balabolka)" vykoná "pgrep" v programe, ktorý chceme použiť na zistenie jeho ID procesu. To zúži xdotool podaná "hľadanie" len na tento PID.
  • Časť "xdotool search -limit 1 -all. .. -name Balabolka" zužuje ešte viac vyhľadávacieho súboru xdotool a obmedzuje vrátené odpovede na 1. Tak ako v našom prípade nezáleží na tom, ktoré z ID okien sa vrátiliprogram, ktorý obmedzuje výsledok, pôsobí ako formátovač príkazu "key".Možno zistíte, že je potrebné masírovať túto časť viac, ak je to dôležité pre program, ktorý používate.
  • Časť "xdotool key -window% WINDOW_ID%" ctrl + alt + F7 "" odošle požadované stlačenie klávesu na okno, ktoré bolo získané predchádzajúcimi časťami.

Spustite skripty.

Klávesnica Mint Linux Mint skratky

V systéme Linux Mint sú globálne klávesové skratky nastavené v programe "Klávesové skratky".

Po otvorení Kliknite na "Pridať" a vytvorte nový vlastný skratku:

Zadajte jeho meno a pod príkazom "Command" zadajte úplnú cestu k jednému zo skriptov, ktoré sme vytvorili vyššie. Opakujte proces pre druhý skript.

Teraz v stĺpci "Skratky" kliknite na slovo "Zakázané", čím získate možnosť nastaviť nové kombinácie klávesov.
Poznámka: Ak chcete, môžete použiť niečo iné ako predvolené.V určitom zmysle vytvoriť "remap" na kľúčové väzby, ktoré by v závislosti od programu, ktorý používate, inak by boli mimo vašej kontroly.

Kliknite na kombináciu, ktorú ste vybrali, a počuť kúzlo.

Klávesnica Ubuntu

V programe Ubuntu sa program, ktorý nastavuje globálne klávesové skratky, jednoducho nazýva klávesnica.

Prepnite na kartu "Skratky" a zvoľte "Vlastné skratky".

Kliknutím na znamienko plus pridajte skratku. Dajte mu meno a pod príkazom "Command" uveďte úplnú cestu k jednému zo skriptov, ktoré sme vytvorili vyššie. Opakujte proces pre druhý skript.
Teraz kliknite na slovo "Disabled", čím získate možnosť nastaviť nové kombinácie klávesov.

Poznámka: Opakovaním poznámky zo sekcie Mincovňa môžete, ak chcete, použiť niečo iné ako predvolené.V určitom zmysle vytvoriť "remap" na kľúčové väzby, ktoré by v závislosti od programu, ktorý používate, inak by boli mimo vašej kontroly.

Autorské poznámky

Pokaždé, keď som vážne uvažoval o presune do Linuxu, bol tento problém prvý na mojom zozname problémov. Nie, že Linux nemá problémy, ale pre mňa to bola skutočná prekážka. Skúšal som to znova a znova, spýtal som sa na priateľov / ľudí v teréne a dokonca som to urobil ako odmenu. .. Som šťastná, že táto sága skončila a že moja duša môže nakoniec odpočívať.
Je mojou nádejou, že som niekomu pomohol tam, aby nemusel prechádzať tým istým utrpením.

Doc Brown: Trvalo mi to takmer tridsať rokov a celé moje rodinné šťastie, aby som si uvedomil víziu toho dňa. Môj Bože, bolo to tak dlho?