Hello mga kauban!
Gusto nakong ipaambit ang akong solusyon sa problema nga gipakita sa ulohan. Nadasig ko sa pagsulat niini nga artikulo sa usa ka kauban
Deskripsiyon sa problema
Gigamit nako ang Ubuntu 18.04 alang sa trabaho ug bag-o lang nakamatikod nga kung ang pagbalhin sa mga layout gamit ang alt + shift sa mga aplikasyon sama sa Visual Studio Code, Skype, Slack ug uban pa nga gihimo gamit ang Electron, ang mosunod nga problema mahitabo: ang focus gikan sa input field moadto sa taas. panel sa bintana (menu). Alang sa ubang mga rason, mibalhin ko sa Fedora + KDE ug nakaamgo nga ang problema wala mawala. Samtang nangitag solusyon, nakakita kog nindot nga artikulo
Naningkamot nga masabtan kung unsa ang sayup
Busa, nakahukom ko nga mogahin og panahon aron mahibal-an kung unsa ang nahitabo. Karon akong ihulagway sa daklit ang dalan nga akong giagian, tingali usa ka tawo nga mas batid niini nga butang makatabang sa pagpatin-aw sa mga kalisdanan nga akong nasugatan.
Giablihan nako ang Visual Studio Code ug gisugdan ang pag-igo sa lainlaing Alt+<%something%> nga mga kombinasyon aron makita kung giunsa pagtubag ang aplikasyon. Sa hapit tanan nga mga kaso, ang tanan nga mga kombinasyon gawas sa Alt + Shift nagtrabaho nga wala mawala ang pokus. Morag adunay mikaon sa gipiit nga Shift, nga misunod human gipugngan ang Alt, ug ang aplikasyon naghunahuna nga akong gipugos ang Alt, unya wala mopindot bisan unsa, gibuhian ang Alt ug malipayong gilabay niini ang akong focus ngadto sa menu niini, nga morag makataronganon sa kini.
Giablihan nako ang mga setting alang sa pagbalhin sa mga layout sa keyboard (nahibal-an nimo, kini nga taas nga lista nga adunay mga checkbox ug tanan nga mga lahi sa mga setting alang sa mga yawe) ug gitakda kini aron ibalhin ang mga layout gamit ang Alt button, nga walaβy dugang nga mga pag-klik.
Pagkahuman niana, ang Alt + Tab aron mabalhin ang mga bintana mihunong sa pagtrabaho. Si Tab ra ang nagtrabaho, nga mao, adunay "mikaon" sa akong Alt pag-usab. Walaβy nahabilin nga mga pangutana bahin sa kung kinsa kini nga "usa ka tawo", apan wala ako nahibal-an kung unsa ang mahimo kaniya.
Apan tungod kay ang problema kinahanglan nga masulbad sa usa ka paagi, unya usa ka solusyon ang misantop sa hunahuna:
- Sa mga setting, i-disable ang hotkey para sa pagbalhin sa mga layout sa keyboard (uncheck ang tanang checkbox sa seksyon sa Switch to another layout);
- Paghimo sa imong kaugalingon nga hotkey nga magbalhin sa layout alang kanako
Deskripsyon sa solusyon
Una, mag-install kita og programa nga magtugot kanimo sa pag-assign sa mga command sa Xbindkeys nga mga yawe. Ikasubo, ang standard nga mga himan wala magtugot kanako sa paghimo og usa ka hotkey alang sa kombinasyon sama sa Alt+Shift pinaagi sa usa ka nindot nga interface. Mahimo para sa Alt+S, Alt+1, Alt+shift+Y, etc. ug uban pa, apan dili kini angay sa among buluhaton.
sudo dnf install xbindkeysrc
Dugang detalye bahin niini anaa sa
Sunod, maghimo kami usa ka sample setting file alang sa programa. Ang sample mubo ra, nga adunay pipila ka mga sugo, kung unsa ang kinahanglan nimo aron mahibal-an kung giunsa kini pagtrabaho:
xbindkeys -d > ~/.xbindkeysrc
Sama sa imong makita gikan sa panig-ingnan sa file, kinahanglan namon nga ipakita ang hotkey nga gusto namon gamiton ug ang mando nga kinahanglan ipatuman. Murag simple.
# Examples of commands:
"xbindkeys_show"
control+shift + q
# set directly keycode (here control + f with my keyboard)
"xterm"
c:41 + m:0x4
Isip usa ka hotkey, mahimo nimong gamiton ang pagsulat nga mabasa sa tawo o mogamit mga yawe nga code. Kini nagtrabaho alang kanako lamang sa mga code, apan walay usa nga nagdili kanimo sa pag-eksperimento og gamay.
Aron makuha ang mga code kinahanglan nimo gamiton ang mando:
xbindkeys -k
Usa ka gamay nga "X" nga bintana ang moabli. Kinahanglan ra nimo nga ipadayon ang mga yawe kung ang focus naa sa kini nga bintana! Niini lamang nga kaso makita nimo ang usa ka butang nga sama niini sa terminal:
[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
Sa akong kaso, ang kombinasyon sa Alt + Shift key ingon niini:
m:0x8 + c:50
Karon kinahanglan namong siguroon nga kung imong i-klik kini nga kombinasyon, ang layout mobalhin. Nakit-an ra nako ang usa ka working command aron matino ang layout:
setxkbmap ru
setxkbmap us
Sama sa imong makita gikan sa panig-ingnan, mahimo ra kini makahimo sa usa o lain nga layout, mao nga walaβy nahunahuna sa akong hunahuna gawas sa pagsulat sa usa ka script.
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
Karon, kung ang .xbindkeysrc ug layout.sh nga mga file nahimutang sa parehas nga direktoryo, nan ang katapusan nga pagtan-aw sa .xbindkeysrc file ingon niini:
# 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
Human niana atong gamiton ang mga pagbag-o:
xbindkeys -p
Ug mahimo nimong susihon. Ayaw kalimti ang pag-disable sa bisan unsang mga kapilian sa pagbalhin sa mga layout sa standard nga mga setting.
Ang resulta
Mga kauban, nanghinaut ko nga kini nga artikulo makatabang sa usa ka tawo nga dali nga mawala ang usa ka makalagot nga problema. Sa personal, gigugol nako ang akong tibuok adlaw nga walay trabaho sa pagsulay sa paghunahuna ug pagsulbad sa problema sa bisan unsang paagi, aron dili na ako mabalda niini sa oras sa pagtrabaho. Gisulat ko kini nga artikulo aron makatipig oras ug nerbiyos sa usa ka tawo. Daghan kaninyo ang naggamit ug alternatibong paagi sa pagbalhin sa mga layout ug wala makasabot kon unsa ang problema. Ako personal nga ganahan nga mobalhin gamit ang Alt+Shift. Ug kana ang gusto nako nga kini molihok. Kung gipaambit nimo ang akong opinyon ug nag-atubang sa kini nga problema, kini nga artikulo makatabang kanimo.
Source: www.habr.com