1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-10-23 04:30:24 +02:00

38936: fix vi-pipe function for option compatibility

This commit is contained in:
Oliver Kiddle 2016-07-24 22:33:14 +02:00
parent 932ff2b6f8
commit ac05343049
2 changed files with 10 additions and 3 deletions

View file

@ -7,16 +7,21 @@
# autoload -Uz vi-pipe
# bindkey -a '!' vi-pipe
setopt localoptions noksharrays
autoload -Uz read-from-minibuffer
local _save_cut="$CUTBUFFER" REPLY
# Use the standard vi-delete to accept a vi motion.
zle .vi-delete || return
# force movement to default to line mode
zle -U V
# Use the standard vi-change to accept a vi motion.
zle .vi-change || return
read-from-minibuffer "!"
zle .vi-cmd-mode
local _save_cur=$CURSOR
# cut buffer contains the deleted text and can be modified
CUTBUFFER="$(eval $REPLY <<<$CUTBUFFER)"
CUTBUFFER=$(eval "$REPLY" <<<"$CUTBUFFER")
# put the modified text back in position.
if [[ CURSOR -eq 0 || $BUFFER[CURSOR] = $'\n' ]]; then