Te whakahaere matapihi rereke i Linux

Ko ahau tetahi o te hunga i whakatakoto i te Caps Lock ki te huri i nga whakatakotoranga na te mea he mangere ahau ki te pehi i nga taviri e 2 ka taea e au te pehi i tetahi. E hiahia ana ahau kia 2 nga taviri kore e tika: Ka whakamahia e ahau tetahi ki te huri i te whakatakotoranga reo Ingarihi, me te tuarua mo te reo Ruhia. Engari ko te rua o nga taviri e kore e tika ko te karanga ake i te tahua horopaki, he mea kore rawa e tapahia e te maha o nga kaihanga pona. Na me noho koe ki nga mea kei a koe.

A kaore hoki au e hiahia ki te rapu i o raatau tohu i runga i te pae mahi ka huri i nga matapihi, ka hopu ranei i nga ingoa ina panuku Alt + Tab, panuku i roto i nga papamahi, me etahi atu. E hiahia ana ahau ki te pehi i tetahi huinga matua (ko te mea pai kia kotahi, engari kaore he kii kore utu i muri mai) ka tae tonu ki te matapihi e hiahia ana ahau. Hei tauira penei:

  • Alt+F: Firefox
  • Alt+D: Firefox (Tirotiro Whaiaro)
  • Alt+T: Kāpeka
  • Alt+M: Tātaitai
  • Alt+E: IntelliJ Idea
  • etc.

Ano, ma te pehi, hei tauira, i runga Alt+M Kei te pirangi au ki te kite i te tatauranga ahakoa kei te haere tonu tenei papatono. Mena kei te rere, katahi ka hiahia kia arotahi tona matapihi, a ki te kore, whakahaere i te kaupapa e hiahiatia ana me te whakawhiti i te arotahi ina utaina.

Mo nga keehi kaore i hipokina e te tuhinga o mua, e hiahia ana ahau ki te whai i nga huinga matua o te ao ka taea te tuku ngawari ki tetahi o nga matapihi tuwhera. Hei tauira, 10 aku huinga kua tohua mai i Alt + 1 ki Alt + 0, e kore e herea ki tetahi kaupapa. Ka taea e au te paato noa Alt + 1 a ko te matapihi kei te arotahi i tenei wa ka arotahi ka paatohia Alt + 1.

Kei raro i te tapahi he whakaahuatanga mo etahi atu waahanga me te whakautu me pehea te mahi. Engari ka whakatupato tonu ahau ki a koe ko taua whakaritenga "mo koe" ka taea te whakararu kino me te tango mai mena ka hiahia koe ki te whakamahi i te Windows, Mac OS me te rorohiko a tetahi atu me Linux.

Inaa, ki te whakaaro koe, kaore matou e whakamahi i nga kaupapa maha i ia ra. He kaitirotiro, he tauranga, he IDE, he momo karere, he kaiwhakahaere konae, he tatauranga, he tata katoa. He iti noa nga huinga matua e hiahiatia ana hei kapi i te 95% o nga mahi o ia ra.

Mo nga papatono he maha nga matapihi e tuwhera ana, ko tetahi o enei ka taea te tohu ko te mea matua. Hei tauira, he maha nga matapihi IntelliJ Idea e tuwhera ana, kua tohua ki Alt + E. I raro i nga tikanga noa, ka pehi koe Alt + E ka tuwhera etahi matapihi o tenei papatono, tera pea ko tera i tuwhera tuatahi. Heoi, ki te panui koe Alt + E i te wa e arotahi ana tetahi o nga matapihi o tenei papatono, katahi ka tautapahia tenei matapihi ko te mea matua ko te mea ka arohia ina pehia nga huinga o muri mai.

Ka taea te huri i te matapihi matua. Hei mahi i tenei, me tautuhi ano koe i te huinga, katahi ka tohua he matapihi ano hei matapihi matua. Hei tautuhi i tetahi huinga, me pehi koe i te huinga ake, katahi ka tohua he huinga tautuhi motuhake, kua tohua e au ki Alt + Papamuri. Ka karangahia he tuhinga ka whakakorehia te matapihi matua mo te huinga o mua. Na ka taea e koe te tautapa i tetahi matapihi matua hou pera i te korero i te waahanga o mua. Ko te tautuhi i te matapihi hono ki nga pahekotanga o te ao ka pera ano.

I puta mai he roa te whakataki, engari i hiahia ahau ki te korero i te tuatahi ka aha tatou, katahi ka whakamarama me pehea te mahi.

Mo te hunga e ngenge ana ki te panui

Hei poto, ko te hono ki nga tuhinga kei te mutunga o te tuhinga.

Engari kaore e taea e koe te whakauru me te whakamahi tonu. Tuatahi me whakaaro koe me pehea e kitea ai e te tuhinga te matapihi e hiahiatia ana. Ki te kore tenei, e kore e taea te korero ki te tuhinga kei hea tika te arotahi ki te whakawhiti. A me maarama koe he aha te mahi mena kaore i kitea he matapihi pai.

A kaore au e aro ki te whirihora i te mahinga o nga tuhinga ma te pehi i nga huinga matua. Hei tauira, kei KDE kei roto i nga Tautuhinga Pūnaha → Pokatata → Nga Pokatata Ritenga. Me penei ano te ahua o etahi atu kaiwhakahaere matapihi.

Te whakauru wmctrl

Wmctrl — taputapu papatohu mo te taunekeneke me te Kaiwhakahaere Matapihi X. Koinei te kaupapa matua mo te tuhinga. Kia ata titiro me pehea e taea ai e koe te whakamahi.

Tuatahi, me whakaatu he rarangi o nga matapihi tuwhera:

$ 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)
...

Kōwhiringa -l ka whakaatu i te rarangi o nga matapihi tuwhera katoa, a ka apiti i te ingoa o te akomanga ki te putanga (skype.Skype, Kaiwhakatere.Firefox etc). I konei ka hiahia tatou i te matapihi id (tīwae 1), ingoa akomanga (tīwae 3) me te ingoa matapihi (tīwae whakamutunga).

Ka taea e koe te ngana ki te whakahohe i etahi matapihi ma te whakamahi i te whiringa -a:

$ wmctrl -a skype.Skype -x

Mena i rite nga mea katoa ki te mahere, me puta te matapihi Skype ki te mata. Mena hei utu mo te whiringa -x whakamahi kōwhiringa -i, hei utu mo te ingoa o te akomanga ka taea e koe te tohu i te matapihi id. Ko te raru o te id ko te huri i te matapihi id i nga wa katoa ka whakarewahia te tono kaore e taea te mohio i mua. I tetahi atu taha, ko tenei huanga he tohu motuhake i tetahi matapihi, he mea nui ka whakatuwherahia e tetahi tono neke atu i te kotahi matapihi. He iti ake te korero mo tenei.

I tenei wahanga me mahara tatou ka rapuhia e tatou te matapihi e hiahiatia ana ma te whakamahi i te regex ma te whakaputa wmctrl -lx. Engari ehara i te mea me whakamahi tatou i tetahi mea uaua. Ko te tikanga he rawaka te ingoa o te akomanga, te ingoa matapihi ranei.

Ko te tikanga, me tino marama te whakaaro matua. I roto i nga tautuhinga hotkey/pokatata mo to kaiwhakahaere matapihi, whirihorahia te huinga e hiahiatia ana hei mahi i te tuhinga.

Me pehea te whakamahi i nga tuhinga

Tuatahi me whakauru koe i nga taputapu papatohu wmctrl и xdotool:

$ sudo apt-get install wmctrl xdotool

I muri mai me tango e koe nga tuhinga me te taapiri atu ki $ PATH. I te nuinga o te wa ka whakauruhia e ahau ~/bin:

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

Mena te whaiaronga ~/bin kaore i reira, katahi ka hiahia koe ki te waihanga me te whakaara ano (whakauru ano ranei), ki te kore ~/bin e kore e patua $ PATH. Mena ka tika nga mea katoa, katahi ka uru mai nga tuhinga mai i te papatohu me mahi te otinga Ripa.

Tuhituhi matua showwin e 2 nga tawhā: ko te tuatahi he regex, ma reira ka rapua e matou te matapihi e hiahiatia ana, ko te taapiri tuarua he whakahau e tika ana kia mahia mena kaore i kitea te matapihi e hiahiatia ana.

Ka taea e koe te ngana ki te whakahaere tuhinga, hei tauira:

$ showwin "Mozilla Firefox$" firefox

Mena kua whakauruhia a Firefox, me arotahi te matapihi. Ahakoa kaore a Firefox i rere, me timata.

Mena ka mahi, ka taea e koe te ngana ki te whirihora i te mahi o nga whakahau i runga i nga huinga. I roto i nga tautuhinga o nga patene / pokatata o te ao taapirihia:

  • Alt+F: whakaatu i te “Mozilla Firefox$” firefox
  • Alt+D: showwin "Mozilla Firefox (Tirotiro Whaiaro)$" "firefox -private-window"
  • Alt+C: whakaatuwini "chromium-browser.Chromium-browser N*" chromium-browser
  • Alt+X: showwin "chromium-pūtirotiro.Chromium-pūtirotiro I*" "chromium-pūtirotiro -incognito"
  • Alt+S: showwin “skype.Skype” skypeforlinux
  • Alt+E: showwin “jetbrains-idea” idea.sh

Etc. Ka taea e nga tangata katoa te whirihora i nga huinga matua me nga rorohiko i runga i ta ratou e pai ai.
Mena i pai nga mea katoa, ka whakamahi i nga huinga o runga ake nei ka taea e tatou te huri i waenga i nga matapihi ma te pehi noa i nga taviri.

Ka whakama ahau i te hunga e aroha ana ki te chrome: ka taea e ia te wehewehe i te matapihi ma te whakaputanga wmctrl Kaore e taea e koe, he rite tonu nga ingoa akomanga me nga taitara matapihi. I roto i te regex e whakaarohia ana, ko nga tohu N* me ahau anake e hiahiatia ana kia rereke enei kii i a raatau ano ka taea te whakarite hei matapihi matua.

Hei tautuhi i te matapihi matua o te huinga o mua (he pono mo te regex, e showwin i karangahia i te wa whakamutunga) me waea koe i te tuhinga showwinDetach. Kua tohua tenei tuhinga ki tetahi huinga matua Alt + Papamuri.

I te tuhinga showwin he mahi ano. Ina karangahia me te tawhā kotahi (i tenei keehi he tohu noa te tawhā), kaore e tirohia te regex katoa, engari ka whakaarohia he pai nga matapihi katoa. I roto i a ia ano, he ahua horihori tenei, engari ma tenei ka taea e tatou te tohu i tetahi matapihi ko te mea matua ka huri tere ki tera matapihi.

Kua whirihorahia e au nga huinga e whai ake nei:

  • Alt+1: showwin "Key Ritenga1"
  • Alt+2: showwin "Key Ritenga2"
  • ...
  • Alt+0: showwin "Key Ritenga0"
  • Alt+Backspace: showwinDetach

Ma tenei ka taea e au te here i nga matapihi ki nga huinga Alt + 1...Alt + 0. Ma te panui noa Alt + 1 Ka herea e ahau te matapihi o naianei ki tenei huinga. Ka taea e au te whakakore i te herenga ma te panui Alt + 1ko reira hoki Alt + Papamuri. Katia ranei te matapihi, ka mahi ano.

I muri mai ka korerotia e ahau etahi korero hangarau. Kaore koe e panui, engari me ngana ki te whakarite kia kite. Engari ka tūtohu tonu ahau kia mohio koe ki nga tuhinga a etahi atu i mua i te whakahaere i runga i to rorohiko :).

Me pehea te wehewehe i nga matapihi rereke o te tono kotahi

Ko te tikanga, ko te tauira tuatahi "wmctrl -a skype.Skype -x" i mahi ka taea te whakamahi. Engari kia titiro ano tatou ki te tauira me Firefox, e rua nga matapihi e tuwhera ana:

0x04400003  0 Navigator.Firefox                   N/A Google Переводчик - Mozilla Firefox
0x04400218  0 Navigator.Firefox                   N/A Лучшие публикации за сутки / Хабр - Mozilla Firefox (Private Browsing)

Ko te matapihi tuatahi he aratau noa, ko te tuarua ko te Tirotiro Whaiaro. E hiahia ana ahau ki te whakaaro ki enei matapihi he tono rereke ka huri ki a raatau ma te whakamahi i nga huinga matua rereke.

He mea tika ki te whakararu i te tuhinga e huri ana i nga matapihi. I whakamahia e ahau tenei otinga: whakaatu he rarangi o nga matapihi katoa, mahi Tuhinga o mua na regex, tangohia te rarangi tuatahi me upoko, tiki i te tīwae tuatahi (koinei te matapihi id) ma te whakamahi tapahia, huri ki te matapihi ma te id.

Me waiho he kata mo nga korero auau me nga raruraru e rua, engari ko te mea kaore au i te whakamahi i tetahi mea uaua. Kei te hiahia ahau ki nga korero auau kia taea ai e au te tohu i te mutunga o te raina (te tohu "$") me te wehewehe "Mozilla Firefox$" mai i "Mozilla Firefox (Tirotiro Whaiaro)$".

He penei te ahua o te whakahau:

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

I konei ka taea e koe te whakaaro mo te waahanga tuarua o te tuhinga: ki te kore e whakahokia mai e te grep tetahi mea, kaore e tuwhera te tono e hiahiatia ana, me timata koe ma te whakahaere i te whakahau mai i te waahanga tuarua. Na ka tirohia i ia wa kua whakatuwherahia te matapihi e hiahiatia ana hei whakawhiti i te arotahi ki reira. E kore ahau e aro ki tenei; ko te tangata e hiahia ana ka titiro ki nga puna.

A, no te kore e kitea nga matapihi tono

Na, kua ako matou ki te whakawhiti arotahi ki te matapihi o te tono e hiahiatia ana. Engari ka pehea mena he nui ake i te kotahi te matapihi tuwhera o tetahi tono? Ko tehea tetahi me arotahi ahau? Ko te tuhinga i runga ake nei ka whakawhiti ki te matapihi tuwhera tuatahi. Heoi, e hiahia ana matou kia ngawari ake. Kei te pirangi au ki te mahara ko tehea matapihi e hiahiatia ana ka huri ki tera matapihi.

Ko te whakaaro ko tenei: Ki te hiahia tatou ki te maumahara i tetahi matapihi motuhake mo te huinga matua, katahi ka pehihia tenei huinga i te wa e arotahi ana te matapihi e hiahiatia ana. I te wa kei te heke mai, ka pehia e koe tenei huinga, ka tukuna te arotahi ki tenei matapihi. Kia kati ra ano te matapihi, ka mahia ranei he tautuhi mo tenei huinga tuhinga showwinDetach.

Hātepe Hōtuhi showwin tetahi mea penei:

  • Tirohia mehemea kua maumahara matou ki te id o te matapihi e tika ana kia whakawhitia te arotahi.
    Mena ka mahara koe kei te noho tonu tenei matapihi, ka whakawhitihia te arotahi ki reira ka puta.
  • Ka titiro tatou ko tehea matapihi e aro ana i tenei wa, a ki te rite ki ta maatau tono, katahi ka mahara ki tana id kia haere ki reira a muri ake nei ka puta.
  • Ka haere matou ki etahi matapihi pai mena kei te noho, ka whakatuwhera ranei i te tono e hiahiatia ana.

Ka kitea e koe ko tehea matapihi kei te arotahi inaianei ma te whakamahi i te whaipainga papatohu xdotool ma te huri i tana putanga ki te whakatakotoranga hexadecimal:

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

Ko te huarahi ngawari ki te mahara ki tetahi mea i roto i te bash ko te hanga i nga konae kei roto i te punaha konae mariko kei roto i te mahara. I Ubuntu ka taea tenei ma te taunoa i roto /dev/shm/. Kaore e taea e au te korero mo etahi atu tohatoha, kei te tumanako ahau tera ano tetahi mea. Ka taea e koe te titiro me te whakahau:

$ mount -l | grep tmpfs

Ka waihangahia e te tuhinga nga whaiaronga kau ki tenei kōpaki, penei: /dev/shm/$USER/showwin/$SEARCH_REGEX/$WINDOW_ID. I tua atu, ia wa e kiia ana ka hangaia he hononga hono /dev/shm/$USER/showwin/showwin_last i runga i /dev/shm/$USER/showwin/$SEARCH_REGEX. Ka hiahiatia tenei hei tango i te matapihi id mo tetahi huinga ma te whakamahi i te tuhinga showwinDetach.

He aha ka taea te whakapai ake

Tuatahi, me whirihora a ringa nga tuhinga. He pono, na te hiahia ki te ruku me te mahi nui ki o ringaringa, he maha o koutou kaore e ngana ki te whirihora i te punaha. Mena ka taea te whakauru noa i te kete me te whirihora i nga mea katoa kia ngawari ake, tera pea ka rongonui. Na ka titiro, ka tukuna te tono ki nga tohatoha paerewa.

A pea ka ngawari ake te mahi. Mena ma te id o te matapihi ka kitea e koe te id o te tukanga nana i hanga, a ma te id o te tukanga ka kitea e koe ko wai te whakahau i hanga, katahi ka taea te whakaaunoa i te tatūnga. Inaa, kare au i marama mena ka taea nga mea i tuhia e au i tenei waahanga. Ko te meka ko ahau ake kei te makona ki te ahua o te mahi inaianei. Engari ki te kitea e tetahi ke atu i ahau te huarahi katoa e pai ana ka whakapai ake tetahi, ka koa ahau ki te whakamahi i tetahi otinga pai ake.

Ko tetahi atu raruraru, kua tuhia e au, i etahi wa kaore e taea te wehewehe i nga matapihi tetahi ki tetahi. I tenei wa kua kite noa ahau i tenei me te incognito i roto i te chrome/chromium, engari tera pea he mea penei i etahi atu waahi. Hei waahi whakamutunga, he waahi tonu te waahanga o nga huinga o te ao Alt + 1...Alt + 0. Ano, ka whakamahi ahau i a Firefox me ahau ake ehara tenei raru i te mea nui.

Engari ko te raru nui mo au ko te whakamahi Mac OS mo te mahi kaore au e taea te whirihora i tetahi mea penei i reira. whaipainga wmctrl Ki taku whakaaro i taea e au te whakauru, engari kaore e tino mahi i runga i te Mac OS. Ka taea te mahi ma te tono Aunoa, engari he puhoi rawa kaore e pai ki te whakamahi ahakoa kei te mahi. Kaore hoki i taea e au te whakarite i nga huinga matua kia mahi i roto i nga kaupapa katoa. Mena ka puta ohorere mai he otinga, ka koa ahau ki te whakamahi.

Engari o te mutunga

I puta ko te maha ohorere o nga kupu mo te ahua ngawari. I pirangi au ki te kawe i te whakaaro kia kaua e taumaha te tuhinga, engari kaore ano au kia mohio me pehea te korero ngawari ake. Tena pea he pai ake i te whakatakotoranga ataata, engari kaore nga tangata e pai ki konei.

I korero iti ahau mo nga mea kei raro i te papa o te tuhinga me pehea te whirihora. Kaore au i uru ki nga korero mo te tuhinga ake, engari he 50 noa nga rarangi, na reira kaore he uaua ki te mohio.

Te ti'aturi nei au ka whakamatau tetahi atu i tenei whakaaro, ka maioha pea. Ka taea e au te kii mo au ano i tuhia te tuhinga mo te 3 tau ki muri, a he tino watea ki ahau. Na te watea ka puta te pouri i te wa e mahi tahi ana me nga rorohiko a etahi atu. A me te MacBook mahi.

Hononga ki nga tuhinga

Source: will.com

Tāpiri i te kōrero