यह किसी चीज़ के लिए कोशिश करने और अनुकूलन करने का एक विचार है ... परीक्षण नहीं किया गया है।
जब तक स्क्रिप्ट चल रही होती है, तब तक यह वर्चुअल डेस्कटॉप को एक वेरिएबल में सक्रिय रखता है, इसके लिए जरूरी नहीं कि एक आईएनआई फाइल की जरूरत हो।
स्क्रिप्ट को या तो वर्चुअल डेस्कटॉप # 1 सक्रिय के साथ शुरू करना होगा या उसे एक सिंक को मजबूर करना होगा। फोर्सिंग फंक्शन मानता है कि आप जितनी बार चाहें ctrl + जीत + लेफ्ट को दबा सकते हैं और वहां पहुंचने के बाद यह पहले वर्चुअल डेस्कटॉप पर लूप नहीं करेगा।
शॉर्टकट कुंजियाँ डिफ़ॉल्ट विंडोज़ कुंजी पर ट्रिगर होती हैं, लेकिन उन्हें कैप्चर नहीं करती हैं (यानी, टिल्ड ~ कीस्ट्रोक से होकर गुजरती हैं)। तो यह कीबोर्ड को ट्रैक करेगा यदि आप कीबोर्ड का उपयोग कर रहे थे, और यदि आप माउस का उपयोग कर रहे थे तो आप माउस को एक शॉर्टकट कुंजी या किसी अन्य को असाइन कर सकते थे।
आप एक या दोनों दिशाओं के लिए एक कस्टम डुप्लिकेट शॉर्टकट भी जोड़ सकते हैं ... इसे ctrl + alt + F8 के रूप में दिखा रहे हैं, उदाहरण के लिए यदि आपके माउस बटन को डेस्कटॉप के बीच स्विच करने के लिए डिफ़ॉल्ट विंडोज़ कुंजियों के अलावा कुछ और सौंपा जाना चाहिए।
#NoEnv
#Persistent
numDesktops := 3 ; set to match number of virtual desktops
if forceSyncAtStartup := True ; set to False to disable sync on startup
SendInput % "^#{Left" (numDesktops-1) "}"
vDesktop := 1 ; this must match the virtual desktop active when program starts if a sync isn't forced
return
^!F8:: ; random/custom shortcut for the mouse if desired
~^#Left::
vDesktop -= 1
if (vDesktop=0) {
vDesktop := numDesktops
sleep 20 ; optional for better reliability
; use this if no delay needed for reliable operation
SendInput % "^#{Right " (numDesktops-1) "}
; use this type of setup if a delay is needed
; Loop, % (numDesktops-1) {
; SendInput ^#{Right}
; sleep 100 ; adjust for reliability
; }
}
return
~^#Right::
vDesktop += 1
sleep 20
if (vDesktop=(numDesktops+1)) {
vDesktop := 1
SendInput % "^#{Left" (numDesktops-1) "}"
}
return