टर्मिनल में एलियास खाली कमांड


9

मैं खाली टर्मिनल जमा करने पर अपना टर्मिनल खाली करना चाहूंगा। दूसरे शब्दों में, clearजब मैं Enterखाली रेखा पर टकराता हूं तो मैं कॉल करना चाहता हूं । क्या यह संभव है?

मैं समझता हूं कि टर्मिनल कैसे काम करता है, लेकिन एक अच्छी हैक हो सकती है जैसे कि Enter कुंजी को बाँधना और टर्मिनल या कुछ को चेक करना।

जवाबों:


12

इस फ़ंक्शन को वही करना चाहिए जो आप चाहते हैं; यदि वर्तमान प्रॉम्प्ट इनपुट ( $BUFFER) खाली है ( -z):

magic-enter () {
        if [[ -z $BUFFER ]]
        then
                zle clear-screen
        else
                zle accept-line
        fi
}

इसे एक विजेट के रूप में परिभाषित करें

zle -N magic-enter

और फिर इसे बांधें [ENTER]:

bindkey "^M" magic-enter

यदि आप गैर-मानक कुंजी बाइंडिंग के लिए उपयोग करते हैं [Enter], तो लाइन को इसके साथ अनुकूलित करें zle accept-line। आप के साथ जाँच कर सकते हैं bindkey | grep "\^M"

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