OS X में कस्टम कीबोर्ड लेआउट कैसे बनाएं?


66

मैं हाल ही में ओएस एक्स में चला गया और मुझे सिस्टम "रूसी फ़ोनेटिक" लेआउट को असंतोषजनक लगता है (यह वह नहीं है जिसका मैं उपयोग करता हूं)। मैं एक कस्टम लेआउट कैसे बना सकता हूं?

मैंने उकेलील के बारे में पढ़ा है , लेकिन मैंने जो लेआउट बनाया और कॉपी किया, Library/Keyboard Layoutsवह कीबोर्ड प्रेफरेंस में नहीं दिखा।

मैं OS X 10.9 Mavericks का उपयोग कर रहा हूं। मैंने इंटरनेट में समाधान खोजे, लेकिन उनमें से ज्यादातर पुराने थे।


MacOS से पहले आपने किस लेआउट का उपयोग किया था? पॉल गोरोडांस्की? क्या आप अपने उकेलेले लेआउट को साझा करना चाहेंगे?
डेविडेयर



10.9 और बाद में एक अलग कीबोर्ड लेआउट फ़ाइल प्रकार का उपयोग करना प्रतीत होता है; उकेले ने मेरे लिए उस अपग्रेड के साथ ही तोड़ दिया। मैंने म्यू कस्टमाइज्ड OCS कीबोर्ड खो दिया है - OCS विषम स्थानों में कुछ विषम सिरिलिक वर्णों का उपयोग करता है।
अरामिस

जवाबों:


63
  1. उकेले को खोलें और फ़ाइल> वर्तमान इनपुट स्रोत से नया चुनें। उकेले के नए संस्करणों में, यह स्वचालित रूप से कीबोर्ड लेआउट को एक नई आईडी भी प्रदान करता है।
  2. कीबोर्ड लेआउट संपादित करें।
  3. कीबोर्ड लेआउट को डेस्कटॉप जैसे कुछ अस्थायी स्थान पर सहेजें। ( /Library/Keyboard Layouts/चुपचाप विफल होने के लिए सीधे सहेजना ।) आप दोनों प्रारूपों में से किसी एक का उपयोग कर सकते हैं। IOS- स्टाइल पॉपअप को तब दिखाया जाता है, जब कीज़िंग केवल बंडल फॉर्मेट के साथ काम करती है। एकल XML फ़ाइल (डिफ़ॉल्ट) प्रारूप हालांकि सरल है। XML का उपयोग करते समय, सुनिश्चित करें कि फ़ाइल .keylayoutएक्सटेंशन के साथ सहेजी गई है ।
  4. कीबोर्ड लेआउट को स्थानांतरित करें /Library/Keyboard Layouts/। कीबोर्ड लेआउट ~/Library/Keyboard Layouts/पासवर्ड संवादों में या लॉगिन विंडो पर नहीं चुना जा सकता है।
  5. कंप्यूटर को पुनरारंभ। लॉग आउट करना और वापस अंदर जाना पर्याप्त नहीं है।
  6. सिस्टम प्राथमिकता से नया कीबोर्ड लेआउट सक्षम करें।

कीबोर्ड लेआउट में परिवर्तन लागू करने के लिए, चलाएं sudo touch /Library/Keyboard\ Layouts/और पुनरारंभ करें।

अधिक जानकारी के लिए https://web.archive.org/web/20151030180252/http://osxnotes.net/keylayout-files-and-ukelele.html देखें ।


अपडेट (अक्टूबर 2015): Ukelele (3.0.0) का एक नया संस्करण है जिसमें ऐप के भीतर से लेआउट को स्थापित करने का विकल्प शामिल है। मुझे अभी भी इसे सक्रिय करने के लिए सिस्टम वरीयताओं पर जाने की जरूरत थी, लेकिन कमांड लाइन से गुजरने की जरूरत नहीं थी।


1
धन्यवाद! मेरे पास एक महत्वपूर्ण नोट है, हालांकि: यूकेले द्वारा सहेजे गए एक्सएमएल फाइलों को .keylayoutविस्तार की आवश्यकता है । इस तरह इसने काम किया :)
mik01aj

बंडल प्रारूप का उपयोग करने से एक बंडल के अंदर एक .icns आइकन फ़ाइल डालने की अनुमति देता है (.keylayout के रूप में एक ही स्थान) और पसंद का एक आइकन इनपुट स्रोत के बगल में दिखाई दे सकता है। (यूकेलेल मेनू के माध्यम से बंडल में एक आइकन जोड़ सकते हैं। आपको एक .icns की आवश्यकता है)।
ebukva

1
उदाहरण के लिए, icns फाइल को सेव करके आप XML keylayout फ़ाइल के लिए एक आइकन भी जोड़ सकते हैं /Library/Keyboard Layouts/My Keyboard Layout.icns
लारी

इसे कहीं और सहेजने और मैन्युअल रूप से स्थानांतरित करने के बजाय, आप यूकेले को रूट के रूप में शुरू कर सकते हैं ताकि यह सीधे / लाइब्रेरी / कीबोर्ड लेआउट में सहेज सके
Rayjax

मुझे विशेषता 5 को लाइन में .keylayout बदलने के लिए सीधे फाइल को एडिट करना nameथा। इससे पहले यह सिस्टम प्रेफरेंस में नहीं दिखा होगा, शायद इसलिए कि इसमें मौजूदा लेआउट जैसा ही नाम था। किसी और ने इसका सामना नहीं किया? o_O
frnhr

12

कीबोर्ड लेआउट फ़ाइल बनाना

मैंने भी कीबोर्ड लेआउट उत्पन्न करने के लिए Ukelele का उपयोग किया था । फिर आप .bundleया .keylayoutफ़ाइल निर्यात कर सकते हैं और इसे कॉपी कर सकते हैं /Library/Keyboard Layouts

sudo cp KeyboardLayout.keylayout /Library/Keyboard\ Layouts/

यदि आप एक फ़ाइल में बंडल किए गए कीबोर्ड के लिए आइकन चाहते हैं, तो Ukelele बंडल विकल्प के लिए एक निर्यात प्रदान करता है। तो इस मामले में .bundleइसके बजाय फ़ाइल की प्रतिलिपि बनाएँ । वैकल्पिक रूप से, आप आइकन को अलग रख सकते हैं और उन्हें समान नाम के साथ उसी फ़ोल्डर में कॉपी कर सकते हैं।

sudo cp KeyboardLayout.icns /Library/Keyboard\ Layouts/

रिबूट के बाद आप सिस्टम प्रेफरेंस-> कीबोर्ड-> इनपुट सोर्स मेनू में इनपुट स्रोत जोड़ सकते हैं। शायद दूसरों के तहत उपलब्ध है या भाषा यदि आप उकेलेले में कीबोर्ड से भाषा संलग्न करते हैं।

इनपुट स्रोत मेनू

.Icns फ़ाइल कैसे बनायें

mkdir layout.iconset

फिर फ़ोल्डर में निम्नलिखित PNGs जोड़ें:

# All sizes necessary
icon_16x16.png
icon_16x16@2x.png
icon_32x32.png
icon_32x32@2x.png
icon_128x128.png
icon_128x128@2x.png
icon_256x256.png
icon_256x256@2x.png
icon_512x512.png
icon_512x512@2x.png

आपको इन सभी की आवश्यकता नहीं है, लेकिन यह आधिकारिक सूची है। कुछ पिक्सेल गणना में निरर्थक हैं, लेकिन घनत्व का संकेत देते हैं।

iconutil --convert icns --output layout.icns layout.iconset/

GitHub पर उदाहरण परियोजना

GitHub पर मेरा यूक्रेनी-रूसी प्रोजेक्ट एक डेमो है जो वर्तमान में Mavericks 10.9.5 पर काम कर रहा है।


2
यूक्रेनी-रूसी परियोजना लिंक के लिए +1। इसे अब कुछ साथियों के साथ साझा कर रहे हैं। धन्यवाद दोस्त!
तिब्बत का समुद्री तट

आपका स्वागत है!
कैमरन लोवेल पामर

1
यूक्रेनी-रूसी परियोजना लिंक के लिए बहुत अधिक +1। हम आपका समर्थन करते हैं, @CameronLowellPalmer (और अन्य)!
प्रति लंडबर्ग

5

Ukelele आपके लिए काम कर सकता है, बस चेतावनी दी जाती है कि यह सॉफ़्टवेयर स्तर पर (हार्डवेयर स्तर के बजाय) कुंजी को रीबाइंडिंग प्रतीत हो रहा है, इसलिए आप शायद कुछ ऐसे मुद्दों में भागना शुरू कर देंगे जैसे कुछ एप्लिकेशन जो संशोधक या विशेष कुंजी रिबिन्डिंग को नहीं पहचान पा रहे हैं, सक्षम नहीं हो रहे हैं पासवर्ड संवाद आदि में इसका उपयोग करने के लिए

यदि आप अधिक मजबूत समाधान की तलाश कर रहे हैं, तो कारबिनर देखें


Karabinier भी बेहतर है क्योंकि आपको कॉन्फ़िगरेशन फ़ाइल की प्रतिलिपि बनाने की आवश्यकता नहीं है, यह सीधे काम कर रहा है। और आप इसे misc / system default configuration
bormat

-1

पुराने स्थिर Ukelele संस्करण 1.8.4 का उपयोग करें ... कोई पुनरारंभ आवश्यक नहीं है

मेरे पास OS X 10.10.5 (Yosemite) है। कई अन्य सुझावों की कोशिश करने के बाद भी उकेली का वर्तमान संस्करण काम नहीं कर पाया। अंत में मैंने वर्तमान संस्करण की स्थापना रद्द कर दी और पुराने स्थिर संस्करण (1.8.4) को स्थापित किया। उसके बाद यह ठीक काम किया। कोई पुनरारंभ आवश्यक नहीं था। बस लाइब्रेरी / कीबोर्ड लेआउट के भीतर नया लेआउट सहेजें। फिर कीबोर्ड प्राथमिकताएं, इनपुट स्रोत खोलें। क्लिक करके जोड़ें +, और आपको 'अन्य' में नया लेआउट देखना चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.