जब आप bash डिफ़ॉल्ट मोड में Ctrl+ दबाते हैं Lतो स्क्रीन साफ हो जाती है। लेकिन जब मैं दौड़ता हूं set -o vi
और Ctrl+ दबाता हूं Lतो कीस्ट्रोक प्रिंट होता है ( ^L
)। क्या इस व्यवहार को रखने का कोई तरीका है?
जब आप bash डिफ़ॉल्ट मोड में Ctrl+ दबाते हैं Lतो स्क्रीन साफ हो जाती है। लेकिन जब मैं दौड़ता हूं set -o vi
और Ctrl+ दबाता हूं Lतो कीस्ट्रोक प्रिंट होता है ( ^L
)। क्या इस व्यवहार को रखने का कोई तरीका है?
जवाबों:
Ctrl+ Lvi कमांड मोड में भी है, लेकिन इन्सर्ट मोड में नहीं। clear-screen
डालने मोड में कोई डिफ़ॉल्ट बाइंडिंग नहीं है। Readline बाइंडिंग में निर्दिष्ट किया जाना चाहिए ~/.inputrc
, जैसे:
set editing-mode vi
$if mode=vi
set keymap vi-command
# these are for vi-command mode
Control-l: clear-screen
set keymap vi-insert
# these are for vi-insert mode
Control-l: clear-screen
$endif
यह बाँध होगा Ctrl+ Lदोनों सामान्य में स्क्रीन को साफ़ करें और मोड डालने के लिए। स्वाभाविक रूप से, यदि आप इसे केवल एक मोड में उपयोग करना पसंद करते हैं, तो प्रासंगिक विकल्प को हटा दें।
रीडलाइन कमांड की एक व्यापक सूची है जिसका उपयोग आप अपने बैश शेल को कस्टमाइज़ करने के लिए कर सकते हैं।