1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-11-20 14:04:03 +01:00
zsh/Functions/Zle/cycle-completion-positions

17 lines
497 B
Plaintext
Raw Normal View History

2001-01-11 11:06:40 +01:00
# This may be called after a completion that inserted the unambiguous
# (i.e. non-menu- and non-single-match-) string into the command line.
# If there are multiple positions in the string with missing or differing
# characters, repeatedly calling this widget cycles between all these
# positions.
emulate -L zsh
setopt extendedglob
local p="$_lastcomp[insert_positions]"
if [[ $p = ((#s)|*:)${CURSOR}:* ]]; then
CURSOR=${${p#(|*:)${CURSOR}:}%%:*}
elif [[ -n $p ]]; then
CURSOR=${p%%:*}
fi