لينڪس ۾ متبادل ونڊو انتظام

مان انھن مان آھيان جيڪي ڪيپس لاڪ کي ترتيب ڏيڻ لاءِ لي آئوٽ کي تبديل ڪن ٿا ڇو ته مان 2 ڪيز کي دٻائڻ ۾ تمام سست آھيان جڏھن مان ھڪڙي کي دٻائي سگھان ٿو. مون کي به 2 غير ضروري چابيون پسند اينديون: مان ھڪڙي کي انگريزي ترتيب کي چالو ڪرڻ لاءِ استعمال ڪندس ۽ ٻيو روسي لاءِ. پر ٻيو غير ضروري ڪنيڪشن مينيو کي سڏڻ آهي، جيڪو ايترو غير ضروري آهي ته اهو ڪيترن ئي ليپ ٽاپ ٺاهيندڙن طرفان ڪٽيو ويو آهي. تنهن ڪري توهان کي انهي تي راضي رهڻو پوندو جيڪو توهان وٽ آهي.

۽ مان پڻ نه ٿو چاهيان ته ٽاسڪ بار تي انهن جي آئڪن کي ڳولڻ لاءِ جڏهن ونڊوز مٽائي رهيا هجون، يا نالن کي پڪڙيندا هئاسين Alt + Tab، ڊيسڪ ٽاپ ذريعي اسڪرول ڪريو، وغيره. مان چاھيان ٿو ھڪ ڪيئي ميلاپ کي دٻائڻ (مثالي طور تي صرف ھڪڙو، پر ھاڻي ڪي به مفت غير ضروري چاٻيون نه آھن) ۽ فوري طور تي ونڊو ڏانھن وڃو جنھن جي مون کي ضرورت آھي. مثال طور هن طرح:

  • Alt + F: فائر فاکس
  • Alt+D: فائر فاڪس (نجي برائوزنگ)
  • Alt+T: ٽرمينل
  • Alt+M: ڳڻپيوڪر
  • Alt+E: IntelliJ Idea
  • وغيره

ان کان علاوه، دٻائڻ سان، مثال طور، تي Alt+M مان ڳڻپيندڙ کي ڏسڻ چاهيان ٿو قطع نظر ته هي پروگرام هن وقت هلي رهيو آهي. جيڪڏهن اهو هلندڙ آهي، ته ان جي ونڊو کي ڌيان ڏيڻ جي ضرورت آهي، ۽ جيڪڏهن نه، گهربل پروگرام کي هلائي ۽ منتقلي فوڪس جڏهن لوڊ ٿئي ٿي.

ڪيسن لاءِ جيڪي پوئين اسڪرپٽ ۾ شامل نه ڪيا ويا آهن، مان چاهيان ٿو ته عالمگير ڪيئي مجموعا هجن جيڪي آساني سان ڪنهن به کليل ونڊوز کي تفويض ڪري سگهجن. مثال طور، مون وٽ 10 مجموعا مقرر ڪيا ويا آھن Alt + 1 ڪرڻ Alt + 0، جيڪي ڪنهن به پروگرام سان جڙيل نه آهن. مان صرف ڪلڪ ڪري سگهان ٿو Alt + 1 ۽ ونڊو جيڪا في الحال فوڪس ۾ آهي ڪلڪ ڪرڻ تي فوڪس حاصل ڪندو Alt + 1.

ڪٽ جي هيٺان ڪجهه وڌيڪ خاصيتن جو بيان آهي ۽ هڪ جواب آهي ته اهو ڪيئن ٿي سگهي ٿو. پر مان توهان کي فوري طور تي ڊيڄاريندس ته اهڙي ڪسٽمائيزيشن ”پنهنجي لاءِ“ سخت لت ۽ ان کان به پري ٿي سگهي ٿي جيڪڏهن توهان کي ونڊوز، ميڪ او ايس يا لينڪس سان گڏ ڪنهن ٻئي جي ڪمپيوٽر کي به استعمال ڪرڻ جي ضرورت آهي.

حقيقت ۾، جيڪڏهن توهان ان جي باري ۾ سوچيو ٿا، اسان روزانه بنيادن تي ڪيترائي پروگرام استعمال نٿا ڪريون. هڪ برائوزر، هڪ ٽرمينل، هڪ IDE، ڪجهه قسم جو ميسينجر، هڪ فائيل مئنيجر، هڪ ڳڻپيوڪر ۽، شايد، اهو سڀ ڪجهه آهي. روزمره جي ڪمن جي 95٪ کي ڍڪڻ لاءِ ڪيترائي اهم مجموعا گهربل نه آهن.

پروگرامن لاءِ جن وٽ ڪيترائي ونڊوز کليل آهن، انهن مان هڪ کي مکيه طور نامزد ڪري سگهجي ٿو. مثال طور، توھان وٽ گھڻن IntelliJ Idea ونڊوز کليل آھن ۽ انھن کي مقرر ڪيو ويو آھي Alt + E. عام حالتن ۾، جڏهن توهان دٻايو Alt + E ھن پروگرام جي ڪجھ ونڊو کُلي ويندي، غالباً اھا ئي ھئي جيڪا پھريون کوليو ھو. بهرحال، جيڪڏهن توهان ڪلڪ ڪريو Alt + E جڏهن هن پروگرام جي ونڊو مان هڪ اڳ ۾ ئي فوڪس ۾ هوندي، ته پوءِ هن خاص ونڊو کي مکيه ونڊو مقرر ڪيو ويندو ۽ اهو ئي هوندو جنهن کي فوڪس ڏنو ويندو جڏهن ايندڙ مجموعن کي دٻايو ويندو.

مکيه ونڊو ٻيهر ترتيب ڏئي سگهجي ٿو. هن کي ڪرڻ لاءِ، توهان کي لازمي طور تي ميلاپ کي ري سيٽ ڪرڻ گهرجي، ۽ پوءِ ان کي مکيه ونڊو طور هڪ ٻي ونڊو تفويض ڪرڻ گهرجي. ھڪڙي ميلاپ کي ري سيٽ ڪرڻ لاءِ، توھان کي مجموعو پاڻ کي دٻائڻو پوندو، ۽ پوءِ ھڪڙو خاص ري سيٽ ميلاپ، مون ان کي مقرر ڪيو آھي. Alt+Backspace. اهو هڪ اسڪرپٽ کي سڏيندو جيڪو اڳوڻي ميلاپ لاء مکيه ونڊو کي ختم ڪندو. ۽ پوء توهان هڪ نئين مکيه ونڊو تفويض ڪري سگهو ٿا جيئن اڳئين پيراگراف ۾ بيان ڪيو ويو آهي. ھڪڙي ڳنڍيل ونڊو کي عالمگير مجموعن ڏانھن ري سيٽ ڪرڻ ساڳئي طريقي سان ٿئي ٿي.

تعارف ڊگهو ٿي ويو، پر مون چاهيو ته پهريان ٻڌايان ته اسان ڇا ڪنداسين، ۽ پوءِ وضاحت ڪجي ته ڪيئن ڪجي.

انهن لاءِ جيڪي پڙهندي ٿڪجي پيا آهن

مختصر ۾، لکت جي لنڪ آرٽيڪل جي آخر ۾ آهي.

پر توهان اڃا تائين ان کي انسٽال ۽ استعمال ڪرڻ جي قابل نه هوندا. توهان کي پهريان اهو معلوم ڪرڻو پوندو ته اسڪرپٽ گهربل ونڊو ڪيئن ڳولي ٿو. ان کان سواء، اهو ممڪن نه ٿيندو ته اسڪرپٽ کي ٻڌايو وڃي ته صحيح طور تي ڌيان کي منتقل ڪرڻ جي ضرورت آهي. ۽ توهان کي سمجهڻ جي ضرورت آهي ته ڇا ڪجي جيڪڏهن اوچتو هڪ مناسب ونڊو نه ملي.

۽ مان ان ڳالهه تي ڌيان نه ڏيندس ته ڪيئي مجموعن کي دٻائڻ سان اسڪرپٽس جي عمل کي ڪيئن ترتيب ڏيو. مثال طور، KDE ۾ اهو آهي سسٽم سيٽنگون → شارٽ ڪٽ → ڪسٽم شارٽ ڪٽ. اهو معاملو ٻين ونڊو مينيجرز ۾ پڻ هجڻ گهرجي.

متعارف ڪرايو wmctrl

wmctrl - ايڪس ونڊو مئنيجر سان رابطي لاءِ ڪنسول يوٽيلٽي. هي اسڪرپٽ لاء اهم پروگرام آهي. اچو ته هڪ تڪڙو نظر وٺو ته توهان ان کي ڪيئن استعمال ڪري سگهو ٿا.

پهرين، اچو ته کليل ونڊوز جي هڪ فهرست ڏيکاريون:

$ wmctrl -lx
0x01e0000e -1 plasmashell.plasmashell             N/A Desktop — Plasma
0x01e0001e -1 plasmashell.plasmashell             N/A Plasma
0x03a00001  0 skype.Skype                         N/A Skype
0x04400003  0 Navigator.Firefox                   N/A Google Переводчик - Mozilla Firefox
0x04400218  0 Navigator.Firefox                   N/A Лучшие публикации за сутки / Хабр - Mozilla Firefox (Private Browsing)
...

اختيار -l سڀني کليل ونڊوز جي هڪ فهرست ڏيکاري ٿو، ۽ ڪلاس جو نالو آئوٽ پٽ ۾ شامل ڪري ٿو (skype.Skype, Navigator.Firefox وغيره). هتي اسان کي ونڊو id (ڪالمن 1)، ڪلاس جو نالو (ڪالمن 3) ۽ ونڊو جو نالو (آخري ڪالم) جي ضرورت آهي.

توھان ڪوشش ڪري سگھوٿا ڪجھ ونڊو چالو ڪرڻ جي اختيار کي استعمال ڪندي -a:

$ wmctrl -a skype.Skype -x

جيڪڏهن سڀڪنھن شيء کي منصوبي مطابق ڪيو ويو، Skype ونڊو اسڪرين تي ظاهر ٿيڻ گهرجي. جيڪڏهن اختيار جي بدران -x اختيار استعمال ڪريو -i، پوءِ ڪلاس جي نالي جي بدران توھان وضاحت ڪري سگھو ٿا ونڊو id. آئي ڊي سان مسئلو اهو آهي ته ونڊو آئي ڊي هر وقت تبديل ٿيندي آهي جڏهن ايپليڪيشن شروع ٿيندي آهي ۽ اسان ان کي اڳ ۾ ئي نٿا ڄاڻون. ٻئي طرف، هي وصف منفرد طور تي هڪ ونڊو کي سڃاڻي ٿو، جيڪو اهم ٿي سگهي ٿو جڏهن هڪ ايپليڪيشن هڪ کان وڌيڪ ونڊو کوليندي آهي. ان بابت ٿورو اڳتي.

هن مرحلي تي اسان کي ياد رکڻ جي ضرورت آهي ته اسان گهربل ونڊو ڳولهينداسين regex استعمال ڪندي آئوٽ پٽ wmctrl -lx. پر ان جو مطلب اهو ناهي ته اسان کي ڪجهه پيچيده استعمال ڪرڻو پوندو. عام طور تي ڪلاس جو نالو يا ونڊو جو نالو ڪافي هوندو آهي.

بنيادي طور تي، بنيادي خيال اڳ ۾ ئي واضح هجڻ گهرجي. توهان جي ونڊو مئنيجر لاءِ عالمي هاٽ ڪيز/شارٽ ڪٽ سيٽنگون ۾، اسڪرپٽ کي هلائڻ لاءِ گهربل ميلاپ ترتيب ڏيو.

اسڪرپٽ ڪيئن استعمال ڪجي

پهرين توهان کي ڪنسول افاديت کي انسٽال ڪرڻ جي ضرورت آهي wmctrl и xdotool:

$ sudo apt-get install wmctrl xdotool

اڳيون توهان کي اسڪرپٽ ڊائون لوڊ ڪرڻ ۽ انهن کي شامل ڪرڻ جي ضرورت آهي $ PATH. آئون عام طور تي ان ۾ وجهي ~/بن:

$ cd ~/bin
$ git clone https://github.com/masyamandev/Showwin-script.git
$ ln -s ./Showwin-script/showwin showwin
$ ln -s ./Showwin-script/showwinDetach showwinDetach

جيڪڏهن ڊاريڪٽري ~/بن اتي نه هو، پوء توهان کي ان کي ٺاهڻ ۽ ريبوٽ ڪرڻ جي ضرورت آهي (يا ٻيهر لاگ ان)، ٻي صورت ۾ ~/بن نه ماريندو $ PATH. جيڪڏهن هر شي صحيح طريقي سان ڪئي وئي آهي، پوء لکت کي ڪنسول کان رسائي حاصل ڪرڻ گهرجي ۽ ٽيب مڪمل ٿيڻ کي ڪم ڪرڻ گهرجي.

مکيه رسم الخط ڏيکارڻ 2 پيرا ميٽر وٺي ٿو: پهريون هڪ ريجڪس آهي، جنهن جي ذريعي اسان گهربل ونڊو ڳوليندا سين، ۽ ٻيو پيٽرولر هڪ حڪم آهي جنهن تي عمل ڪرڻ جي ضرورت آهي جيڪڏهن گهربل ونڊو نه ملي.

توھان ڪوشش ڪري سگھوٿا ھڪڙي رسم الخط هلائڻ، مثال طور:

$ showwin "Mozilla Firefox$" firefox

جيڪڏهن فائر فاڪس انسٽال ٿيل آهي، ان جي ونڊو کي ڌيان ڏنو وڃي. جيتوڻيڪ فائر فاڪس نه هلي رهيو هو، ان کي شروع ٿيڻ گهرجي ها.

جيڪڏهن اهو ڪم ڪري ٿو، ته پوء توهان ڪوشش ڪري سگهو ٿا ترتيب ڏيڻ جي حڪمن جي عمل کي ترتيب ڏيڻ تي. گلوبل hotkeys/شارٽ ڪٽ سيٽنگن ۾ شامل ڪريو:

  • Alt + F: شوون "موزيلا فائر فاڪس $" فائر فاڪس
  • Alt+D: showwin "Mozilla Firefox (Private Browsing)$" "firefox -private-window"
  • Alt+C: showwin "chromium-browser.Chromium-browser N*" chromium-browser
  • Alt+X: showwin "chromium-browser.Chromium-browser I*" "chromium-browser -incognito"
  • Alt+S: ڏيکاريو “skype.Skype” skypeforlinux
  • Alt+E: showwin “jetbrains-idea” idea.sh

وغيره. هرڪو اهم مجموعن ۽ سافٽ ويئر کي ترتيب ڏئي سگهي ٿو جيئن اهي مناسب ڏسندا.
جيڪڏهن سڀ ڪجهه صحيح طرح سان ڪم ڪيو، ته پوء مٿي ڏنل مجموعن کي استعمال ڪندي اسان صرف چاٻين کي دٻائڻ سان ونڊوز جي وچ ۾ مٽائي سگهنداسين.

مان ڪروم عاشقن کي مايوس ڪندس: اهو انڪوگنيٽو ڪري سگھي ٿو هڪ باقاعده ونڊو کي ان جي آئوٽ ذريعي فرق wmctrl توهان نٿا ڪري سگهو، انهن وٽ ساڳيا طبقي جا نالا ۽ ونڊو عنوان آهن. تجويز ڪيل ريجڪس ۾، اکر N* ۽ I * صرف ان ڪري گهربل آهن ته اهي باقاعده اظهار هڪ ٻئي کان مختلف آهن ۽ انهن کي مکيه ونڊوز طور مقرر ڪري سگهجي ٿو.

پوئين ميلاپ جي مکيه ونڊو کي ريٽ ڪرڻ لاء (حقيقت ۾ ريجڪس لاء، جيڪو ڏيکارڻ آخري ڀيرو سڏيو) توهان کي اسڪرپٽ ڪال ڪرڻ جي ضرورت آهي showwinDetach. مون کي هي اسڪرپٽ هڪ اهم ميلاپ سان لڳايو ويو آهي Alt+Backspace.

اسڪرپٽ تي ڏيکارڻ اتي هڪ وڌيڪ فنڪشن آهي. جڏهن اهو هڪ پيٽرولر سان سڏيو ويندو آهي (هن صورت ۾ پيٽرولر صرف هڪ سڃاڻپ ڪندڙ آهي)، اهو سڀ ڪجهه ريجڪس کي چيڪ نٿو ڪري، پر سڀني ونڊوز کي مناسب سمجهي ٿو. پاڻ ۾، اهو بيڪار لڳي ٿو، پر هن طريقي سان اسين ڪنهن به ونڊو کي مکيه طور نامزد ڪري سگهون ٿا ۽ جلدي ان مخصوص ونڊو ڏانهن وڃو.

مون وٽ هيٺيون مجموعا ترتيب ڏنل آهن:

  • Alt+1: showwin "CustomKey1"
  • Alt+2: showwin "CustomKey2"
  • ...
  • Alt+0: showwin "CustomKey0"
  • Alt + Backspace: showwinDetach

اهڙيءَ طرح مان ڪنهن به ونڊو کي گڏ ڪرڻ لاءِ پابند ڪري سگهان ٿو Alt + 1...Alt + 0. صرف ڪلڪ ڪندي Alt + 1 مون موجوده ونڊو کي هن ميلاپ سان جڙيل آهي. مان ڪلڪ ڪري پابند منسوخ ڪري سگهان ٿو Alt + 1، ۽ پوء Alt+Backspace. يا ونڊو بند ڪريو، اهو پڻ ڪم ڪري ٿو.

اڳتي هلي مان توهان کي ڪجهه ٽيڪنيڪل تفصيل ٻڌائيندس. توهان کي انهن کي پڙهڻ جي ضرورت ناهي، پر صرف انهن کي ترتيب ڏيڻ جي ڪوشش ڪريو ۽ ڏسو. پر مان اڃا به سفارش ڪندس ٻين ماڻهن جي لکت کي سمجهڻ کان پهريان انهن کي توهان جي ڪمپيوٽر تي هلائڻ کان :).

ساڳئي ايپليڪيشن جي مختلف ونڊوز جي وچ ۾ فرق ڪيئن ڪجي

اصول ۾، پهريون مثال "wmctrl -a skype.Skype -x" ڪم ڪري رهيو هو ۽ استعمال ڪري سگهجي ٿو. پر اچو ته هڪ ڀيرو ٻيهر فائر فاڪس جي مثال کي ڏسو، جنهن ۾ 2 ونڊوز کليل آهن:

0x04400003  0 Navigator.Firefox                   N/A Google Переводчик - Mozilla Firefox
0x04400218  0 Navigator.Firefox                   N/A Лучшие публикации за сутки / Хабр - Mozilla Firefox (Private Browsing)

پهرين ونڊو عام موڊ آهي، ۽ ٻيو نجي برائوزنگ آهي. مان انهن ونڊوز کي مختلف ايپليڪيشنن طور سمجهڻ چاهيان ٿو ۽ انهن کي مختلف ڪني مجموعن کي استعمال ڪندي سوئچ ڪرڻ چاهيان ٿو.

اهو ضروري آهي ته اسڪرپٽ کي پيچيده ڪرڻ لاء جيڪو ونڊوز کي سوئچ ڪري ٿو. مون هي حل استعمال ڪيو: سڀني ونڊوز جي فهرست ڏيکاريو، ڪريو نڀاڳو regex ذريعي، پهرين قطار سان گڏ وٺو مٿو، پهريون ڪالم حاصل ڪريو (هي ونڊو id هوندو) استعمال ڪندي پٽي, id ذريعي ونڊو ڏانهن تبديل ڪريو.

باقاعده اظهار ۽ ٻه مسئلا بابت هڪ مذاق هجڻ گهرجي، پر حقيقت ۾ مان ڪجهه پيچيده استعمال نه ڪري رهيو آهيان. مون کي باقاعده اظهار جي ضرورت آهي ته جيئن مان لڪير جي پڇاڙيءَ (“$” علامت) کي ظاهر ڪري سگهان ۽ “Mozilla Firefox$” کان “Mozilla Firefox (Private Browsing)$” ۾ فرق ڪري سگهان.

حڪم ڪجهه هن طرح نظر اچي ٿو:

$ wmctrl -i -a `wmctrl -lx | grep -i "Mozilla Firefox$" | head -1 | cut -d" " -f1`

هتي توهان اڳ ۾ ئي اندازو لڳائي سگهو ٿا اسڪرپٽ جي ٻئي خصوصيت بابت: جيڪڏهن grep ڪجھ به واپس نه ٿو ڪري، ته پوء گهربل ايپليڪيشن کليل نه آهي ۽ توهان کي ٻئي پيٽرولر کان حڪم جاري ڪندي ان کي شروع ڪرڻ جي ضرورت آهي. ۽ پوءِ وقتي طور تي چيڪ ڪريو ته ڇا گهربل ونڊو کوليو ويو آهي ان ڏانهن ڌيان منتقل ڪرڻ لاءِ. مان هن تي ڌيان نه ڏيندس؛ هر ڪنهن کي ضرورت آهي ذريعن کي ڏسندو.

جڏهن ته ايپليڪيشن ونڊو ڌار ڌار نه هوندا آهن

تنهن ڪري، اسان سکيو آهي ته ڪيئن توجهه کي گهربل ايپليڪيشن جي ونڊو ڏانهن منتقل ڪيو وڃي. پر ڇا جيڪڏهن هڪ ايپليڪيشن هڪ کان وڌيڪ ونڊو کليل هجي؟ مون کي ڪنهن تي ڌيان ڏيڻ گهرجي؟ مٿي ڏنل اسڪرپٽ غالباً پهرين کليل ونڊو ڏانهن منتقل ٿي ويندي. تنهن هوندي، اسان وڌيڪ لچڪدار چاهيون ٿا. مان چاھيان ٿو ياد رکڻ جي قابل ھجي ته اسان کي ڪھڙي ونڊو جي ضرورت آھي ۽ ان خاص ونڊو ڏانھن وڃو.

خيال هي هو: جيڪڏهن اسان هڪ خاص ونڊو کي ياد رکڻ چاهيون ٿا هڪ اهم ميلاپ لاءِ، ته پوءِ اسان کي هن ميلاپ کي دٻائڻو پوندو جڏهن گهربل ونڊو فوڪس ۾ هجي. مستقبل ۾، جڏهن توهان هن ميلاپ کي دٻايو، ڌيان هن ونڊو ڏانهن ڏنو ويندو. جيستائين ونڊو بند نه ٿئي يا اسان هن اسڪرپٽ ميلاپ لاءِ ري سيٽ ڪريون showwinDetach.

اسڪرپٽ الگورتھم ڏيکارڻ ڪجهه هن طرح:

  • چيڪ ڪريو ته ڇا اسان اڳي ئي ياد ڪيو آهي ونڊو جي سڃاڻپ جنهن ڏانهن ڌيان منتقل ڪيو وڃي.
    جيڪڏهن توهان کي ياد آهي ۽ اهڙي ونڊو اڃا به موجود آهي، ته پوء اسان ان ڏانهن ڌيان منتقل ڪريون ۽ ٻاهر نڪرون.
  • اسان ڏسون ٿا ته ڪهڙي ونڊو في الحال فوڪس ۾ آهي، ۽ جيڪڏهن اها اسان جي درخواست سان ملندي آهي، ته پوءِ ان جي آئي ڊي ياد رکو ته مستقبل ۾ ان ڏانهن وڃو ۽ ٻاهر وڃو.
  • اسان گهٽ ۾ گهٽ ڪجهه مناسب ونڊو ڏانهن وڃو جيڪڏهن اهو موجود آهي يا گهربل ايپليڪيشن کوليو.

توھان ڳولي سگھوٿا ڪھڙي ونڊو في الحال فڪس ۾ آھي xdotool ڪنسول يوٽيليٽي استعمال ڪندي ان جي آئوٽ کي ھيڪساڊيڪل فارميٽ ۾ تبديل ڪندي:

$ printf "0x%08x" `xdotool getwindowfocus`

بش ۾ ڪنهن شيءِ کي ياد ڪرڻ جو آسان طريقو ميموري ۾ واقع هڪ ورچوئل فائل سسٽم ۾ فائلون ٺاهڻ آهي. Ubuntu ۾ اهو ڊفالٽ طور تي فعال آهي /dev/shm/. مان ٻين تقسيم بابت ڪجهه نٿو چئي سگهان، مون کي اميد آهي ته اتي پڻ ڪجهه ساڳيو آهي. توھان حڪم سان ڏسي سگھو ٿا:

$ mount -l | grep tmpfs

اسڪرپٽ هن فولڊر ۾ خالي ڊائريڪٽريون ٺاهي ويندي، جهڙوڪ: /dev/shm/$USER/showwin/$SEARCH_REGEX/$WINDOW_ID. اضافي طور تي، هر دفعي ان کي سڏيو ويندو آهي اهو هڪ symlink ٺاهيندو /dev/shm/$USER/showwin/showwin_last تي /dev/shm/$USER/showwin/$SEARCH_REGEX. ھن جي ضرورت پوندي، جيڪڏھن ضروري ھجي، ھڪڙي خاص ميلاپ لاءِ اسڪرپٽ استعمال ڪندي ونڊو id کي ختم ڪريو showwinDetach.

ڇا بهتر ٿي سگهي ٿو

پهرين، لکتن کي دستي طور تي ترتيب ڏيڻ گهرجي. يقينا، توهان جي هٿن سان گهڻو ڪجهه ڪرڻ ۽ گهڻو ڪجهه ڪرڻ جي ضرورت جي ڪري، توهان مان ڪيترائي سسٽم کي ترتيب ڏيڻ جي ڪوشش به نه ڪندا. جيڪڏهن اهو ممڪن هجي ته صرف پيڪيج کي انسٽال ڪريو ۽ هر شي کي وڌيڪ آساني سان ترتيب ڏيو، پوء شايد اهو ڪجهه مقبوليت حاصل ڪري ها. ۽ پوء ڏسو، ايپليڪيشن کي معياري تقسيم ۾ جاري ڪيو ويندو.

۽ شايد اهو آسان ٿي سگهي ٿو. جيڪڏهن ونڊو جي آئي ڊي ذريعي توهان ان پروسيس جي آئي ڊي ڳولي سگهو ٿا جنهن ان کي ٺاهيو آهي ۽ پروسيس جي آئي ڊي ذريعي توهان اهو معلوم ڪري سگهو ٿا ته ڪهڙي ڪمانڊ ان کي ٺاهيو آهي، پوءِ اهو ممڪن ٿيندو ته سيٽ اپ کي خودڪار ڪرڻ. حقيقت ۾، مون کي سمجھ ۾ نه آيو ته ڇا مون هن پيراگراف ۾ لکيو هو ممڪن آهي. حقيقت اها آهي ته مان ذاتي طور تي مطمئن آهيان ته طريقي سان اهو هاڻي ڪم ڪري ٿو. پر جيڪڏهن مون کان سواءِ ڪنهن ٻئي کي اهو سڄو طريقه ڪار آسان لڳندو آهي ۽ ڪو ان ۾ بهتري آڻيندو آهي ته پوءِ مون کي خوشي ٿيندي ته بهتر حل استعمال ڪجي.

ٻيو مسئلو، جيئن مون اڳ ۾ ئي لکيو آهي، اهو آهي ته ڪن حالتن ۾ ونڊوز کي هڪ ٻئي کان ڌار نه ٿو ڪري سگهجي. هن وقت تائين مون ان کي صرف ڪروم/ڪروميم ۾ پوشيدگيءَ سان ڏٺو آهي، پر ٿي سگهي ٿو ته اهڙي ئي شيءِ ڪنهن ٻئي هنڌ هجي. آخري حل جي طور تي، اتي هميشه آفاقي مجموعن جو اختيار آهي Alt + 1...Alt + 0. ٻيهر، مان فائر فاکس استعمال ڪريان ٿو ۽ ذاتي طور تي اهو مسئلو اهم ناهي.

پر مون لاءِ اهم مسئلو اهو آهي ته آئون ڪم لاءِ Mac OS استعمال ڪريان ٿو ۽ مان اتي ڪا به شيءِ ترتيب نه ڏئي سگهيو آهيان. افاديت wmctrl مان سمجهان ٿو ته مان ان کي انسٽال ڪري سگهان ٿو، پر اهو واقعي Mac OS تي ڪم نٿو ڪري. ايپليڪيشن سان ڪجهه ڪري سگهجي ٿو خودڪار، پر اهو ايترو سست آهي جو اهو استعمال ڪرڻ آسان ناهي جيتوڻيڪ اهو ڪم ڪري رهيو آهي. مان پڻ اهم مجموعن کي سيٽ نه ڪري سگهيو ته جيئن اهي سڀني پروگرامن ۾ ڪم ڪن. جيڪڏهن ڪو ماڻهو اوچتو هڪ حل سان اچي، مان ان کي استعمال ڪرڻ ۾ خوش ٿيندس.

سوچيم ته هڪ ٿڪل جي

اهو ظاهر ٿيو ته هڪ غير متوقع طور تي وڏي تعداد ۾ لفظن جي اهڙي بظاهر سادي ڪارڪردگي لاء. مون خيال کي بيان ڪرڻ چاهيو ۽ متن کي اوورلوڊ نه ڪيو، پر مون اڃا تائين اهو نه سمجهيو آهي ته ان کي وڌيڪ آسان ڪيئن ٻڌايان. ٿي سگهي ٿو اهو وڊيو فارميٽ ۾ بهتر هجي، پر هتي ماڻهو ان کي پسند نٿا ڪن.

مون ٿورڙي ڳالهايو ته ڇا آهي اسڪرپٽ جي هيٺان ۽ ان کي ڪيئن ترتيب ڏيو. مان پاڻ اسڪرپٽ جي تفصيل ۾ نه ويو آهيان، پر اهو صرف 50 لائينون آهن، تنهنڪري اهو سمجهڻ ڏکيو ناهي.

مون کي اميد آهي ته ڪو ٻيو به هن خيال جي ڪوشش ڪندو ۽ شايد ان کي ساراهيو. مان پنهنجي باري ۾ چئي سگهان ٿو ته اسڪرپٽ اٽڪل 3 سال اڳ لکيو ويو هو ۽ اهو منهنجي لاءِ تمام آسان آهي. ايترو آسان آهي ته اهو ٻين ماڻهن جي ڪمپيوٽرن سان ڪم ڪرڻ دوران سخت تڪليف جو سبب بڻائيندو آهي. ۽ ڪم ڪندڙ MacBook سان.

اسڪرپٽ سان ڳنڍيو

جو ذريعو: www.habr.com

تبصرو شامل ڪريو