मैं (यानी का उपयोग कर कॉपी और बैश में कमांड लाइन में एक ही कुंजीपटल बाइंडिंग का उपयोग करने में पाठ चिपकाने के लिए सक्षम होना चाहते है कि Emacs डिफ़ॉल्ट रूप से उपयोग करता होगा C-space
के लिए set-mark
, M-w
, पाठ की प्रतिलिपि करने के लिए C-y
, M-y
, पेस्ट करना आदि)।
जीएनयू बैश प्रलेखन का कहना है कि बैश इन प्रमुख बाइंडिंग डिफ़ॉल्ट रूप से की स्थापना से कुछ के साथ आता है।
उदाहरण के लिए, yanking ( C-y
) मेरे टर्मिनल पर डिफ़ॉल्ट रूप से काम करता है। हालांकि, मैं नहीं मिल सकता है set-mark
और copy
आदेशों काम करने के लिए, और वे डिफ़ॉल्ट रूप से किसी भी कुंजी को बाध्य होने के लिए नहीं है।
आमतौर पर, उपयोगकर्ता जिस तरह से अपनी खुद की कुंजी बाइंडिंग को परिभाषित कर सकता है, वह उन्हें जोड़ने के लिए है .inputrc
। इसलिए मैंने दस्तावेज़ीकरण में निम्नलिखित बैश कार्यों को देखा और पाया, जो मुझे लगता है कि मुझे एमएसीएस जैसे व्यवहार को परिभाषित करने में मदद कर सकते हैं जो मैं चाहता हूं (यानी set-mark
साथ C-space
और copy
साथ M-w
)।
copy-region-as-kill ()
इस क्षेत्र के पाठ को किल बफ़र में कॉपी करें, ताकि इसे तुरंत दूर किया जा सके। डिफ़ॉल्ट रूप से, यह कमांड अनबाउंड है।
तथा
set-mark (C-@)
चिह्न को बिंदु पर सेट करें। यदि कोई संख्यात्मक तर्क दिया जाता है, तो निशान उस स्थिति पर सेट होता है।
अगर मैं सही तरीके से समझूं, तो उपरोक्त का मतलब copy-region-as-kill
डिफ़ॉल्ट रूप से किसी भी कीबोर्ड अनुक्रम से बाध्य नहीं है, जबकि डिफ़ॉल्ट रूप set-mark
से बाध्य है C-@
।
मैंने C-@
अपने टर्मिनल पर कोशिश की , लेकिन मुझे नहीं लगता कि यह चलता है set-mark
क्योंकि मुझे अपना कर्सर हिलाने पर कोई टेक्स्ट हाइलाइटेड नहीं दिखता। किसी भी मामले में, मैं कुंजीपटल बाइंडिंग (जोड़ने की कोशिश की M-w
और C-
कार्यों के लिए) copy-region-as-kill
और set-mark
मेरे में ऊपर .inputrc
और फिर से इसे फिर से लोड करने C-x C-r
के लिए, लेकिन यह काम नहीं किया। मुझे पता है कि .inputrc
काम में मेरी अन्य प्रविष्टियां हैं क्योंकि मेरे पास अन्य उपयोगकर्ता-परिभाषित कीबाइंडिंग हैं जो इसमें परिभाषित हैं।
क्या मैं कुछ गलत कर रहा हूं? क्या मुझे कुछ याद आ रहा है?
bash
और किस टर्मिनल प्रोग्राम का उपयोग कर रहे हैं?