Ṣíṣàtúnṣe ìṣòro náà pẹ̀lú yíyípadà sí alt+shift ní Linux, ninu awọn ohun elo Electron

Kaabo awọn ẹlẹgbẹ!

Mo fẹ pin ojutu mi si iṣoro ti o tọka si ninu akọle. Mo ni atilẹyin lati kọ nkan yii nipasẹ ẹlẹgbẹ ẹlẹgbẹ kan brnovk, ti kii ṣe ọlẹ ati funni ni ipinnu apa kan (fun mi) si iṣoro naa. Mo ti ṣe ara mi "crutch" ti o iranwo mi. Mo n pin pẹlu rẹ.

Apejuwe ti iṣoro naa

Использовал Ubuntu 18.04 для работы и в последнее время заметил, что при переключении раскладки по alt+shift в таких приложениях, как Visual Studio Code, Skype, Slack и прочих, которые созданы с помощью Electron возникает следующая проблема: фокус с поля ввода, переходит к верхней панели окна (меню). По иным причинам переехал в Fedora + KDE и понял, что проблема никуда не делась. В поисках решения нашёл замечательную статью Bii o ṣe le ṣatunṣe Skype funrararẹ. O ṣeun comrade brnovk, ẹniti o sọ ni awọn alaye nipa iṣoro naa o si pin ọna rẹ lati yanju rẹ. Ṣugbọn ọna ti a tọka si ninu nkan naa yanju iṣoro naa pẹlu ohun elo kan nikan, eyun Skype. Fun mi, o tun ṣe pataki lati ni oye koodu Studio Visual, nitori kikọ awọn ifiranṣẹ pẹlu atokọ fo, botilẹjẹpe didanubi, kii ṣe pupọ ti o ba ni ipa ninu idagbasoke. Pẹlupẹlu, ẹlẹgbẹ kan daba ojutu kan ninu eyiti akojọ aṣayan ohun elo parẹ patapata, ati pe Emi kii yoo fẹ gaan lati padanu akojọ aṣayan ni koodu VS.

Gbiyanju lati ni oye ohun ti ko tọ

Nitorina, Mo pinnu lati ya akoko lati ro ero ohun ti n ṣẹlẹ. Bayi Emi yoo ṣe apejuwe ni ṣoki ọna ti Mo gba, boya ẹnikan ti o ni oye diẹ sii ninu ọran yii yoo ṣe iranlọwọ lati ṣalaye awọn iṣoro ti Mo pade.

Mo ṣii Code Studio Visual ati bẹrẹ kọlu oriṣiriṣi Alt + <% nkankan%> awọn akojọpọ lati rii bi ohun elo naa ṣe dahun. Ni gbogbo awọn ọran, gbogbo awọn akojọpọ ayafi Alt + Shift ṣiṣẹ laisi idojukọ aifọwọyi. O dabi ẹnipe ẹnikan njẹ Shift ti a tẹ, eyiti o tẹle lẹhin didimu Alt, ati pe ohun elo naa ro pe Mo tẹ Alt, lẹhinna ko tẹ ohunkohun, tu Alt ati pe o fi ayọ ju idojukọ mi sinu akojọ aṣayan rẹ, eyiti o dabi ẹni pe o jẹ ọgbọn si. o.

Mo ṣii awọn eto fun yiyipada awọn ọna kika bọtini itẹwe (o mọ, atokọ gigun yii pẹlu awọn apoti ayẹwo ati gbogbo awọn eto fun awọn bọtini) ati ṣeto lati yi awọn ipilẹ pada nipa lilo bọtini Alt, laisi awọn jinna eyikeyi.

Ṣíṣàtúnṣe ìṣòro náà pẹ̀lú yíyípadà sí alt+shift ní Linux, ninu awọn ohun elo Electron

Lẹhin iyẹn, Alt + Tab lati yipada awọn window duro ṣiṣẹ. Taabu nikan ṣiṣẹ, iyẹn ni, ẹnikan “jẹ” Alt mi lẹẹkansi. Ko si ibeere ti o ku nipa tani “ẹnikan” yii jẹ, ṣugbọn Emi ko ni imọran ohun ti a le ṣe pẹlu rẹ.

Ṣugbọn niwọn igba ti iṣoro naa ni lati yanju ni ọna kan, lẹhinna ojutu kan wa si ọkan:

  1. Ninu awọn eto, mu bọtini igbona kuro fun yiyipada awọn ipilẹ bọtini itẹwe (ṣayẹwo gbogbo awọn apoti ayẹwo ni Yipada si apakan ifilelẹ miiran);
  2. Ṣẹda hotkey ti ara rẹ ti yoo yi ifilelẹ naa pada fun mi

Apejuwe ti ojutu

Ni akọkọ, jẹ ki a fi eto kan sori ẹrọ ti o fun ọ laaye lati fi awọn aṣẹ si awọn bọtini Xbindkeys. Laanu, awọn irinṣẹ boṣewa ko gba mi laaye lati ṣẹda bọtini hotkey kan fun apapo bii Alt + Shift nipasẹ wiwo ẹlẹwa kan. O le ṣee ṣe fun Alt + S, Alt + 1, Alt + Shift + Y, ati bẹbẹ lọ. ati bẹbẹ lọ, ṣugbọn eyi ko dara fun iṣẹ-ṣiṣe wa.

sudo dnf install xbindkeysrc

Awọn alaye diẹ sii nipa rẹ wa ni ArchWiki
Nigbamii, a yoo ṣẹda faili eto apẹẹrẹ fun eto naa. Ayẹwo jẹ kukuru pupọ, pẹlu awọn aṣẹ diẹ, o kan ohun ti o nilo lati ro ero bi o ṣe le ṣiṣẹ pẹlu rẹ:

xbindkeys -d > ~/.xbindkeysrc

Gẹgẹbi o ti le rii lati apẹẹrẹ ninu faili, a nilo lati tọka bọtini hotkey ti a fẹ lo ati aṣẹ ti o yẹ ki o ṣiṣẹ. Wulẹ rọrun.


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

Gẹgẹbi bọtini gbigbona, o le lo kikọ ti eniyan le ka tabi lo awọn koodu bọtini. O ṣiṣẹ fun mi nikan pẹlu awọn koodu, ṣugbọn ko si ẹniti o kọ ọ laaye lati ṣe idanwo diẹ.

Lati gba awọn koodu o nilo lati lo aṣẹ naa:

xbindkeys -k

Ferese kekere "X" yoo ṣii. O nilo lati tẹ awọn bọtini nikan nigbati idojukọ ba wa lori window yii! Nikan ninu ọran yii iwọ yoo rii nkan bii eyi ni ebute naa:


[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

Ninu ọran mi, apapo bọtini Alt + Shift dabi eyi:

m:0x8 + c:50

Bayi a nilo lati rii daju pe nigba ti o ba tẹ lori apapo yii, iṣeto naa yipada. Mo rii aṣẹ kan ṣoṣo ti n ṣiṣẹ lati pato ifilelẹ naa:


setxkbmap ru
setxkbmap us

Gẹgẹbi o ti le rii lati apẹẹrẹ, o le mu ọkan tabi ipilẹ miiran ṣiṣẹ, nitorinaa ko si nkankan ti o wa si ọkan mi yatọ si kikọ iwe afọwọkọ kan.


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

Bayi, ti awọn faili .xbindkeysrc ati layout.sh wa ni itọsọna kanna, lẹhinna wiwo ikẹhin ti faili .xbindkeysrc dabi eyi:


# 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

Lẹhin iyẹn, a lo awọn ayipada wọnyi: +


xbindkeys -p

Ati pe o le ṣayẹwo. Maṣe gbagbe lati mu awọn aṣayan eyikeyi fun yiyipada awọn ipalemo ni awọn eto boṣewa.

Abajade

Awọn ẹlẹgbẹ, Mo nireti pe nkan yii le ṣe iranlọwọ fun ẹnikan ni iyara lati yọ iṣoro didanubi kuro. Tikalararẹ, Mo lo gbogbo ọjọ isinmi mi ni igbiyanju lati ṣawari ati yanju iṣoro naa ni ọna kan, ki emi ki o ma ṣe ni idamu nipasẹ rẹ mọ ni awọn wakati iṣẹ. Mo ti kowe yi article lati fi ẹnikan akoko ati awọn iṣan. Pupọ ninu yin lo ọna yiyan ti yiyipada awọn ipalemo ati pe ko loye kini iṣoro naa jẹ. Mo tikalararẹ fẹ lati yipada pẹlu Alt + Shift. Ati pe iyẹn ni Mo fẹ ki o ṣiṣẹ. Ti o ba pin ero mi ati pe o dojuko iṣoro yii, nkan yii yẹ ki o ran ọ lọwọ.

orisun: www.habr.com

Ra alejo gbigba igbẹkẹle fun awọn aaye pẹlu aabo DDoS, awọn olupin VPS VDS 🔥 Ra gbigbalejo oju opo wẹẹbu ti o gbẹkẹle pẹlu aabo DDoS, awọn olupin VPS VDS | ProHoster