प्रश्न सारांश: मैं चाहता हूं कि मेरा एक माउस बटन Super_LX11 द्वारा बाएं विंडोज बटन के रूप में पंजीकृत हो ।
मेरे विंडो मैनेजर में, मैं "लेफ्ट विंडोज बटन" (लेफ्ट सुपर) को पकड़कर और बाईं माउस बटन के साथ विंडो को खींचकर इधर-उधर कर सकता हूं। मैं कीबोर्ड को छूने के बिना ऐसा करने में सक्षम होना चाहता हूं, इसलिए मैं माउस बटन 11 पर बाईं सुपर कुंजी को मैप करना चाहता हूं, इस तरह से मैं माउस बटन 11 पकड़ सकता हूं और विंडोज़ खींचें + पर क्लिक कर सकता हूं।
सबसे स्पष्ट समाधान xbindkeys और xte का उपयोग कर रहा है जैसे ( .xbindkeysrc
):
"xte 'keydown Super_L'"
b:11
"xte 'keyup Super_L'"
b:11 + release
यह इस तरह काम करता है:
- जब मैं माउस बटन 11 दबाता हूं, Super_Lतो नीचे दबाया जाता है
- जब मैं माउस बटन 11 जारी करता हूं, तब Super_Lभी जारी किया जाता है
लेकिन एक समस्या है: मैं विंडोज़ का उपयोग करके Super_L+ नहीं ले जा सकता Mouse1अगर मैं एक और माउस बटन दबाए रखता हूं, जैसे माउस बटन 11. ऊपर दिए गए समाधान का उपयोग करना, माउस बटन 11 को अभी भी दबाया और जारी किया गया है, और इसलिए इनमें से कोई भी पंजीकृत नहीं है खिड़की प्रबंधक संचालन कार्य।
मैंने इसे Cinnamon और Awesome WM दोनों का उपयोग करके आज़माया है और माउस बटन 10 या 11 को नीचे रखने पर कीबोर्ड संयोजनों में से कोई भीSuper_L काम नहीं करता है।
एक सबपर हैक
मैं वर्तमान में इस समस्या के आसपास काम कर रहा हूं, जिससे माउस 11 Super_Lएक निश्चित समय तक बटन को दबाए रख सकता है। इस तरह से मैं माउस बटन पर क्लिक कर सकता हूं , फिर बाद में थोड़े समय के लिए सामान खींचें:
"xte 'keydown Super_L' 'usleep 250000' 'keyup Super_L'"
b:11
एक और प्रयास
जैसा कि टोट्टी द्वारा सुझाया गया है, मैंने इस xbindkeys
विन्यास की कोशिश की :
"xte 'mouseup 10' 'keydown Super_L'"
b:10
"xte 'keyup Super_L'"
b:10 + Release
यह काम नहीं करता है। ऐसा लगता है कि Super_Lकुंजी को नीचे रखा जा रहा है, क्योंकि जैसे ही मैं बटन 10 जारी करता हूं, यह हमेशा के लिए नीचे रहता है (जब तक मैं Super_Lकीबोर्ड पर फिर से कुंजी दबाता हूं ) लेकिन माउस बटन अभी भी पंजीकृत है, क्योंकि मैं विंडोज़ पर क्लिक और ड्रैग नहीं कर सकता हूं । मुझे नहीं लगता कि मैं इस काम का उपयोग करने में सक्षम होने जा रहा हूं xbindkeys
और xte
।