7

Zsh で oh-my-zsh を使用しており、コマンド ラインで Vim バインディングが必要です。私の .zshrc には、次の行があります (完全な .zshrc here ):

# terminal vim
bindkey -v
export KEYTIMEOUT=1
bindkey -M viins 'jk' vi-cmd-mode  # @todo - THIS DOES NOT WORK?
bindkey -M viins '^k' kill-line
bindkey '^?' backward-delete-char
bindkey '^h' backward-delete-char
bindkey '^w' backward-kill-word
bindkey '^r' history-incremental-search-backward

# show which vim mode we are in
precmd() {
  RPROMPT=""
}
zle-keymap-select() {
  RPROMPT=""
  [[ $KEYMAP = vicmd ]] && RPROMPT="(COMMAND MODE)"
  () { return $__prompt_status }
  zle reset-prompt
}
zle-line-init() {
  typeset -g __prompt_status="$?"
}
zle -N zle-keymap-select
zle -N zle-line-init

ここで、コマンド ラインで「jk」を押してコマンド モードに戻れるようにしたいのですが、うまくいきません。ただし、エスケープは機能します。

どこが間違っていますか?

4

2 に答える 2