2Sep

Kako povezati globalne HotKeys v program WINE v Linuxu

Ste kadarkoli namestili program Windows v Linuxu pod WINE-om, samo da ugotovite, ali ne veže več sistemskih vročih ključev? HTG ima delo, ki ga iščete.

Image by djeucalyptus

Pregled

Vsakdo, ki je celo mislil na zamisel o preklopu na Linux, je verjetno zelo hitro naletel na težavo, da obstaja ta ena aplikacija za Windows, ki jo NE morate delovati.Že smo vam pokazali, da lahko to storite z uporabo WINE.

Za ta pisatelj je bila aplikacija aplikacija besedila v govor, ki uporablja Microsoft SAPI4 motor. Nameščanje programa pod WINE je bilo vetrično, vendar pa sem po zaključku hitro ugotovil, da vroče tipke, ki so uporabile za sprožitev različnih akcij programa( začetek branja, ustavljanja branja itd.), Niso delovale in da je to znanoproblem z vinom.

Vesel sem reči, da sem po eonih iskanj končno našel rešitev v obliki GNU-a, ki lahko manipulira z vmesnikom X.org z uporabo naravnih funkcij.Čeprav ni edina takšna, je xdotool tisti, ki je bil najlažji za delo in je bil že v repozitorijih Ubuntu / Mint.

xdotool

Program xdotool lahko naredi veliko nalog, povezanih z okni, iz CLI-ja, s tem pa samo dva, ki jih bomo uporabili, sta "iskanje" in "ključ".Funkcija "iskanje" naredi le to, išče ID oken / s glede na parametre, ki ste jih nastavili za to. Funkcija "ključ" vam omogoča simulacijo ključa-kapi na ID okna.

Namestitev &konfiguracija

Predpostavlja se, da ste že namestili WINE in program, ki ga potrebujete pod njim. V tem primeru bomo Balabolko uporabljali kot aplikacijo "Windows", ker je to dobra brezplačna replika prvotnega programa, ki sem jo potreboval za( drugi govorni center).

Če ste se odločili, da uporabite tudi Balabolko, morate aktivirati svojo funkcijo hotkeys.
Opomba: Morda boste želeli namestiti bodisi TTSReader ali drugi govorni center tudi v demo načinu, tako da bodo glasovi SAPI nameščeni.

Odprite program in odprite nastavitve( Shift + F6) v razdelku »Možnosti« - & gt;"Nastavitve".

Pojdite na kartico »Vroče tipke« in potrdite potrditveno polje »Uporabi globalne bližnjice«.

Kliknite V redu.

Pustite, da teče v ozadju, tako da lahko opravi svoje delo, ko ga pritrdimo s tipkami.

Namestite xdotool z izdajo:

sudo apt-get namestite xdotool

Globalni zavezujoči

Program xdotool sam po sebi ne pomaga, da se globalno povezujemo s hitrimi gumbi, vendar lahko uporabimo že obstoječi sistem za vklop / izklop operacijskega sistema OS.Kaj bomo storili, je ustvariti preprost skript, ki uporablja xdotool, da pošljete keystrokes, ki jih želimo v program Balabolka, in jo pokličemo iz sistema za bližnjico z OS.

Ustvarite skript, ki se imenuje »start_read.sh« z naslednjo vsebino: ključ

xdotool - okno $( iskanje xdotool --limit 1 - vse - pid $( pgrep balabolka) - ime Balabolka) "ctrl + alt +F9 "

Ustvarite še en skript, ki se zdaj imenuje" stop_read.sh "z naslednjo vsebino:

ključ xdotool - window $( iskanje xdotool --limit 1 --all - pid $( pgrep balabolka) - ime Balabolka)"ctrl + alt + F7 "

Opomba: Vem, da je to ena linija, ki ne zahteva skripte, vendar program Mint / Ubuntu" Keyboard Shortcuts "ni sodeloval z neposrednim klicanjem.Če veste, kako to storiti, prosimo, dajte v skupno rabo spodnje komentarje.

Z zaviranjem tega ukaza na njegove komponente, vidimo:

  • Del "-pid $( pgrep balabolka)" izvede "pgrep" v programu, ki ga želimo uporabiti, da bi ugotovili njegov ID procesa. To bo omejilo xdotool, ki je vložil "iskanje" samo v ta PID.
  • Del "xdotool search -limit 1 -all. .. -name Balabolka", še bolj omejuje področje iskanja xdotoola in omejuje vrnjene odgovore na 1. Kot v našem primeru ni pomembno, katera od ID-jev oken se vrnejoprogram, ki omejuje rezultat deluje kot oblikovalec za ukaz "ključ".Morda boste morali več masirati ta del, če je to pomembno za program, ki ga uporabljate.
  • Tipka "xdotool -window% WINDOW_ID%" ctrl + alt + F7 "", pošlje želeni pritiski na oknoID, ki so ga prejeli prejšnji deli.

Skripti izvedljivi.

Linux Mint Keyboard bližnjice

Pod Linux Mint so globalne bližnjice nastavljene v programu »Keyboard Shortcuts«.

Ko je bil odprt, kliknite »Dodaj«, da ustvarite novo bližnjico po meri:

Podajte ime in pod »Ukaz« dajte popolno pot do enega od skript, ki smo jih ustvarili zgoraj. Ponovite postopek za drugi skript.

Zdaj v stolpcu »Bližnjice« kliknite besedo »Onemogočeno«, da dobite možnost nastavitve novega kombiniranega ključa.
Opomba: če želite, lahko uporabite nekaj drugega kot privzeti program. V smislu, ki ustvarja "remap" za ključne vezi, ki bi bile odvisne od programa, ki ga uporabljate, drugače brez nadzora.

Hit kombo, ki ste jo izbrali in slišite čarobnost.

Ubuntu Keyboard

V okviru programa Ubuntu je program, ki določa globalne bližnjice, pravkar imenovan "Keyboard".

Preklopite na kartico »Bližnjice« in izberite »Bližnjice po meri«.

Kliknite znak plus, če želite dodati bližnjico. Podajte ime in pod "Ukaz" podajte celotno pot do enega od skript, ki smo jih ustvarili zgoraj. Ponovite postopek za drugi skript.
Zdaj kliknite na "Disabled" besedo, da dobite možnost, da nastavite novo kombinacijo tipk.

Opomba: ponavljajoč se na beležki iz odseka Mint lahko, če želite, uporabite nekaj drugega kot programsko privzeto. V smislu, ki ustvarja "remap" za ključne vezi, ki bi bile odvisne od programa, ki ga uporabljate, drugače brez nadzora.

Avtorske opombe

Vsakič, ko sem resno razmišljal o selitvi v Linux, je bila ta težava prva na mojem seznamu težav. Ni to, da Linux nima težav, vendar je to bila prava ovira za mene. Ponovno sem poskusil znova in znova, vprašal prijatelje / ljudi na terenu in jih celo dal v nagrado. .. Vesel sem, da je ta saga konec in da se moja duša lahko končno počiva.
Upam, da sem pomagal nekdo tam, da ni treba iti skozi isto preizkušnjo.

Doc Brown: Vzel sem me skoraj trideset let in celotno družinsko bogastvo, da sem uresničil vizijo tega dne. Moj Bog, ali je bilo tako dolgo?