X11 में (कंसोल पर मुझे नहीं पता) आप एस्केप कुंजी के व्यवहार को फिर से परिभाषित करके कर सकते हैं। मैंने "शिफ्ट (ब्रेक_कैप्स)" परिभाषा को देखा कि यह कैसे काम करता है, और इसे अनुकूलित किया।
स्थानीय / संशोधित फ़ाइलों को कैसे और कहाँ रखा जाए और कैसे लोड किया जाए , इस बारे में अधिक जानकारी के लिए xkb पर इस उत्तर को देखें।
और जो आप चाहते हैं उसे करने के लिए, आपको स्थानीय प्रतीकों फ़ाइल (जैसे:) में ~/.xkb/symbols/mysymbols
इस तरह का एक अनुभाग चाहिए:
partial modifier_keys
xkb_symbols "esc_breaks_caps" {
key <ESC> {
type = "ALPHABETIC",
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
};
और स्थानीय कीमैप फ़ाइल में (जैसे ~/.xkb/keymap/mykbd
:; आप इसे बना सकते हैं setxkbmap -print > ~/.xkb/keymap/mykbd
) xkb_symbols
जोड़ने के लिए लाइन बदलें +mysymbols(esc_breaks_caps)
।
अब आप इसे लोड कर सकते हैं: xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY
और दबाने Escसे कैप्सलॉक स्थिति को हटा दिया जाएगा (वास्तव में, प्रभाव एस्को की रिहाई पर होता है । मुझे लगता है कि केवल संशोधक कुंजी का तत्काल प्रभाव होता है; अन्य प्रभाव उनकी रिहाई के बाद है।)
ओह, अगर आप भी एस्केप और कैप्सलॉक कीज को स्वैप करना चाहते हैं; इसके बजाय इसका उपयोग करें (और आप अपनी mykbd फ़ाइल में "+ mysymbols (esc_swap_and_breaks_caps)" डालें:
partial modifier_keys
xkb_symbols "esc_swap_and_breaks_caps" {
replace key <CAPS> {
type = "ALPHABETIC",
symbols = [ Escape, Escape ],
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
replace key <ESC> { [ CapsLock, CapsLock ] };
};
ध्यान दें कि भौतिक कुंजी हैं <CAPS>
और <ESC>
; <CAPS>
( CapsLockआपके कीबोर्ड में उत्कीर्ण कुंजी ) एस्केप भेजें और <ESC>
(कुंजी उत्कीर्ण Esc) कैप्सलॉक भेजता है, व्हिथ <CAPS>
(एस्केप भेजना) भी कैप्सलॉक स्थिति को परेशान करता है
vim
या पूर्ण डेस्कटॉप के लिए उस कार्यक्षमता को जोड़ना होगा ?