An fhadhb a bhaineann le hathrú le alt+shift a réiteach Linux, in iarratais Leictreon

Dia duit a chomhghleacaithe!

Ba mhaith liom mo réiteach ar an bhfadhb atá léirithe sa teideal a roinnt. Spreag comhghleacaí mé an t-alt seo a scríobh donn, nach raibh leisciúil agus a thairg réiteach páirteach (dom féin) ar an bhfadhb. Rinne mé mo “crutch” féin a chabhraigh liom. Tá mé ag roinnt leat.

Cur síos ar an bhfadhb

Úsáidtear Ubuntu 18.04 для работы и в последнее время заметил, что при переключении раскладки по alt+shift в таких приложениях, как Visual Studio Code, Skype, Slack и прочих, которые созданы с помощью Electron возникает следующая проблема: фокус с поля ввода, переходит к верхней панели окна (меню). По иным причинам переехал в Fedora + KDE и понял, что проблема никуда не делась. В поисках решения нашёл замечательную статью Conas Skype a dheisiú duit féin. Míle buíochas a chomrádaí donn, a labhair go mion faoin bhfadhb agus a roinn a mhodh réitithe. Ach réitigh an modh a léirítear san alt an fhadhb le feidhmchlár amháin, eadhon Skype. Maidir liom féin, bhí sé ríthábhachtach freisin Cód Amharc-Stiúideo a thuiscint, toisc nach bhfuil sé an oiread sin teachtaireachtaí a scríobh le roghchlár léim, cé go bhfuil sé annoying, má tá baint agat le forbairt. Ina theannta sin, mhol comhghleacaí réiteach ina n-imíonn roghchlár an fheidhmchláir go hiomlán, agus níor mhaith liom an roghchlár i gCód VS a chailleadh.

Iarracht a thuiscint cad atá mícheart

Mar sin, chinn mé an t-am a ghlacadh chun a dhéanamh amach cad a bhí ar siúl. Anois déanfaidh mé cur síos gairid ar an gcosán a ghlac mé, b'fhéidir go gcuideoidh duine níos eolach ar an ábhar seo na deacrachtaí a bhí agam a mhíniú.

D'oscail mé Visual Studio Code agus thosaigh mé ag bualadh teaglaim éagsúla Alt+ <%rud%> chun a fheiceáil conas a d'fhreagair an feidhmchlár. I mbeagnach gach cás, d'oibrigh gach teaglaim seachas Alt+Shift gan fócas a chailleadh. Bhí an chuma ar an scéal go raibh duine éigin ag ithe an Shift brúite, a lean tar éis Alt a choinneáil síos, agus shíl an feidhmchlár gur bhrúigh mé Alt, níor bhrúigh mé rud ar bith, scaoil Alt agus chaith sé mo fhócas isteach ina roghchlár, rud a raibh cuma loighciúil air. é.

D'oscail mé na socruithe chun leagan amach méarchláir a athrú (tá a fhios agat, an liosta fada seo le ticbhoscaí agus gach cineál socruithe le haghaidh eochracha) agus shocraigh mé chun leagan amach a athrú ag baint úsáide as an gcnaipe Alt, gan aon chliceáil breise.

An fhadhb a bhaineann le hathrú le alt+shift a réiteach Linux, in iarratais Leictreon

Tar éis sin, stop Alt+Tab chun fuinneoga a athrú ag obair. Níor oibrigh ach Tab, is é sin, d'ith duine éigin mo Alt arís. Ní raibh aon cheist níos mó faoi cé hé an “duine” seo, ach ní raibh aon smaoineamh agam cad a d’fhéadfaí a dhéanamh leis.

Ach ó tharla go raibh an fhadhb le réiteach ar bhealach éigin, tháinig réiteach chun cuimhne:

  1. Sna socruithe, díchumasaigh an eochair te chun leagan amach méarchláir a athrú (díthiceáil gach ticbhosca sa rannóg Athraigh go leagan amach eile);
  2. Cruthaigh do eochair te féin a d’athródh an leagan amach domsa

Cur síos ar an réiteach

Ar dtús, déanaimis clár a shuiteáil a ligeann duit orduithe a shannadh do na heochracha Xbindkeys. Ar an drochuair, níor lig uirlisí caighdeánacha dom eochair te a chruthú le haghaidh meascán cosúil le Alt + Shift trí chomhéadan álainn. Is féidir é a dhéanamh le haghaidh Alt+S, Alt+1, Alt+shift+Y, etc. srl., ach níl sé seo oiriúnach dár tasc.

sudo dnf install xbindkeysrc

Tá tuilleadh sonraí faoi ar fáil ag ArchWiki
Ansin, cruthóimid comhad socruithe samplach don chlár. Tá an sampla gearr go leor, le roinnt orduithe, díreach cad is gá duit a dhéanamh amach conas a oibriú leis:

xbindkeys -d > ~/.xbindkeysrc

Mar a fheiceann tú ón sampla atá sa chomhad, ní mór dúinn an eochair te a theastaíonn uainn a úsáid agus an t-ordú ba chóir a fhorghníomhú a chur in iúl. Breathnaíonn simplí.


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

Mar hotkey, is féidir leat scríbhneoireacht inléite daonna a úsáid nó eochairchóid a úsáid. D'oibrigh sé domsa amháin le cóid, ach ní chuireann aon duine cosc ​​ort triail a bhaint as beagán.

Chun na cóid a fháil ní mór duit an t-ordú a úsáid:

xbindkeys -k

Osclófar fuinneog bheag “X”. Ní gá duit eochracha a bhrú ach nuair atá an fócas ar an bhfuinneog seo! Ní fheicfidh tú rud mar seo sa teirminéal ach amháin sa chás seo:


[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

I mo chás féin, tá cuma mar seo ar an teaglaim eochair Alt+Shift:

m:0x8 + c:50

Anois caithfimid a chinntiú go n-athraíonn an leagan amach nuair a chliceálann tú ar an meascán seo. Níor aimsigh mé ach ordú oibre amháin chun an leagan amach a shonrú:


setxkbmap ru
setxkbmap us

Mar a fheiceann tú ón sampla, ní féidir leis ach leagan amach amháin nó leagan eile a chumasú, agus mar sin níor tháinig aon rud i m’intinn seachas script a scríobh.


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

Anois má tá na comhaid .xbindkeysrc agus layout.sh suite san eolaire céanna, ansin is é seo an radharc deiridh den chomhad .xbindkeysrc:


# 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

Ina dhiaidh sin cuirimid na hathruithe i bhfeidhm:


xbindkeys -p

Agus is féidir leat a sheiceáil. Ná déan dearmad aon roghanna a dhíchumasú chun leagan amach a athrú sna socruithe caighdeánacha.

Iomlán na

A chomhghleacaithe, tá súil agam gur féidir leis an alt seo cabhrú le duine fáil réidh le fadhb annoying go tapa. Go pearsanta, chaith mé mo lá saor ar fad ag iarraidh an fhadhb a dhéanamh amach agus a réiteach ar bhealach éigin, ionas nach gcuirfí isteach orm a thuilleadh le linn uaireanta oibre. Scríobh mé an t-alt seo chun am agus nerves a shábháil ar dhuine. Úsáideann go leor agaibh modh eile chun leagan amach a athrú agus ní thuigeann tú cad é an fhadhb. Is maith liom go pearsanta aistriú le Alt+Shift. Agus sin mar ba mhaith liom é a oibriú. Má roinneann tú mo thuairim agus má tá tú ag tabhairt aghaidh ar an bhfadhb seo, ba cheart go gcabhródh an t-alt seo leat.

Foinse: will.com

Ceannaigh óstáil iontaofa do shuímh le cosaint DDoS, freastalaithe VPS VDS 🔥 Ceannaigh óstáil gréasáin iontaofa le cosaint DDoS, freastalaithe VPS VDS | ProHoster