Að leysa vandamálið með að skipta með alt+shift í Linux, í rafeindaforritum

Halló félagar!

Mig langar að deila lausn minni á vandamálinu sem getið er í titlinum. Samstarfsmaður minn innblés mig til að skrifa þessa grein. Brnovk, sem tók sér þann tíma að bjóða upp á hlutalausn (fyrir mig) á vandamálinu. Ég bjó til mitt eigið „svindl“ sem hjálpaði mér. Ég deili því með ykkur.

Lýsing á vandamálinu

Notað Ubuntu Ég hef notað 18.04 í vinnunni og tók nýlega eftir því að þegar ég skipti um útlit með Alt+Shift í forritum eins og Visual Studio Code, Skype, Slack og öðrum sem eru smíðuð með Electron, kemur eftirfarandi vandamál upp: fókusinn færist frá innsláttarreitnum yfir í efsta gluggann (valmyndina). Af öðrum ástæðum skipti ég yfir í Fedora + KDE og áttaði mig á því að vandamálið var enn til staðar. Þegar ég var að leita að lausn fann ég þessa frábæru grein. Að laga Skype með eigin höndumÞakka þér kærlega fyrir, félagi. Brnovk, sem lýsti vandamálinu í smáatriðum og deildi lausn sinni. Hins vegar virkaði lausnin sem lýst er í greininni aðeins með einu forriti, Skype. Það var líka mikilvægt fyrir mig að skilja Visual Studio Code, því þó að skilaboð með hoppandi valmynd séu pirrandi, þá er það ekki svo slæmt ef þú ert að þróa. Auk þess lagði samstarfsmaður til lausn sem lætur forritavalmyndina hverfa alveg, og ég vildi alls ekki missa valmyndina í VS Code.

Ég reyndi að skilja hvað var í gangi.

Ég ákvað því að gefa mér tíma til að átta mig á hvað væri í gangi. Ég mun lýsa stuttlega þeirri leið sem ég fór; kannski getur einhver sem þekkir betur til þessa hjálpað mér að skýra erfiðleikana sem ég stóð frammi fyrir.

Ég opnaði Visual Studio Code og byrjaði að ýta á ýmsar samsetningar Alt+<%something%> og fylgdist með viðbrögðum forritsins. Í næstum öllum tilfellum virkuðu allar samsetningar nema Alt+Shift án þess að missa fókusinn. Það fannst eins og eitthvað væri að éta upp Shift-takkann sem ég ýtti á eftir að hafa haldið Alt inni, og forritið hélt að ég hefði ýtt á Alt, ýtti svo ekki á neitt, sleppti Alt og færði fókusinn minn glaðlega yfir á valmyndina sína, sem virtist fullkomlega rökrétt fyrir því.

Ég opnaði stillingarnar fyrir lyklaborðsskipan (þú veist, þennan langa lista með gátreitum og alls kyns stillingum fyrir takka) og stillti skipanina á Alt takkann, án þess að ýta frekar á.

Að leysa vandamálið með að skipta með alt+shift í Linux, í rafeindaforritum

Eftir það hætti Alt+Tab að virka til að skipta á milli glugga. Aðeins Tab virkaði, sem þýddi að einhver var að „éta“ Alt-takkann minn aftur. Það var ekki lengur nein spurning hver þessi „einhver“ var, en ég hafði ekki hugmynd um hvað ég ætti að gera við hann.

En þar sem vandamálið þurfti að leysa á einhvern hátt, þá kom lausn upp í hugann:

  1. Í stillingunum skaltu slökkva á flýtilyklinum til að skipta um lyklaborðsútlit (hakaðu úr öllum gátreitunum í hlutanum Skipta yfir í annað útlit);
  2. Búa til minn eigin flýtilykla sem myndi breyta útliti mínu

Lýsing á lausninni

Fyrst skulum við setja upp Xbindkeys, forrit sem gerir þér kleift að úthluta skipunum á lyklaborð. Því miður gátu innbyggðu verkfærin ekki búið til flýtilykla fyrir samsetningar eins og Alt+Shift með aðlaðandi viðmóti þess. Þú getur búið til einn fyrir Alt+S, Alt+1, Alt+shift+Y og svo framvegis, en það hentar ekki fyrir okkar tilgang.

sudo dnf install xbindkeysrc

Nánari upplýsingar um það er að finna á ArchWiki
Næst skulum við búa til sýnishorn af stillingaskrá fyrir forritið. Hún er frekar stutt, með aðeins nokkrum skipunum, einmitt það sem þú þarft til að skilja hvernig á að nota hana:

xbindkeys -d > ~/.xbindkeysrc

Eins og þú sérð af dæminu í skránni þurfum við að tilgreina flýtilykilinn sem við viljum nota og skipunina sem á að framkvæma. Það lítur einfalt út.


# Examples of commands:
"xbindkeys_show"
  control+shift + q
# set directly keycode (here control + f with my keyboard)
"xterm"
  c:41 + m:0x4

Þú getur notað lesanlegan stafsetningarkóða eða lyklakóða sem flýtilykla. Lyklakóðar voru það eina sem virkaði fyrir mig, en þér er velkomið að prófa þig áfram.

Til að fá kóða þarftu að nota skipunina:

xbindkeys -k

Lítill „X“ gluggi opnast. Þú ættir aðeins að ýta á takka þegar glugginn er í forgrunni! Þá fyrst sérðu eitthvað eins og þetta í flugstöðinni:


[podkmax@localhost ~]$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
    m:0x4 + c:39
    Control + s

Í mínu tilfelli lítur Alt+Shift lyklaborðssamsetningin svona út:

m:0x8 + c:50

Nú þarf ég að gera það þannig að með því að ýta á þessa samsetningu breytist lyklaborðsútlitið. Ég hef aðeins fundið eina virka skipun til að tilgreina útlitið:


setxkbmap ru
setxkbmap us

Eins og þú sérð á dæminu getur það aðeins virkjað eina eða aðra uppsetningu, svo ekkert annað en að skrifa handrit kom mér í hug.


vim ~/layout.sh
#!/bin/bash
LAYOUT=$(setxkbmap -print | awk -F + '/xkb_symbols/ {print $2}')
if [ "$LAYOUT" == "ru" ]
        then `/usr/bin/setxkbmap us`
        else `/usr/bin/setxkbmap ru`
fi

Ef .xbindkeysrc og layout.sh skrárnar eru staðsettar í sömu möppu, þá lítur .xbindkeysrc skráin svona út:


# Examples of commands:

"xbindkeys_show"
  control+shift + q

# set directly keycode (here control + f with my keyboard)
"xterm"
  c:41 + m:0x4

# specify a mouse button
"xterm"
  control + b:2
#А вот то, что добавил я
"./layout.sh"
  m:0x8 + c:50

Eftir þetta beitum við breytingunum:


xbindkeys -p

Og þú getur athugað það. Ekki gleyma að slökkva á öllum stillingum fyrir útlitsskiptingu í sjálfgefnum stillingum.

Samtals

Samstarfsmenn, ég vona að þessi grein hjálpi einhverjum að losna fljótt við pirrandi vandamál. Persónulega eyddi ég allri helginni í að reyna að finna út og leysa vandamálið á einhvern hátt svo ég þyrfti ekki að hafa áhyggjur af því aftur á vinnutíma. Ég skrifaði þessa grein til að spara einhverjum tíma og pirring. Margir ykkar nota aðra leið til að skipta um lyklaborðsuppsetningu og skilja ekki vandamálið. Persónulega kýs ég Alt+Shift og ég vil að það virki þannig. Ef þið deilið skoðun minni og eruð að upplifa þetta vandamál, ætti þessi grein að hjálpa ykkur.

Heimild: www.habr.com

Kauptu áreiðanlega hýsingu fyrir síður með DDoS vernd, VPS VDS netþjónum 🔥 Kauptu áreiðanlega vefhýsingu með DDoS vörn, VPS VDS netþjónum | ProHoster