zsh:前のコマンドの最後のパラメータを挿入する

zsh:前のコマンドの最後のパラメータを挿入する

私は最近bashからzshに切り替えました。 bash(viモード)で新しいコマンドを入力するときにEsc-_(アンダースコアをエスケープするため)を入力すると、前のコマンドの最後の引数が挿入されます。 zshでも同じことをしたいです。 (現在はビープ音だけが鳴ります。)何をしたいのですか?

ベストアンサー1

ESC-_-styleキーバインディングに似ていますemacsが、-style挿入モードにも追加するには、vi次のようにします。

bindkey -M viins '\e_' insert-last-word

(最高~/.zshrc)。

_cmdモードでカーソルの後に最後の単語を挿入して挿入モードに切り替えたい場合(文書化されていないウィジェットで)、次のようにすることbashができます。ksh93vi-yank-argbash

vi-yank-arg() {
  NUMERIC=1 zle .vi-add-next
  zle .insert-last-word
}
zle -N vi-yank-arg
bindkey -M vicmd _ vi-yank-arg

モードと同様に、emacsコマンドの最後の単語を追加します(数値引数を無視するよう$NUMERICですbashksh93

おすすめ記事