د alt+shift in په واسطه د بدلولو ستونزه حل کول Linux، د الکترون غوښتنلیکونو کې

سلام همکارانو!

زه غواړم چې په سرلیک کې ذکر شوې ستونزې ته خپله حل لاره شریکه کړم. زه د یو همکار لخوا د دې مقالې لیکلو ته هڅول شوی یم. برنووک، چا چې د ستونزې لپاره د یوې برخې (زما لپاره) حل وړاندیز کولو زحمت واخیست. ما خپل "دوکه" رامینځته کړ چې زما سره یې مرسته وکړه. زه یې له تاسو سره شریکوم.

د ستونزې تشریح

Использовал Ubuntu 18.04 для работы и в последнее время заметил, что при переключении раскладки по alt+shift в таких приложениях, как Visual Studio Code, Skype, Slack и прочих, которые созданы с помощью Electron возникает следующая проблема: фокус с поля ввода, переходит к верхней панели окна (меню). По иным причинам переехал в Fedora + KDE и понял, что проблема никуда не делась. В поисках решения нашёл замечательную статью د خپلو لاسونو سره د سکایپ ترمیم کولډېره مننه، ملګریه. برنووک، چا چې ستونزه په تفصیل سره تشریح کړه او خپله حل یې شریکه کړه. په هرصورت، هغه حل چې په مقاله کې تشریح شوی یوازې د یو اپلیکیشن، سکایپ سره کار کاوه. دا زما لپاره هم خورا مهم و چې د ویژول سټوډیو کوډ معلوم کړم، ځکه چې پداسې حال کې چې د کود کولو مینو سره پیغام رسول ځورونکی دی، دا دومره بد نه دی که تاسو وده کوئ. برسېره پردې، یو همکار داسې حل وړاندیز کړ چې د اپلیکیشن مینو په بشپړ ډول ورک کړي، او زه واقعیا نه غوښتل چې په VS کوډ کې مینو له لاسه ورکړم.

ما هڅه وکړه چې پوه شم چې څه روان دي.

نو، ما پریکړه وکړه چې وخت واخلم ترڅو معلومه کړم چې څه روان دي. زه به په لنډه توګه هغه لاره تشریح کړم چې ما اخیستې وه؛ شاید یو څوک چې پدې برخه کې ډیر پوه وي کولی شي د هغو ستونزو په روښانه کولو کې مرسته وکړي چې زه ورسره مخ وم.

ما د ویژول سټوډیو کوډ پرانیست او د مختلفو Alt+<%something%> ترکیبونو فشارول مې پیل کړل، د اپلیکیشن غبرګون مې وڅارلو. تقریبا په هر حالت کې، د Alt+Shift پرته ټول ترکیبونه پرته له دې چې تمرکز له لاسه ورکړ کار کاوه. داسې احساس کېده چې یو څه د شفټ کیلي خوري چې ما د Alt نیولو وروسته فشار ورکړ، او اپلیکیشن فکر کاوه چې ما Alt فشار ورکړی، بیا هیڅ فشار نه دی ورکړی، Alt خوشې کړی، او په خوښۍ سره یې زما تمرکز خپل مینو ته واړاوه، کوم چې ورته په بشپړ ډول منطقي ښکاري.

ما د کیبورډ ترتیب بدلولو ترتیبات خلاص کړل (تاسو پوهیږئ، هغه اوږده لیست چې د چیک باکسونو او د کیلي لپاره هر ډول ترتیبات لري) او د ترتیب بدلول یې د Alt کیلي ته تنظیم کړل، پرته له کوم اضافي فشار څخه.

د alt+shift in په واسطه د بدلولو ستونزه حل کول Linux، د الکترون غوښتنلیکونو کې

له هغې وروسته، د کړکۍ بدلولو لپاره Alt+Tab کار کول بند کړل. یوازې Tab کار کاوه، پدې معنی چې یو څوک زما د Alt کیلي بیا "خوري". نور هیڅ پوښتنه نه وه چې دا "څوک" څوک دی، مګر زه نه پوهیدم چې د دې سره څه وکړم.

خو څرنګه چې ستونزه باید په یو ډول حل شي، نو یوه حل لاره مې ذهن ته راغله:

  1. په ترتیباتو کې، د کیبورډ ترتیب بدلولو لپاره هاټکي غیر فعال کړئ (د "بل ترتیب ته بدلولو" برخه کې ټول چیک باکسونه غیر چیک کړئ)؛
  2. زما خپله هاټکي جوړه کړئ چې زما ترتیب بدل کړي

د حل توضیحات

لومړی، راځئ چې Xbindkeys نصب کړو، یو پروګرام چې تاسو ته اجازه درکوي چې کیلي ته قوماندې ورکړئ. له بده مرغه، جوړ شوي وسیلو ما ته اجازه ورنکړه چې د Alt+Shift په څیر ترکیب لپاره د هغې د زړه راښکونکي انٹرفیس په کارولو سره هاټ کی جوړ کړم. تاسو کولی شئ د Alt+S، Alt+1، Alt+shift+Y، او داسې نورو لپاره یو جوړ کړئ، مګر دا زموږ د موخو لپاره مناسب نه دی.

sudo dnf install xbindkeysrc

د دې په اړه نور جزئیات په لاندې لینک کې موندل کیدی شي آرشيف ويکي
بیا، راځئ چې د پروګرام لپاره د نمونې ترتیباتو فایل جوړ کړو. دا خورا لنډ دی، یوازې د یو څو امرونو سره، یوازې هغه څه چې تاسو ورته اړتیا لرئ د دې کارولو څرنګوالي پوه شئ:

xbindkeys -d > ~/.xbindkeysrc

لکه څنګه چې تاسو په فایل کې د مثال څخه لیدلی شئ، موږ اړتیا لرو هغه هاټکي مشخص کړو چې موږ یې کارول غواړو او هغه قومانده چې باید اجرا شي. دا ساده ښکاري.


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

تاسو کولی شئ د انسان د لوستلو وړ املا یا د کیلي کوډونه د هاټ کی په توګه وکاروئ. کیلي کوډونه یوازینی شی و چې زما لپاره یې کار وکړ، مګر د یو څه تجربې کولو لپاره وړیا احساس وکړئ.

د کوډونو ترلاسه کولو لپاره تاسو اړتیا لرئ چې دا قومانده وکاروئ:

xbindkeys -k

یوه کوچنۍ "X" کړکۍ به پرانستل شي. تاسو باید یوازې هغه وخت کیلي فشار ورکړئ کله چې دا کړکۍ متمرکزه وي! یوازې بیا به تاسو په ټرمینل کې د دې په څیر یو څه وګورئ:


[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

زما په قضیه کې، د Alt+Shift کیلي ترکیب داسې ښکاري:

m:0x8 + c:50

اوس زه باید دا داسې جوړ کړم چې د دې ترکیب فشارول په حقیقت کې د کیبورډ ترتیب بدل کړي. ما د ترتیب مشخص کولو لپاره یوازې یو کاري قومانده موندلې ده:


setxkbmap ru
setxkbmap us

لکه څنګه چې تاسو د مثال څخه لیدلی شئ، دا یوازې یو یا بل ترتیب فعالولی شي، نو زما ذهن ته د سکریپټ لیکلو پرته بل څه نه راغلل.


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

اوس، که چیرې د .xbindkeysrc او layout.sh فایلونه په ورته ډایرکټرۍ کې موقعیت ولري، د .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

له دې وروسته موږ بدلونونه پلي کوو:


xbindkeys -p

او تاسو یې چیک کولی شئ. په ډیفالټ ترتیباتو کې د هر ډول ترتیب بدلولو اختیارونه غیر فعال کول مه هیروئ.

نتیجه

ملګرو، زه هیله لرم چې دا مقاله به د یو چا سره مرسته وکړي چې ژر تر ژره له یوې ځورونکې ستونزې څخه خلاص شي. په شخصي توګه، ما خپله ټوله اونۍ پای د ستونزې د حل کولو او حل کولو په هڅه کې تیره کړه ترڅو زه د کار په ساعتونو کې بیا د هغې په اړه اندیښنه ونکړم. ما دا مقاله د یو چا د وخت او مایوسۍ د خوندي کولو لپاره لیکلې. ډیری ستاسو څخه د کیبورډ ترتیبونو بدلولو لپاره بدیل لاره کاروي او ستونزه نه پوهیږئ. په شخصي توګه، زه Alt+Shift غوره ګڼم، او زه غواړم چې دا په دې ډول کار وکړي. که تاسو زما نظر شریک کړئ او دا ستونزه تجربه کوئ، دا مقاله باید ستاسو سره مرسته وکړي.

سرچینه: www.habr.com

د DDoS محافظت ، VPS VDS سرورونو سره د سایټونو لپاره معتبر کوربه توب واخلئ 🔥 د DDoS محافظت، VPS VDS سرورونو سره د باور وړ ویب پاڼې کوربه توب واخلئ | ProHoster