Maaraynta daaqadaha beddelka ah ee Linux

Waxaan ahay mid ka mid ah kuwa dhigay Caps Lock si ay u beddelaan qaab-dhismeedka sababtoo ah aad ayaan uga caajisay inaan taabto furayaasha 2 marka aan mid riixi karo. Waxaan xitaa jeclaan lahaa 2 fure oo aan loo baahnayn: Waxaan isticmaali lahaa mid si aan u shido qaabka Ingiriisiga, iyo kan labaad ee Ruushka. Laakiin furaha labaad ee aan loo baahnayn waa in la waco menu-ka macnaha guud, taas oo aan loo baahnayn in ay gooyaan shirkado badan oo laptops ah. Markaa waa in aad ku qanacdo waxa aad haysato.

Sidoo kale ma rabo in aan ka raadiyo calaamadahooda goobta shaqada marka aan daaqadaha wareejinayo, ama aan qabsado magacyada marka aad dhex wareegayso Alt + Tab, dhex rog msktop-yada, iwm. Waxaan rabaa in aan riixo furaha isku dhafka ah (sida ugu fiican hal, laakiin ma jiraan furayaal bilaash ah oo aan loo baahnayn) oo isla markiiba u hel daaqadda aan u baahanahay. Tusaale ahaan sidan:

  • Alt+F: Firefox
  • Alt+D: Firefox (raadinta gaarka ah)
  • Alt+T: Terminalka
  • Alt+M: Xisaabiyaha
  • Alt+E: Fikradda IntelliJ
  • iwm.

Waxaa intaa dheer, adigoo riixaya, tusaale ahaan, shid Alt+M Waxaan rabaa in aan arko xisaabiyaha iyada oo aan loo eegin in barnaamijkani uu hadda socdo. Haddii ay socoto, markaa daaqadeeda waxay u baahan tahay in la siiyo diiradda, haddii kale, socodsii barnaamijka la rabo iyo wareejinta diiradda marka ay soo baxdo.

Kiisaska aan lagu daboolin qoraalkii hore, waxaan rabaa in aan haysto fureyaal caalami ah oo isku dhafan kuwaas oo si fudud loogu meelayn karo mid ka mid ah daaqadaha furan. Tusaale ahaan, waxaan haystaa 10 isku-dar ah oo laga soo qaatay Alt + 1 si ay u Alt + 0, kuwaas oo aan ku xidhnayn wax barnaamij ah. Kaliya waan riixi karaa Alt + 1 iyo daaqada hadda diiradda saaran waxay heli doontaa diiradda marka la gujiyo Alt + 1.

Goynta hoosteeda waxaa ku yaal sharraxaadda lamaane astaamo dheeraad ah iyo jawaab sida tan loo samayn karo. Laakiin waxaan isla markiiba kaaga digayaa in is-beddelka noocan oo kale ah "naftaada" ay sababi karto qabatinka daran iyo xitaa ka bixitaanka haddii aad u baahan tahay inaad isticmaasho Windows, Mac OS ama xitaa kombuyuutar qof kale leh Linux.

Xaqiiqdii, haddii aad ka fikirto, ma isticmaalno barnaamijyo badan maalin kasta. browser, terminal, IDE, nooc ka mid ah fariinta, maamulaha faylka, xisaabiyaha iyo, laga yaabee, taasi waa ku dhawaad. Uma baahnid fur-gaabyada kiiboodhka badan si aad u daboosho 95% ee hawl maalmeedkaaga.

Barnaamijyada leh dhowr daaqadood oo furan, mid ka mid ah ayaa loo magacaabi karaa midka ugu weyn. Tusaale ahaan, waxaad haysataa dhowr daaqadood oo IntelliJ Idea ah oo furan oo loo qoondeeyay Alt + E. Xaaladaha caadiga ah, markaad riixdo Alt + E Qaar ka mid ah daaqadaha barnaamijkan ayaa furmi doona, waxay u badan tahay midkii markii hore la furay. Si kastaba ha ahaatee, haddii aad gujiso Alt + E marka mid ka mid ah daaqadaha barnaamijkan uu horeyba diirada u saaran yahay, markaa daaqadan gaarka ah ayaa loo qoondeyn doonaa kan ugu muhiimsan waxayna noqon doontaa midka la siin doono diiradda marka la isku daro xiga.

Daaqada ugu weyn ayaa dib loo habeyn karaa. Si tan loo sameeyo, waa inaad marka hore dib u dajinaysaa isku-darka, ka dibna aad u qoondayso daaqad kale oo ah daaqadda ugu weyn. Si aad dib u dejiso isku-dhafka, waxaad u baahan tahay inaad riixdo isku-dhafka laftiisa, ka dibna dib-u-dejin gaar ah, waxaan u qoondeeyey Alt+Backspace. Tani waxay wici doontaa qoraal ka soo saari doona daaqadda ugu weyn isku darka hore. Kadibna waxaad ku meelayn kartaa daaqad cusub oo weyn sida lagu qeexay cutubka hore. Dib u dejinta daaqad ku xidhan isku darka caalamiga ah waxay u dhacdaa si la mid ah.

Hordhacu wuxuu noqday mid dheer, laakiin waxaan rabay in aan marka hore sheego waxa aan sameyn doono, ka dibna aan sharaxo sida loo sameeyo.

Kuwa akhriska ku daalay

Marka la soo koobo, isku xirka qoraallada waa dhamaadka maqaalka.

Laakiin weli ma awoodid inaad rakibto oo isla markiiba isticmaasho. Marka hore waa inaad ogaataa sida qoraalku u helo daaqadda la rabo. Taas la'aanteed, suurtagal ma noqon doonto in la sheego qoraalka meesha saxda ah ee diiradda loo baahan yahay in lagu wareejiyo. Oo waxaad u baahan tahay inaad fahamto waxa la sameeyo haddii si lama filaan ah aan loo helin daaqad ku habboon.

Aniguna diiradda ma saari doono sida loo habeeyo fulinta qoraallada adigoo riixaya isku-dhafka muhiimka ah. Tusaale ahaan, gudaha KDE waxay ku jirtaa Nidaamka Nidaamka β†’ Shortcuts β†’ Gaabannada gaarka ah. Tani waa inay sidoo kale ku noqotaa maamulayaasha kale ee daaqadaha.

Hordhaca wmctrl

Wmctrl - Utility console ee la falgalka Maareeyaha Daaqadda X. Kani waa barnaamijka muhiimka ah ee qoraalka. Aynu si degdeg ah u eegno sida aad u isticmaali karto.

Marka hore, aan soo bandhigno liiska daaqadaha furan:

$ wmctrl -lx
0x01e0000e -1 plasmashell.plasmashell             N/A Desktop β€” Plasma
0x01e0001e -1 plasmashell.plasmashell             N/A Plasma
0x03a00001  0 skype.Skype                         N/A Skype
0x04400003  0 Navigator.Firefox                   N/A Google ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊ - Mozilla Firefox
0x04400218  0 Navigator.Firefox                   N/A Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π·Π° сутки / Π₯Π°Π±Ρ€ - Mozilla Firefox (Private Browsing)
...

Ikhtiyaar -l soo bandhigaya liiska dhammaan daaqadaha furan, iyo -Ρ… waxay ku dhejisaa magaca fasalka wax soo saarka (skype.Skype, Navigator.Firefox iwm). Halkan waxaan u baahanahay aqoonsiga daaqada (column 1), magaca fasalka (column 3) iyo magaca daaqada (calanka u dambeeya).

Waxaad isku dayi kartaa inaad kiciso qaar ka mid ah daaqadaha adoo isticmaalaya ikhtiyaarka -a:

$ wmctrl -a skype.Skype -x

Haddii wax waliba u dhaceen sidii qorshuhu ahaa, daaqada Skype waa in ay ka muuqataa shaashadda. Haddii halkii doorashada -x isticmaal doorasho -i, ka dibna halkii magaca fasalka waxaad cayimi kartaa id daaqadda. Dhibaatada id ayaa ah in daaqada id ay isbedesho mar kasta oo codsiga la soo saaro oo aanan horay u ogaan karin. Dhanka kale, sifadani waxay si gaar ah u aqoonsanaysaa daaqad, taas oo noqon karta mid muhiim ah marka codsigu furo wax ka badan hal daaqad. Wax badan oo arrintan ku saabsan wax yar ka sii dheer.

Marxaladdan waxaan u baahannahay inaan xasuusanno inaan raadin doono daaqadda la rabo iyadoo la adeegsanayo regex by saarka wmctrl -lx. Laakiin taasi macnaheedu maaha inaan isticmaalno wax adag. Badanaa magaca fasalka ama magaca daaqada ayaa ku filan.

Asal ahaan, fikradda ugu weyn waa inay mar hore noqotaa mid cad. Goobaha kululeeyaha/hab-gaabyada caalamiga ah ee maamulaha daaqadaada, habee isku darka loo baahan yahay si loo fuliyo qoraalka.

Sida loo isticmaalo qoraallada

Marka hore waxaad u baahan tahay inaad rakibto utilities console wmctrl ΠΈ xdotool:

$ sudo apt-get install wmctrl xdotool

Marka xigta waxaad u baahan tahay inaad soo dejiso qoraallada oo aad ku darto $ JIDKA. Caadi ahaan waan geliyaa ~/bin:

$ cd ~/bin
$ git clone https://github.com/masyamandev/Showwin-script.git
$ ln -s ./Showwin-script/showwin showwin
$ ln -s ./Showwin-script/showwinDetach showwinDetach

Haddi tusaha ~/bin halkaas ma joogin, markaa waxaad u baahan tahay inaad abuurto oo aad dib u bilowdo (ama dib u gasho), haddii kale ~/bin ma garaaci doono $ JIDKA. Haddii wax walba si sax ah loo sameeyo, markaa qoraallada waa in laga heli karaa console-ka iyo dhamaystirka Tabku waa inuu shaqeeyaa.

Qoraalka ugu muhiimsan showwin wuxuu qaataa 2beeg: ka hore waa regex, kaas oo aan ku raadin doono daaqada loo baahan yahay, qiyaasta labaadna waa amar u baahan in la fuliyo haddii aan la helin daaqaddii loo baahnaa.

Waxaad isku dayi kartaa inaad socodsiiso qoraal, tusaale ahaan:

$ showwin "Mozilla Firefox$" firefox

Haddii Firefox la rakibo, daaqadeeda waa in diirada la saaraa. Xitaa haddii Firefox uusan shaqayn, waxay ahayd inay bilowdo.

Haddii ay shaqeyso, markaa waxaad isku dayi kartaa inaad dejiso fulinta amarrada isku-dhafka. Ku dar furayaasha kulul ee caalamiga ah/goobaha gaaban

  • Alt + F: showwin "Mozilla Firefox$" Firefox
  • Alt+D: showwin "Mozilla Firefox (Browsing Private)$" "firefox -private-window"
  • Alt+C: showwin "chromium-browser.Chromium-browser N*" chromium-browser
  • Alt+X: showwin "chromium-browser.Chromium-browser I*" "chromium-browser -incognito"
  • Alt+S: showwin "skype.Skype" skypeforlinux
  • Alt+E: showwin "jetbrains-idea" fikrad.sh

Iwm. Qof kastaa wuxuu u habeyn karaa isku-dhafka muhiimka ah iyo software sida ay u arkaan inay ku habboon tahay.
Haddii wax waliba si sax ah u shaqeeyeen, ka dib isticmaalka isku-dhafka kor ku xusan waxaan awood u yeelan doonaa inaan u kala beddelno daaqadaha adigoo si fudud u riixaya furayaasha.

Waxaan niyad jabin doonaa kuwa jecel chrome: waxay si qarsoodi ah u kala saari kartaa daaqadda caadiga ah soo saarkeeda wmctrl Ma awoodid, waxay leeyihiin magacyo isku mid ah iyo cinwaan daaqadeed. Regex-ka la soo jeediyay, jilayaasha N * iyo I * ayaa loo baahan yahay oo keliya si ay tibaaxahan joogtada ahi uga duwan yihiin midba midka kale waxaana loo qoondayn karaa daaqadaha waaweyn.

Si aad dib ugu dejiso daaqada ugu weyn ee isku darka hore (xaqiiqda regex, taas oo showwin loo yaqaan markii ugu dambeysay) waxaad u baahan tahay inaad wacdo qoraalka showwinDetach. Waxaan haystaa qoraalkan loo qoondeeyay isku darka muhiimka ah Alt+Backspace.

Xagga qoraalka showwin waxaa jira hal shaqo oo kale. Marka loogu yeero halbeeg (xaaladdan halbeegtu waa aqoonsi), ma hubiso regex gabi ahaanba, laakiin waxay tixgelisaa dhammaan daaqadaha inay ku habboon yihiin. Laftigeeda, tani waxay u muuqataa mid aan faa'iido lahayn, laakiin habkan waxaan u magacaabi karnaa daaqad kasta inay tahay kan ugu muhiimsan oo si degdeg ah ugu beddelanno daaqaddaas gaarka ah.

Waxaan haystaa isku-dhafkan soo socda:

  • Alt+1: showwin "CustomKey1"
  • Alt+2: showwin "CustomKey2"
  • ...
  • Alt+0: showwin "CustomKey0"
  • Alt+Backspace: showwinDetach

Sidan ayaan dariishado kasta ku xidhi karaa isku-darka Alt + 1...Alt + 0. Kaliya adigoo gujinaya Alt + 1 Waxaan ku xirayaa daaqada hadda jirta isku dhafkan. Waxaan joojin karaa xidhitaanka anigoo gujinaya Alt + 1ka dibna Alt+Backspace. Ama xidh daaqadda, taas oo sidoo kale shaqaynaysa.

Marka xigta waxaan kuu sheegi doonaa faahfaahin farsamo. Uma baahnid inaad akhrido, laakiin isku day inaad dejiso oo aad aragto. Laakin wali waxaan ku talin lahaa in aad fahanto qoraalada dadka kale ka hor inta aanad ku shubin kombayutarka :).

Sida loo kala saaro daaqadaha kala duwan ee isla codsiga

Mabda 'ahaan, tusaalaha ugu horreeya "wmctrl -a skype.Skype -x" wuu shaqaynayey waana la isticmaali karaa. Laakiin aan mar kale eegno tusaalaha Firefox, kaas oo 2 daaqadood ay furan yihiin:

0x04400003  0 Navigator.Firefox                   N/A Google ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊ - Mozilla Firefox
0x04400218  0 Navigator.Firefox                   N/A Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π·Π° сутки / Π₯Π°Π±Ρ€ - Mozilla Firefox (Private Browsing)

Daaqada koowaad waa hab caadi ah, ka labaadna waa Browsing Private. Waxaan jeclaan lahaa inaan u tixgeliyo daaqadahaas codsiyo kala duwan oo aan u beddelo iyaga oo isticmaalaya isku-dhafka muhiimka ah ee kala duwan.

Waa lagama maarmaan in la adkeeyo qoraalka beddelaya daaqadaha. Waxaan isticmaalay xalkan: soo bandhig liiska dhammaan daaqadaha, samee dufan by regex, qaado line ugu horeysay la madaxa, hel tiirka koowaad (tani waxay noqon doontaa id daaqadda) adoo isticmaalaya cut, u beddel daaqada id.

Waa in lagu kaftamaa tibaaxaha caadiga ah iyo laba dhibaato, laakiin dhab ahaantii anigu ma isticmaalayo wax adag. Waxaan u baahanahay tibaaxo joogto ah si aan u tilmaamo dhamaadka xariiqda (calamada β€œ$”) oo aan kala saaro β€œMozilla Firefox$” iyo β€œMozilla Firefox (Browsing Private)$”.

Amarku wuxuu u eg yahay sidan:

$ wmctrl -i -a `wmctrl -lx | grep -i "Mozilla Firefox$" | head -1 | cut -d" " -f1`

Halkan waxaad horeyba u qiyaasi kartaa muujinta labaad ee qoraalka: haddii grep uusan soo celin wax, markaa codsiga la rabo ma furna oo waxaad u baahan tahay inaad ku bilowdo adigoo fulinaya amarka ka soo baxa qiyaasta labaad. Kaddibna mar mar iska hubi in daaqaddii loo baahnaa uu furmay si diiradda loogu wareejiyo. Anigu arrintan diiradda saari maayo; qof kasta oo u baahan wuxuu eegi doonaa ilaha.

Marka codsiga daaqadaha aan la kala saari karin

Marka, waxaan baranay sida loogu wareejiyo diiradda daaqadda codsiga la rabo. Laakiin maxaa dhacaya haddii codsigu leeyahay wax ka badan hal daaqad oo furan? Midkee ayaan diirada siinayaa? Qoraalka kore waxay u badan tahay inuu u wareejin doono daaqada furan ee ugu horeysa. Si kastaba ha ahaatee, waxaan jeclaan lahayn dabacsanaan badan. Waxaan jeclaan lahaa inaan xasuusto daaqada aan u baahanahay oo aan u wareego daaqada gaarka ah.

Fikradda ayaa ahayd tan: Haddii aan rabno inaan xasuusano daaqad gaar ah oo loogu talagalay isku-dhafka muhiimka ah, markaa waxaan u baahannahay inaan riixno isku-dhafkan marka daaqadda la rabo diiradda la saaro. Mustaqbalka, markaad riixdo isku-dhafkan, diiradda ayaa la siin doonaa daaqadan. Ilaa uu daaqadu xidhmo ama aanu dib u dajin u samayno isku darka qoraalkan showwinDetach.

Algorithm Script showwin wax sida tan:

  • Hubi haddii aan hore u xasuusannay id-ka daaqadda oo diiradda loo wareejinayo.
    Haddii aad xasuusato oo daaqad noocan oo kale ah ay weli jirto, markaa waxaanu u wareejinaa diiradda oo ka baxnaa.
  • Waxaan eegnaa daaqada hadda diiradda la saarayo, iyo haddii ay ku habboon tahay codsigayaga, ka dibna xasuuso idkeeda si aad u tagto mustaqbalka oo aad uga baxdo.
  • Waxaan aadeynaa ugu yaraan qaar ka mid ah daaqadaha ku haboon haddii ay jiraan ama furto codsiga la rabo.

Waxaad ku ogaan kartaa daaqada hadda diiradda lagu saarayo addoo isticmaalaya xdotool console utility adiga oo wax soo saarkiisa u beddelaya qaab hexadecimal:

$ printf "0x%08x" `xdotool getwindowfocus`

Habka ugu fudud ee lagu xasuusan karo wax ku jira bash waa in la abuuro faylasha nidaamka faylalka farsamada ee ku yaal xusuusta. Gudaha Ubuntu tan waxaa loo sahlay si default ah /dev/shm/. Waxba kama sheegi karo qaybinta kale, waxaan rajeynayaa inay jiraan wax la mid ah sidoo kale. Waxaad ku eegi kartaa amarka:

$ mount -l | grep tmpfs

Qoraalku wuxuu ku dhex abuuri doonaa hagayaal madhan galkan, sida tan: /dev/shm/$USER/ showwin/$SEARCH_REGEX/$WINDOW_ID. Intaa waxaa dheer, mar kasta oo la yiraahdo waxay abuuri doontaa calaamad /dev/shm/$USER/showwin/showwin_last on /dev/shm/$USER/ showwin/$SEARCH_REGEX. Tan waxaa loo baahan doonaa si, haddii loo baahdo, meesha looga saaro id daaqadda isku darka qaarkood iyadoo la isticmaalayo script showwinDetach.

Maxaa la hagaajin karaa

Marka hore, qoraallada waa in gacanta lagu habeeyaa. Hubaal, sababtoo ah baahida loo qabo in la dhex galo oo aad wax badan ku qabato gacmahaaga, qaar badan oo idinka mid ah xitaa iskuma dayi doonaan inay habeeyaan nidaamka. Haddii ay suurtagal ahayd in si fudud loo rakibo xirmada oo wax walba si fudud loo habeeyo, markaa waxaa laga yaabaa inay hesho qaar caan ah. Ka dibna fiiri, codsiga waxaa loo sii dayn doonaa qaybinta caadiga ah.

Waxaana laga yaabaa in si fudud loo samayn karo. Haddii id ee daaqada aad ka heli karto id habka loo abuuray, iyo id ee habka waxaad ku ogaan kartaa amarka abuuray, markaas waxaa suurtagal ah in si otomaatig ah loo sameeyo. Runtii, maan fahmin waxa aan ku qoray cutubkan inay suurtogal yihiin iyo in kale. Xaqiiqdu waxay tahay in aan anigu shakhsi ahaan ku qanacsanahay qaabka ay hadda u shaqeyso. Laakiin haddii qof aan aniga ahayn uu u helo habka oo dhan mid ku habboon oo qof hagaajiyo, markaa waan ku farxi doonaa inaan isticmaalo xal ka fiican.

Dhibaato kale, sidaan horeba u qoray, waa in xaaladaha qaarkood daaqadaha aan la kala saari karin midba midka kale. Ilaa hadda waxaan kaliya ku arkay tan iyada oo qarsoodi ah chrome/chromium, laakiin laga yaabee inay jiraan wax la mid ah meel kale. Sida ugu dambeeya, had iyo jeer waxaa jira ikhtiyaarka isku-dhafka caalamiga ah Alt + 1...Alt + 0. Mar labaad, waxaan isticmaalaa Firefox iyo aniga shakhsi ahaan dhibaatadani maaha mid muhiim ah.

Laakiin dhibaatada ugu weyn aniga ayaa ah inaan u isticmaalo Mac OS shaqada oo aanan wax la mid ah halkaas ku habeyn karin. utility wmctrl Waxaan u maleynayaa inaan awooday inaan ku rakibo, laakiin runtii kuma shaqeyso Mac OS. Wax baa lagu samayn karaa codsiga Baabuur, laakiin waa mid aad u gaabis ah oo aan ku habboonayn in la isticmaalo xitaa marka uu shaqeynayo. Sidoo kale ma aan dejin karin isku-dhafka muhiimka ah si ay uga shaqeeyaan dhammaan barnaamijyada. Haddii qof si lama filaan ah ula yimaado xal, waan ku farxi doonaa inaan isticmaalo.

Halkii gabagabo

Waxay u soo baxday inay noqdaan tiro badan oo kelmadood oo lama filaan ah oo u muuqda hawl fudud. Waxa aan rabay in aan dhiibo fikradda oo aan qoraalka ku xad-gudbin, laakiin weli maan fahmin sidii aan si fudud ugu sheegi lahaa. Waxaa laga yaabaa inay ku fiicnaan lahayd qaabka muuqaalka, laakiin dadku ma jecla sidaas halkan.

Waxaan ka hadlay wax yar oo ku saabsan waxa ku hoos jira qoraalka iyo sida loo habeeyo. Ma aan gelin faahfaahinta qoraalka laftiisa, laakiin waa 50 sadar oo keliya, markaa ma adka in la fahmo.

Waxaan rajeynayaa in qof kale uu isku dayo fikradan oo laga yaabo inuu xitaa qadariyo. Waxaan naftayda ka odhan karaa qoraalka waxaa la qoray qiyaastii 3 sano ka hor aad buuna iigu habboon yahay. Way ku habboon tahay in ay keento raaxo-darro daran marka aad la shaqaynayso kombuyuutarrada dadka kale. Iyo MacBook shaqaynaya.

Isku xirka qoraallada

Source: www.habr.com

Add a comment