AltGr को <Ctrl> + <Alt> से कैसे बाँधें


11

मैं सरला (हार्ड ला) नामक एर्गोनोमिक तेलुगु कीबोर्ड लेआउट के बराबर एक लिनक्स बनाने की कोशिश कर रहा हूं। मैं अब तक सभी चाबियों को मैप करने में सक्षम रहा हूं। लेआउट विभिन्न स्तरों के लिए निम्नलिखित प्रमुख संयोजनों का उपयोग करता है।

None (Base): Level1
Shift: Level2
Ctrl + Alt: Level3
Ctrl + Alt + Shift:Level4

जहां लिनक्स विभिन्न स्तरों के लिए निम्नलिखित का उपयोग करता है।

None (Base): Level1
Shift: Level2
RAlt: Level3
RAlt + Shift:Level4

अपने लेआउट के साथ प्रमुख संयोजनों का मिलान करने में सक्षम होने के लिए, मुझे + के AltGrसाथ मैप करना होगा । मैंने असफल रूप से विभिन्न फ़ाइलों में खोज की है । क्या कोई शरीर जानता है कि मैं कैसे + के साथ बांध सकता हूं ?CtrlAlt/usr/share/X11/xkb/ISO_Level3_ShiftCtrlAlt

key <RALT>  {
    symbols[Group1]= [ Mode_switch, Multi_key  ],
    virtualMods= AltGr
};

यदि आप लेआउट को देखना चाहते हैं, तो यह यहाँ है


2
यहाँ एक नज़र है askubuntu.com/questions/254424/…
αнsнιη

2
थैंक्यू, यह बहुत जानकारीपूर्ण है लेकिन यह xkbकॉन्फ़िगरेशन को छोड़कर बाकी सभी चीजों के बारे में बात करता है।
शागीइन्जोन

आप आर्क लिनक्स लिनक्स विकी से इस विकी के माध्यम से देख सकते हैं , और Alt और Altgr (स्तर 3) के बारे में भाग देख सकते हैं। मुझे यकीन नहीं है कि यह आपकी मदद करेगा, लेकिन ऐसा लगता है कि XKB के बारे में बहुत सारी जानकारी है
No Time

मैंने कोशिश की है कि, xkb इतनी वर्णनात्मक त्रुटि के साथ लोड करने में विफल रहता है। मेरे पास त्रुटि काम नहीं है, लेकिन मैं इसे बाद में संलग्न कर सकता हूं।
शैगीइन्जिन अर्जुन 22'14

जवाबों:


6

आपको एक नया xkb प्रकार परिभाषित करने की आवश्यकता है। आप अपने xkb / प्रकार निर्देशिका (आमतौर पर /usr/share/X11/xkb/types) में उदाहरण देख सकते हैं । वहां आप स्थानांतरण के विभिन्न स्तरों को प्राप्त करने के लिए संशोधक के मनमाने संयोजन को परिभाषित कर सकते हैं। अपनी समस्या के लिए, आप कुछ इस तरह का उपयोग कर सकते हैं:

type "C_A_to_L3" {
    modifiers = Control+Alt+Shift;
    map[None] = Level1;
    map[Shift] = Level2;
    map[Control+Alt] = Level3;
    map[Control+Alt+Shift] = Level4;
    level_name[Level1] = "Base";
    level_name[Level2] = "Shift";
    level_name[Level3] = "Alt Base";
    level_name[Level4] = "Shift Alt";
};

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

मैंने अपने कस्टम लेआउट ( https://github.com/willghatch/hatchak ) के निर्माण के लिए कीबोर्ड लेआउट पर खुद को हैक करने का एक अच्छा सा काम किया है , जो विभिन्न पुनरावृत्तियों से गुजरा है जहाँ मैंने अजीब चीजों के साथ प्रयोग किया है। XKB कई बार बहुत बारीक और विचित्र हो सकता है, लेकिन यह अभी भी सबसे विन्यास कीबोर्ड प्रणाली है जिसे मैंने अब तक देखा है। सबसे अधिक परेशानी होने पर सबसे अच्छा संदर्भ:

[संपादित करें: मूल लिंक वर्तमान में नीचे हैं, लेकिन शुक्र है।

https://web.archive.org/web/20150722164820/http://www.charvolant.org/~doug/xkb/html/index.html

तथा

https://web.archive.org/web/20190419170426/http://pascal.tsu.ru/en/xkb/

खबरदार - जबकि मैंने पाया है कि यह सबसे अच्छा दस्तावेज है, यह बहुत सारे किनारे के मामलों को छोड़ देता है। सौभाग्य।


मुझे लगता है कि आपका विचार वास्तव में उपयोगी है, लेकिन मैं वास्तव में प्रतीक फाइलों में डिफ़ॉल्ट रूप में बनाई गई प्रकार का उपयोग करने के लिए संघर्ष कर रहा हूं जैसा कि आपने उल्लेख किया है। मेरे कंप्यूटर पर मेरे पास मौजूद प्रतीक फाइलें काफी लंबी हैं और मुझे ऐसी कोई भी रेखा नहीं दिखती है जो डिफ़ॉल्ट प्रकार की परिभाषा की तरह दिखती हो।
डेव

1
आप सेटिंग द्वारा प्रतीकों फ़ाइल के भीतर एक अनुभाग के लिए डिफ़ॉल्ट को परिभाषित कर सकते हैं key.type। आप शायद /usr/share/X11/xkb/symbols/srvr_ctrl"no_srvr_keys" अनुभाग में (या कहीं और) ऐसा उदाहरण देख सकते हैं । यहाँ मेरे पास क्या है: xkb_symbols "no_srvr_keys" {key.type = "TWO_LEVEL"; कुंजी <FK01> {[F1, F1]}; कुंजी <FK02> {[F2, F2]}; <आदि ...>};
विलियम हैच

त्वरित उत्तर के लिए धन्यवाद। मुझे लगता है कि मैं इसे लागू कर पाऊंगा। आपका अग्रिम रूप से बोहोत धन्यवाद।
डेव

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

-1

मैंने जो महसूस किया है उससे आपको एक कीबोर्ड लेआउट की आवश्यकता है जो AltGr का समर्थन करता है, इसलिए आप कॉन्फ़िगर मेनू में "कीबोर्ड> शॉर्टकट> वैकल्पिक वर्ण कुंजी" पर हॉटकी को बस बदल सकते हैं। आम तौर पर आप इसे एक लेआउट में बदलकर देख सकते हैं कि "डेड कीज़" हैं या "AltGr डेड कीज़" लिखी गई हैं


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