Linuxシェルで入力が空の場合、Ctrl-W / ^WはCtrl-D / ^DのようにEOFを送信しますか?

Linuxシェルで入力が空の場合、Ctrl-W / ^WはCtrl-D / ^DのようにEOFを送信しますか?

^Wがシェルにnullとして入力された^ Dと同じように動作する方法はありますか?私はzshを使用していますが、これはbashでも機能します。それ以外の場合は何もしません(入力行が消去された場合)。これは、他のUI(Gtk、Webブラウザなど)で^ Wがコンテンツを閉じるのと一致します。

ベストアンサー1

EOFを表すために2つの異なる文字を設定することはできません。styy私はあなたがこのようなことをしないようにします。

ただし、この例ではこれは必要ありません。 Zshの組み込みbackward-kill-wordウィジェットを簡単にオーバーライドできます。

# Tell zsh to call a function with 
# the same name whenever 
# backward-kill-word is activated.
zle -N backward-kill-word

backward-kill-word() {
  # Exit the shell if the command
  # line is a zero-length string.
  [[ -z "$BUFFER" ]] &&
      exit

  # Otherwise, call the original 
  # built-in widget.
  zle .$0
}

読むZshラインエディタのドキュメントより多くの情報を知りたいです。

おすすめ記事