端末のエイリアス空コマンド


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"ます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.