2010-04-26 6 views
10

मैं विम डालने मोड में वर्तमान शब्द को हटाने के लिए Ctrl-Backspace चाहता हूं। टर्म के भीतर से मैं इसमैं gnome-terminal के भीतर vim में एक शब्द को हटाने के लिए Ctrl-Backspace कैसे प्राप्त करूं?

:inoremap <C-H> <C-W> 

के माध्यम से लेकिन GNOME टर्मिनल मैं इसे ऐसा करने के लिए एक तरह से समझ नहीं में हटा सकते हैं।

जब विम डालने मोड में, यदि मैं नियंत्रण-वी टाइप करता हूं और फिर बैकस्पेस दबाता हूं, तो मुझे^एच xterm में मिलता है, और ^? gnome टर्मिनल में। दुर्भाग्य से,

:inoremap <C-?> <C-W> 

gnome-terminal में चाल नहीं करता है; कंट्रोल-बैकस्पेस सिर्फ एक ही चरित्र को मिटा देता है चाहे कोई फर्क नहीं पड़ता।

के बारे में ASCII कोड:

ग्नोम टर्मिनल आप संपादित तहत बैकस्पेस चरित्र को बदलने की सुविधा देता है -> प्रोफ़ाइल प्राथमिकताएं -> संगतता। दुर्भाग्य से, कोई विकल्प नहीं काम करता है, जहाँ तक मैं बता सकते हैं: जो कुछ भी चरित्र मैं की तरह

:inoremap <C-H> <C-W> 

तो नियमित बैकस्पेस और नियंत्रण बैकस्पेस सेटिंग के माध्यम से बैकस्पेस पर लागू होते हैं, अगर मैं चरित्र ही मानचित्रण की कोशिश, दोनों एक पूरा मिटा शब्द; और अगर मैं मानचित्रण नियंत्रण प्लस कि चरित्र की कोशिश,

:inoremap <C-^H> <C-W> 

की तरह तो नियमित बैकस्पेस और नियंत्रण बैकस्पेस बस एक ही चरित्र को मिटा।

उत्तर

10

gnome-terminal के libvte को पैच करने की आवश्यकता होगी।

libvte में बैकस्पेस को मैप करने के लिए पहले से ही कई विकल्प हैं, जिनमें से कोई भी Ctrl-backspace को अलग नहीं करता है। इसे एक विकल्प की आवश्यकता है जो शायद लिनक्स कंसोल (^? बैकस्पेस के लिए,^एच के लिए Ctrl-backspace) के व्यवहार का पालन करता हो। this gnome bug देखें।


2015 अद्यतन: यह 23c7cd0f99d504cbab06d4c27254d4f3e2807ba8 में तय किया गया था।

libvte 0.41.90, 0.40.3 और नए के पास ठीक है।

+0

हम इस पैच को कैसे काम कर सकते हैं? मुझे लेने के लिए क्या कदम उठाने होंगे (libvte और gnome-terminal को पुन: संकलित करने के लिए)? –

+0

@StevenLu फॉरवर्ड-पोर्ट पैच, कॉन्फ़िगरेशन को gnome-term में प्रकट करें (हालांकि आप gconf-editor से gconf/dconf को संपादित कर सकते हैं), सुनिश्चित करें कि आपका recompiled libvte लोड पथ में है। – Tobu

+2

ऐसा लगता है कि इस पैच को पिछले महीने कुछ ध्यान मिला और जल्द ही रिलीज़ हो सकता है। इंतजार नहीं कर सकता मुझे सैनिटी के लिए कंसोल विम में ctrl-backspace की आवश्यकता है। – trusktr

संबंधित मुद्दे

 संबंधित मुद्दे