Bashでは、viモードを使用します。 Esc、v、現在のコマンドラインが$EDITOR
で指定されたエディターで開かれ、シェルに返されて実行されるコマンドを '保存'する前に全画面で編集できます。
Zshで同様の動作を実現するにはどうすればよいですか?ヒッティング v コマンドモードでは、ベルが表示されますが、EDITOR
環境変数が設定されているにもかかわらず、明らかな効果はありません。
見る edit-command-line
in zshcontrib
。
bindkey -M vicmd v edit-command-line
Emacsのキーバインドを好む場合:
autoload -z edit-command-line
zle -N edit-command-line
bindkey "^X^E" edit-command-line
fc
を使用して、履歴の最後のコマンドを編集できます。同じコマンドを編集することと同じではありませんが、Enterキーをすばやく押すと、現在のコマンドが履歴の最後のコマンドになります。
これは、bashから同じ動作を得るために~/.zshrc
に追加した完全な構成です。
export VISUAL=vim
autoload edit-command-line; zle -N edit-command-line
bindkey -M vicmd v edit-command-line