autoload up-line-or-beginning-search down-line-or-beginning-search edit-command-line zle -N up-line-or-beginning-search zle -N down-line-or-beginning-search zle -N edit-command-line bindkey -v bindkey -a "!" edit-command-line [[ -n "$terminfo[kpp]" ]] && bindkey "$terminfo[kpp]" up-line-or-beginning-search # PAGE UP [[ -n "$terminfo[knp]" ]] && bindkey "$terminfo[knp]" down-line-or-beginning-search # PAGE DOWN [[ -n "$terminfo[khome]" ]] && bindkey "$terminfo[khome]" beginning-of-line # HOME [[ -n "$terminfo[kend]" ]] && bindkey "$terminfo[kend]" end-of-line # END [[ -n "$terminfo[kdch1]" ]] && bindkey "$terminfo[kdch1]" delete-char # DELETE [[ -n "$terminfo[kbs]" ]] && bindkey "$terminfo[kbs]" backward-delete-char # BACKSPACE