答案1
是的,您可以透過啟用menu select
:
zstyle ':completion:*' menu select
zmodload zsh/complist
...
# use the vi navigation keys in menu completion
bindkey -M menuselect 'h' vi-backward-char
bindkey -M menuselect 'k' vi-up-line-or-history
bindkey -M menuselect 'l' vi-forward-char
bindkey -M menuselect 'j' vi-down-line-or-history
答案2
我最接近的是使用CTRL-N和CTRL-P在可能的完成列表中向前和向後移動,而不是Tab和Shift- Tab。這是更像vi
導航。
在設定檔中,.zsh
我透過以下方式實現這一點:
bindkey '^n' expand-or-complete
bindkey '^p' reverse-menu-complete
以及相關的:
bindkey '^k' up-history
bindkey '^j' down-history
bindkey '^h' backward-delete-char
bindkey '^w' backward-kill-word
bindkey '^r' history-incremental-search-backward
這是以下的文檔綁定。