আমি কেবল অটোহোটকির জন্য একটি স্ক্রিপ্ট তৈরি করেছি যা এটি উইন্ডোজ 10 এ 10 টি ডেস্কটপের জন্য সম্পন্ন করে।
এটি কীভাবে কাজ করবেন:
অটোহোটকি ডাউনলোড এবং ইনস্টল করুন । নোটপ্যাডে কোড বেলোটি অনুলিপি করুন এবং পেস্ট করুন এবং ফাইল এক্সটেনশন .ahk দিয়ে এটি সংরক্ষণ করুন
আমি আপনার স্টার্টআপ ফোল্ডারে এই ফাইলটির একটি শর্টকাট তৈরি করার পরামর্শ দিচ্ছি যাতে উইন্ডোজ শুরু হলে এটি চলে।
ডিফল্ট হোটেলস:
ডেস্কটপ স্যুইচ করুন: WIN + ডেস্কটপ নম্বর (0 = ডেস্কটপ নম্বর 10)
নতুন ডেস্কটপ: সিটিআরএল + উইন + ডি
ডেস্কটপ বন্ধ করুন: CTRL + WIN + F4
ডেস্কটপ স্থিতি প্রদর্শন করুন: WIN + '
গুরুত্বপূর্ণ:
এটির কাজ করার জন্য আপনাকে কেবলমাত্র ডেস্কটপগুলি খোলার, বন্ধ করতে এবং পরিবর্তনের জন্য হটকি ব্যবহার করতে হবে কারণ স্ক্রিপ্টটি হটকিদের বর্তমান এবং মোট ডেস্কটপের সংখ্যা জানার জন্য শোনায়।
আপনি যদি মাউস দিয়ে WIN + TAB মেনু দিয়ে ডেস্কটপগুলি তৈরি, বন্ধ বা পরিবর্তন করেন তবে স্ক্রিপ্টটি কাজ করা বন্ধ করবে। এটি আবার কাজ করার জন্য আপনাকে আপনার ডেস্কটপগুলির বর্তমান অবস্থা প্রতিফলিত করতে প্রথম দুটি লাইন সম্পাদনা করতে হবে। (Desktopcount / currentdesktop)
এর অর্থ এই নয় যে আপনি WIN + TAB স্ক্রিনটি আপনার বর্তমান ডেস্কটপগুলির ওভারভিউ হিসাবে ব্যবহার করতে পারবেন না। আপনার ডেস্কটপগুলি সংগঠিত করতে আপনি হটকিগুলির সংমিশ্রণে এটি ব্যবহার করতে পারেন। হ্যাঁ, উইন্ডো টাস্ক ভিউয়ার খোলা থাকলে হটকিগুলি এখনও কাজ করে! (উইন + ট্যাব) শুধু মাউস ব্যবহার করবেন না !!!
এছাড়াও, নতুন ডেস্কটপ তৈরি করার আগে উইন্ডোজ স্টার্টআপের পরে স্ক্রিপ্টটি লোড হওয়ার জন্য অপেক্ষা করুন বা এটি কার্যকর হবে না। আপনার কতটি স্টার্টআপ প্রোগ্রাম রয়েছে তার উপর নির্ভর করে এটি একটি মুহুর্ত নিতে পারে।
ঠিক আছে, আমি আপনার ডেস্কটপ স্থিতির সাথে স্ক্রিপ্টটি পুনরায় সিঙ্ক করতে আরও একটি জিনিস যুক্ত করেছি। এখন একটি হটকি রয়েছে যা স্ক্রিপ্টটিকে এমন রাজ্য প্রদর্শন করবে যা বিশ্বাস করে যে ডেস্কটপগুলি এতে থাকবে তাই আপনাকে যা করতে হবে তা হ'ল ডেস্কটপগুলি মাউসের সাথে সামঞ্জস্য করে স্ক্রিপ্টটি ফিট করে এবং এটি আবার সমস্ত সিঙ্ক আপ হবে! একটি সুইস কীবোর্ড নিয়ে আমার পক্ষে এটি 'সুন্দরভাবে কাজ করে? 0 এর পাশে কী এবং এটি দিয়ে একটি অর্থবোধ করে? এটিতে, তবে অন্যান্য কীবোর্ডগুলিতে আপনি এটি পরিবর্তন করতে ইচ্ছুক হতে পারেন যা হটকি-র ডানদিকের পরে 0-10 (# 'দিয়ে শুরু) এর জন্য আপনার পছন্দ অনুযায়ী লাইনে পরিবর্তন করে সহজেই করা যায়।
আসলে, আমি ঠিক বুঝতে পেরেছি ... যতক্ষণ না ডেস্কটপ গণনাটি সঠিক হিসাবে একটি নতুন ডেস্কটপ তৈরি করার পরে স্বয়ংক্রিয়ভাবে বর্তমান ডেস্কটপ মানটি পুনরায় সিঙ্ক করবে।
(শুরু হওয়া লাইনগুলি মন্তব্যগুলি এবং স্ক্রিপ্টকে প্রভাবিত করে না)
কোড:
#NoTrayIcon
;If the script stops working:
;Change the following values to reflect your current desktop state and reload the script.
;Remember to change them back to 1 after reloading the script if you have it set to start with Windows
desktopcount := 1
currentdesktop := 1
;You can change the hotkeys for creating, closing, and switching desktops bellow.
;The current hotkeys are CTRL+WIN+D for new desktop, CTRL+WIN+F4 to close desktop
;and WIN+NUMBER for switching desktops.
;For example, to change the hotkey for new desktop replace ^#D bellow with the desired hotkey.
;Refer to the autohotkey documentation for a full list of symbols refering to modifier keys,
;as you can see ^ is CTRL and # is WIN key.
;If you wanted to change the switch desktop from WIN key to CTRL for example you would have
;to replace the # before each number to a ^
^#D::NewDesktop()
^#F4::CloseDesktop()
#1::SwitchDesktop(1)
#2::SwitchDesktop(2)
#3::SwitchDesktop(3)
#4::SwitchDesktop(4)
#5::SwitchDesktop(5)
#6::SwitchDesktop(6)
#7::SwitchDesktop(7)
#8::SwitchDesktop(8)
#9::SwitchDesktop(9)
#0::SwitchDesktop(10)
#'::MsgBox Desktop Count = %desktopcount%`nCurrent Desktop = %currentdesktop%
;Do not change anything after this line, unless you know what you are doing ;)
;-----------------------------------------------------------------------------------------------
SwitchDesktop(desktop)
{
global desktopcount
global currentdesktop
desktopdiff := desktop - currentdesktop
if (desktop > desktopcount)
{
return
}
if (desktopdiff < 0)
{
desktopdiff *= -1
Loop %desktopdiff%
{
Send ^#{Left}
}
}
else if (desktopdiff > 0)
{
Loop %desktopdiff%
{
Send ^#{Right}
}
}
currentdesktop := desktop
}
NewDesktop()
{
global desktopcount
global currentdesktop
if (desktopcount > 9)
{
return
}
desktopcount ++
currentdesktop := desktopcount
Send ^#d
}
CloseDesktop()
{
global desktopcount
global currentdesktop
desktopcount --
if (currentdesktop != 1)
{
currentdesktop --
}
Send ^#{f4}
}