मुखपृष्ठ » कैसे » कैसे लिनक्स के तहत एक WINE कार्यक्रम के लिए ग्लोबल HotKeys बांधने के लिए

    कैसे लिनक्स के तहत एक WINE कार्यक्रम के लिए ग्लोबल HotKeys बांधने के लिए

    क्या आपने कभी WINE के तहत लिनक्स में एक विंडोज़ प्रोग्राम स्थापित किया है, केवल यह पता लगाने के लिए कि यह सिस्टम हॉट-कीज़ को कभी बाँधता नहीं है? एचटीजी के पास वह काम है जिसकी आपको तलाश है.

    Djeucalyptus द्वारा छवि

    अवलोकन

    हर एक व्यक्ति जिसने लिनक्स पर स्विच करने के विचार के बारे में सोचा है, ने शायद बहुत जल्दी समस्या का सामना किया है कि यह एक विंडोज ऐप है जिसे आपने कार्य करने की आवश्यकता है। हमने आपको पहले ही दिखाया है कि आप WINE का उपयोग करके इसे पूरा कर सकते हैं.

    इस लेखक के लिए, एप्लिकेशन टेक्स्ट-टू-स्पीच एप्लिकेशन था जो Microsoft SAPI4 इंजन का उपयोग करता है। WINE के तहत प्रोग्राम इंस्टॉल करना एक हवा थी, हालांकि पूरा होने पर मैंने जल्दी से पाया कि हॉट-कीज़ का इस्तेमाल प्रोग्राम की विभिन्न क्रियाओं को शुरू करने के लिए किया जाता है (पढ़ना शुरू करना, पढ़ना बंद करना, आदि) कार्य नहीं किया और यह एक ज्ञात है वाइन के साथ समस्या.

    मुझे यह कहते हुए खुशी हो रही है कि खोज करने के बाद, मैंने आखिरकार जीएनयू उपयोगिता के रूप में समाधान ढूंढ लिया है जो मूल कार्यों का उपयोग करके X.org इंटरफ़ेस में हेरफेर कर सकता है। जबकि अपनी तरह का एकमात्र नहीं है, xdotool वह है जो काम करने में सबसे आसान था और पहले से ही उबंटू / मिंट रिपोजिटरी में था।.

    xdotool

    क्लेडटूल कार्यक्रम सीएलआई से खिड़की से संबंधित कई कार्य कर सकता है, जिसमें कहा गया है, केवल दो जो हम उपयोग करने जा रहे हैं वे हैं "खोज" और "कुंजी"। "खोज" फ़ंक्शन बस यही करता है, आपके द्वारा निर्धारित मापदंडों के अनुसार एक विंडो / एस आईडी की खोज करता है। "कुंजी" फ़ंक्शन आपको विंडो आईडी में कुंजी-स्ट्रोक का अनुकरण करने में सक्षम बनाता है.

    स्थापना और विन्यास

    यह माना जाता है कि आपने पहले से ही WINE और इसके तहत आवश्यक प्रोग्राम इंस्टॉल कर लिया है। इस उदाहरण में हम "विंडोज" एप्लिकेशन के रूप में बालाबोल्का का उपयोग करेंगे क्योंकि यह मूल कार्यक्रम की एक अच्छी फ्रीवेयर प्रतिकृति है जिसके लिए मुझे इस समाधान की आवश्यकता थी (दूसरा भाषण केंद्र).

    यदि आपने बालबोलका का उपयोग करने का विकल्प चुना है, तो आपको इसकी हॉटकीज़ क्षमता को सक्रिय करने की आवश्यकता है.
    नोट: आप TTSReader या 2nd भाषण केंद्र को डेमो मोड में भी इंस्टॉल करना चाह सकते हैं, ताकि SAPI वॉइस इंस्टॉल हो जाए. 

    कार्यक्रम खोलें और "विकल्प" -> "सेटिंग" के तहत सेटिंग्स (Shift + F6) पर जाएं.

    हॉटकीज़ टैब पर जाएं और "ग्लोबल हॉटकीज़ का उपयोग करें" के लिए चेकबॉक्स चेक करें.

    ओके पर क्लिक करें.

    इसे बैकग्राउंड में चलाना छोड़ दें ताकि जब यह कीस्ट्रोक्स को हुक करे तो यह अपना काम कर सके.

    जारी करके xdotool स्थापित करें:

    sudo apt-get install xdotool

    ग्लोबल बाइंडिंग

    अपने दम पर xdotool कार्यक्रम हमें हॉटकीज़ के लिए विश्व स्तर पर बाँधने में मदद नहीं करता है, लेकिन हम पहले से मौजूद OS हॉटकी प्रणाली का उपयोग कर सकते हैं। हम जो करेंगे वह एक सरल स्क्रिप्ट बनाएंगे, जो xdotool का उपयोग बालबोलका प्रोग्राम के लिए कीस्ट्रोक्स भेजने के लिए करता है और इसे OSS हॉटकी सिस्टम से कॉल करता है।.

    निम्नलिखित सामग्री के साथ "start_read.sh" नामक एक स्क्रिप्ट बनाएं:

    xdotool कुंजी - इनवॉइड $ (xdotool खोज --limit 1 --all --pid $ (pgrep balabolka) --name Balabolka) "ctrl + alt + F9"

    इस समय एक और स्क्रिप्ट बनाएं, जिसे "stop_read.sh" कहा जाता है, निम्नलिखित सामग्री के साथ:

    xdotool key --window $ (xdotool search --limit 1 --all --pid $ (pgrep balabolka) --name Balabolka) "ctrl + alt + F7"

    नोट: मुझे पता है कि यह एक लाइनर है जिसे स्क्रिप्ट की आवश्यकता नहीं है, लेकिन मिंट / उबंटू "कीबोर्ड शॉर्टकट" कार्यक्रम, सीधे इसे लागू करने में सहयोग नहीं कर रहा था। यदि आप जानते हैं कि यह कैसे करना है, तो कृपया नीचे टिप्पणी में साझा करें.

    इस कमांड को अपने कंपोनेंट्स पर ब्रेक देना, जो हम देखते हैं वह है:

    • "-पिड $ (pgrep बालबोलका)" भाग, उस प्रोग्राम पर एक "pgrep" निष्पादित करता है जिसका उपयोग हम इसकी प्रक्रिया आईडी का पता लगाने के लिए करना चाहते हैं। यह "खोज" के दायर किए गए xdotool को केवल उस पीआईडी ​​तक सीमित कर देगा.
    • "Xdotool search -limit 1 -all ... -name Balabolka" भाग, xdotool की खोज के दायर को और भी अधिक बढ़ाता है और दिए गए उत्तरों की सीमा 1 तक सीमित करता है। जैसा कि हमारे मामले में यह कोई फर्क नहीं पड़ता कि विंडो ID में से कौन सी आईडी लौटी है कार्यक्रम, परिणाम सीमित करना "कुंजी" कमांड के लिए एक फ़ॉर्मेटर के रूप में कार्य करता है। आप इस भाग को और अधिक मालिश करने की आवश्यकता पा सकते हैं यदि यह उस प्रोग्राम के लिए मायने रखता है जो आप उपयोग कर रहे हैं.
    • "Xdotool की -विंडो% WINDOW_ID%" ctrl + alt + F7 "भाग, वांछित कीस्ट्रोके को windowID को भेजता है जो पिछले भागों द्वारा प्राप्त किया गया था.

    स्क्रिप्ट को निष्पादन योग्य बनाएं.

    लिनक्स मिंट कीबोर्ड शॉर्टकट

    लिनक्स टकसाल के तहत, ग्लोबल हॉटकीज़ को "कीबोर्ड शॉर्टकट" प्रोग्राम में सेट किया गया है.

    एक बार नया कस्टम शॉर्टकट बनाने के लिए "जोड़ें" पर क्लिक करें:

    इसे एक नाम दें और "कमांड" के तहत हम उन सभी लिपियों में से एक को पूरा रास्ता दें जो हमने ऊपर बनाई है। दूसरी स्क्रिप्ट के लिए प्रक्रिया को दोहराएं.

    अब "शॉर्टकट" कॉलम पर, एक नया कुंजी कॉम्बो सेट करने के लिए विकल्प प्राप्त करने के लिए "अक्षम" शब्द पर क्लिक करें।.
    नोट: आप चाहें, तो कुछ और उपयोग कर सकते हैं, फिर प्रोग्राम का डिफ़ॉल्ट। इस मायने में कि आप जिस प्रोग्राम का उपयोग करते हैं, उसके आधार पर "रीमैप" बनाने के लिए, आपके नियंत्रण से बाहर होगा।.

    आपके द्वारा चयनित कॉम्बो को मारो और जादू सुनो.

    उबंटू कीबोर्ड

    उबंटू के तहत, ग्लोबल हॉटकीज़ सेट करने वाले प्रोग्राम को सिर्फ "कीबोर्ड" कहा जाता है.

    "शॉर्टकट" टैब पर जाएं और "कस्टम शॉर्टकट" चुनें.

    शॉर्टकट जोड़ने के लिए धन चिह्न पर क्लिक करें। इसे एक नाम दें और "कमांड" के तहत हम उन सभी लिपियों में से एक को पूरा रास्ता दें जो हमने ऊपर बनाई है। दूसरी स्क्रिप्ट के लिए प्रक्रिया को दोहराएं.
    अब एक नया कुंजी कॉम्बो सेट करने के लिए विकल्प प्राप्त करने के लिए "अक्षम" शब्द पर क्लिक करें.

    नोट: टकसाल अनुभाग से नोट पर दोहराते हुए, आप कर सकते हैं, यदि आप चाहें, तो कुछ और का उपयोग करें, फिर प्रोग्राम का डिफ़ॉल्ट। इस मायने में कि आप जिस प्रोग्राम का उपयोग करते हैं, उसके आधार पर "रीमैप" बनाने के लिए, आपके नियंत्रण से बाहर होगा।.

    लेखक के नोट्स

    जब भी मैंने गंभीरता से लिनक्स पर जाने पर विचार किया, यह समस्या मेरी समस्याओं की सूची में पहली बार थी। यह नहीं है कि लिनक्स में समस्याएं नहीं हैं, लेकिन यह असली बाधा थी, मेरे लिए। मैंने समय और समय की कोशिश की है, दोस्तों / क्षेत्र के लोगों से पूछा है और यहां तक ​​कि एक इनाम में भी बनाया है ... मुझे खुशी है कि यह गाथा खत्म हो गई है और मेरी आत्मा अंततः आराम कर सकती है.
    यह मेरी आशा है कि मैंने किसी ऐसे व्यक्ति की मदद की है जिसे एक ही परीक्षा से नहीं गुजरना पड़ता है.


    डॉक्टर ब्राउन: मुझे उस दिन के सपने को साकार करने में लगभग तीस साल और मेरे पूरे परिवार की किस्मत लगी है। मेरे भगवान, यह लंबे समय से है?