Emacs: अच्छा कस्टम कुंजी बाइंडिंग कैसे चुनें?


10

मैं एक Emacs शुरुआत कर रहा हूँ और मैं की तरह सामान्य कार्यों के लिए कुछ वैश्विक कस्टम कुंजी बाइंडिंग जोड़ने शुरू करना चाहते हैं replace-string, replace-regexकि उन्हें डिफ़ॉल्ट रूप से नहीं है, आदि। मैं अच्छे विकल्प बनाना चाहता हूं, और मैं कुछ मुद्दों को देखता हूं:

  • मेरे सभी विकल्प देखें - मैं उन सभी कुंजियों की पूरी श्रृंखला कैसे देख सकता हूं, जो उन सभी साधनों से अनबाउंड हैं जिन्हें मैं नियमित रूप से उपयोग करता हूं?

  • संगतता / कन्वेंशन - क्या व्यक्तिगत अनौपचारिक बाइंडिंग के साथ सामान्य अनौपचारिक बाइंडिंग या एक आम "उपयोगकर्ता-स्थान" कुंजी हैं?

  • अन्य मुद्दे - कुछ और जो मुझे ध्यान में रखना चाहिए?

जवाबों:


9

SO पर इस प्रश्न पर एक नज़र डालने की कोशिश करें: क्या कस्टम कमांड के लिए कोई इमैक कुंजी संयोजन आरक्षित हैं?

जो उपलब्ध है उसे देखने के बारे में, वहाँ unboundपुस्तकालय है ( उपरोक्त प्रश्न का पहला उत्तर देखें )।

एक सम्मेलन ( उस प्रश्न के मेरे उत्तर से पकड़ा गया ) है:

आप किसी भी चीज़ को फिर से परिभाषित कर सकते हैं, लेकिन कन्वेंशन का उपयोग करना है C-c l (जहां lकोई भी पत्र है)।

एक उपयोगकर्ता के रूप में, आप किसी भी कुंजी को फिर से परिभाषित कर सकते हैं; लेकिन यह आमतौर पर मुख्य अनुक्रमों से चिपके रहने के लिए सबसे अच्छा होता है, जिसमें C-c एक अक्षर (ऊपरी या निचला मामला) शामिल होता है। ये कुंजी "उपयोगकर्ताओं के लिए आरक्षित हैं", इसलिए वे किसी भी डिज़ाइन किए गए Emacs एक्सटेंशन के साथ संघर्ष नहीं करेंगे। के F5माध्यम से फ़ंक्शन कुंजियाँ F9भी उपयोगकर्ताओं के लिए आरक्षित हैं। यदि आप किसी अन्य कुंजी को फिर से परिभाषित करते हैं, तो आपकी परिभाषा को कुछ एक्सटेंशन या प्रमुख मोड द्वारा ओवरराइड किया जा सकता है जो उसी कुंजी को फिर से परिभाषित करते हैं।

बस याद रखें कि कुंजी बाइंडिंग विभिन्न (प्रमुख और मामूली) मोड में से प्रत्येक में अलग-अलग हैं, इसलिए एक बफर में जो उपलब्ध है वह जरूरी नहीं कि दूसरे में उपलब्ध हो। और अपने स्थानीय प्रमुख स्तर पर अपनी बाइंडिंग को संभव बनाएं। उदाहरण के लिए, यदि कार्यक्षमता कोड की एक पंक्ति के लिए कुछ करती है, तो इसके लिए एक वैश्विक कुंजी बाध्यकारी न बनाएं, इसे उपयुक्त कीमैप ( c++-mode-mapऔर ruby-mode-map, आदि) में परिभाषित करें ।

जहाँ तक आपके विशिष्ट कार्य हैं, क्या आपने देखा है:

  • M-% उर्फ query-replace
  • C-M-% उर्फ query-replace-regexp

इसके अलावा, जब आप खोज कर रहे हैं ( C-sया C-M-s(और रिवर्स वेरिएंट)), तो आप खोज स्ट्रिंग के साथ सीधे प्रवेश करने के लिए M-%(या C-M-%) टाइप कर सकते हैं query-replace( query-replace-regexpविकल्प के रूप में) ... सुंदर काम।

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