`Bind` और` .inputrc` अलग व्यवहार क्यों करते हैं?


14

मैं सही काम करने की कोशिश कर रहा हूं और अपनी मुख्य बाइंडिंग में लगा हूं ~/.inputrc

हालांकि, यह पता चला है कि मुझे बदलना होगा

bind '"\e\C-j":"\e[1~quiet \e[4~\n"'

में

"\e\C-j": "\eOHquiet \eOF\n"

अब \eOH(नौसेना-ब्लॉक-पॉस 1 से बंधा हुआ beginning-of-line) और \eOF( नौसेना -ब्लॉक-एंड बाध्य end-of-line) स्वयं मेरे कॉन्फ़िगरेशन में बाइंडिंग हैं, जो कि मैं संभवतः हमेशा भरोसा नहीं कर सकता।

तो मुख्य प्रश्न यह है कि संख्या-ब्लॉक-पॉस 1 ( \e[1~) और संख्या-ब्लॉक-एंड ( \e[4~) के साथ बाइंडिंग bindमेरे साथ ~/.inputrcक्यों नहीं है ?


संपादित करें:

पूरी बात और भी जटिल होती जा रही है, अब जब मैंने महसूस किया कि \e\C-jकेवल ग्नोम टर्मिनियल (या शायद xterm के लिए भी काम करता है, जो जानता है ...)।

मेरे TTY के लिए यह होना चाहिए

"\e\C-m": "\e[1~_quiet \e[4~\n"

तो क्या यह है कि विभिन्न वीटी में चाबियों की व्याख्या कैसे की जाती है या क्या है?


यह GNU Readline यूजर इंटरफेस मैनुअल, खंड 1.3 में प्रलेखित है । keymapविकल्प सेट कुंजी प्रतिनिधित्व किस तरह कुंजी बाइंडिंग परिभाषाओं में प्रयोग किया जाता है करने के लिए प्रयोग किया जाता है। प्रासंगिक जानकारी: superuser.com/questions/286781/… cnswww.cns.cwru.edu/php/chet/readline/rluserman.html#SEC9 wiki.archlinux.org.index.php
Ярослав Рахматуллин

@ УрославРахматуллин वास्तविक बाइंडिंग के लिए उपयोग करने bindऔर उपयोग करने के बीच के व्यवहार में अंतर के लिए यह कितना प्रासंगिक है inputrc। क्या उन्हें समान सेटिंग्स का उपयोग नहीं करना चाहिए?

जवाबों:


2

आपका टर्मिनल एमुलेटर दो मोडों में से एक में काम कर सकता है: एप्लिकेशन मोड, और कर्सर मोड ( http://homes.mpimf-heidelberg.mpg.de/%7Erohm/computing/mpimf/notes/termod.html ) देखें । यह इस बात पर निर्भर करता है कि आपका विशेष एप्लिकेशन किस मोड में चलता है, यह निर्धारित करता है कि आपको भेजने के लिए कौन सा एस्केप अनुक्रम चाहिए।

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